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

Function TestPurgeStream

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

Source from the content-addressed store, hash-verified

3522}
3523
3524func TestPurgeStream(t *testing.T) {
3525 testData := []nats.Msg{
3526 {
3527 Subject: "foo.A",
3528 Data: []byte("first on A"),
3529 },
3530 {
3531 Subject: "foo.C",
3532 Data: []byte("first on C"),
3533 },
3534 {
3535 Subject: "foo.B",
3536 Data: []byte("first on B"),
3537 },
3538 {
3539 Subject: "foo.C",
3540 Data: []byte("second on C"),
3541 },
3542 }
3543
3544 tests := []struct {
3545 name string
3546 stream string
3547 req *nats.StreamPurgeRequest
3548 withError error
3549 expected []nats.Msg
3550 }{
3551 {
3552 name: "purge all messages",
3553 stream: "foo",
3554 expected: []nats.Msg{},
3555 },
3556 {
3557 name: "with filter subject",
3558 stream: "foo",
3559 req: &nats.StreamPurgeRequest{
3560 Subject: "foo.C",
3561 },
3562 expected: []nats.Msg{
3563 {
3564 Subject: "foo.A",
3565 Data: []byte("first on A"),
3566 },
3567 {
3568 Subject: "foo.B",
3569 Data: []byte("first on B"),
3570 },
3571 },
3572 },
3573 {
3574 name: "with sequence",
3575 stream: "foo",
3576 req: &nats.StreamPurgeRequest{
3577 Sequence: 3,
3578 },
3579 expected: []nats.Msg{
3580 {
3581 Subject: "foo.B",

Callers

nothing calls this directly

Calls 12

FatalfMethod · 0.80
NextMsgMethod · 0.80
RunBasicJetStreamServerFunction · 0.70
jsClientFunction · 0.70
AddStreamMethod · 0.65
PublishMsgMethod · 0.65
PurgeStreamMethod · 0.65
StreamInfoMethod · 0.65
SubscribeSyncMethod · 0.65
CloseMethod · 0.45
IsMethod · 0.45

Tested by

no test coverage detected