(t *testing.T)
| 10153 | } |
| 10154 | |
| 10155 | func 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 | }) |
nothing calls this directly
no test coverage detected