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

Function TestJetStreamCreateStreamDiscardPolicy

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

Source from the content-addressed store, hash-verified

10153}
10154
10155func TestJetStreamCreateStreamDiscardPolicy(t *testing.T) {
10156 tests := []struct {
10157 name string
10158 discardPolicy nats.DiscardPolicy
10159 discardNewPerSubject bool
10160 maxMsgsPerSubject int64
10161 withAPIError bool
10162 }{
10163 {
10164 name: "with discard policy 'new' and discard new per subject set",
10165 discardPolicy: nats.DiscardNew,
10166 discardNewPerSubject: true,
10167 maxMsgsPerSubject: 100,
10168 },
10169 {
10170 name: "with discard policy 'new' and discard new per subject not set",
10171 discardPolicy: nats.DiscardNew,
10172 discardNewPerSubject: false,
10173 maxMsgsPerSubject: 100,
10174 },
10175 {
10176 name: "with discard policy 'old' and discard new per subject set",
10177 discardPolicy: nats.DiscardOld,
10178 discardNewPerSubject: true,
10179 maxMsgsPerSubject: 100,
10180 withAPIError: true,
10181 },
10182 {
10183 name: "with discard policy 'old' and discard new per subject not set",
10184 discardPolicy: nats.DiscardOld,
10185 discardNewPerSubject: true,
10186 maxMsgsPerSubject: 100,
10187 withAPIError: true,
10188 },
10189 {
10190 name: "with discard policy 'new' and discard new per subject set and max msgs per subject not set",
10191 discardPolicy: nats.DiscardNew,
10192 discardNewPerSubject: true,
10193 withAPIError: true,
10194 },
10195 }
10196
10197 s := RunBasicJetStreamServer()
10198 defer shutdownJSServerAndRemoveStorage(t, s)
10199
10200 nc, js := jsClient(t, s)
10201 defer nc.Close()
10202
10203 for i, test := range tests {
10204 t.Run(test.name, func(t *testing.T) {
10205 streamName := fmt.Sprintf("FOO%d", i)
10206
10207 _, err := js.AddStream(&nats.StreamConfig{
10208 Name: streamName,
10209 Discard: test.discardPolicy,
10210 DiscardNewPerSubject: test.discardNewPerSubject,
10211 MaxMsgsPerSubject: test.maxMsgsPerSubject,
10212 })

Callers

nothing calls this directly

Calls 8

FatalfMethod · 0.80
RunBasicJetStreamServerFunction · 0.70
jsClientFunction · 0.70
AddStreamMethod · 0.65
StreamInfoMethod · 0.65
CloseMethod · 0.45
StringMethod · 0.45

Tested by

no test coverage detected