MCPcopy
hub / github.com/nats-io/nats.go / TestMsgDeleteMarkerMaxAge

Function TestMsgDeleteMarkerMaxAge

test/js_test.go:463–490  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

461}
462
463func TestMsgDeleteMarkerMaxAge(t *testing.T) {
464 srv := RunBasicJetStreamServer()
465 defer shutdownJSServerAndRemoveStorage(t, srv)
466 nc, js := jsClient(t, srv)
467 defer nc.Close()
468
469 _, err := js.AddStream(&nats.StreamConfig{
470 Name: "foo", Subjects: []string{"FOO.*"}, AllowMsgTTL: true, SubjectDeleteMarkerTTL: 50 * time.Second, MaxAge: 1 * time.Second})
471 if err != nil {
472 t.Fatalf("Unexpected error: %v", err)
473 }
474
475 _, err = js.Publish("FOO.1", []byte("msg1"))
476 if err != nil {
477 t.Fatalf("Unexpected error: %v", err)
478 }
479 time.Sleep(1500 * time.Millisecond)
480 gotMsg, err := js.GetLastMsg("foo", "FOO.1")
481 if err != nil {
482 t.Fatalf("Unexpected error: %v", err)
483 }
484 if ttlMarker := gotMsg.Header.Get("Nats-Marker-Reason"); ttlMarker != "MaxAge" {
485 t.Fatalf("Expected message to have Marker-Reason header set to MaxAge; got: %s", ttlMarker)
486 }
487 if ttl := gotMsg.Header.Get("Nats-TTL"); ttl != "50s" {
488 t.Fatalf("Expected message to have Nats-TTL header set to 50s; got: %s", ttl)
489 }
490}
491
492func TestPublishAsyncWithTTL(t *testing.T) {
493 srv := RunBasicJetStreamServer()

Callers

nothing calls this directly

Calls 9

FatalfMethod · 0.80
RunBasicJetStreamServerFunction · 0.70
jsClientFunction · 0.70
AddStreamMethod · 0.65
PublishMethod · 0.65
GetLastMsgMethod · 0.65
GetMethod · 0.65
CloseMethod · 0.45

Tested by

no test coverage detected