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

Function TestObjectMulti

test/object_test.go:242–286  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

240}
241
242func TestObjectMulti(t *testing.T) {
243 s := RunBasicJetStreamServer()
244 defer shutdownJSServerAndRemoveStorage(t, s)
245
246 nc, js := jsClient(t, s)
247 defer nc.Close()
248
249 obs, err := js.CreateObjectStore(&nats.ObjectStoreConfig{Bucket: "TEST_FILES"})
250 expectOk(t, err)
251
252 numFiles := 0
253 fis, _ := os.ReadDir(".")
254 for _, fi := range fis {
255 fn := fi.Name()
256 // Just grab clean test files.
257 if filepath.Ext(fn) != ".go" || fn[0] == '.' || fn[0] == '#' {
258 continue
259 }
260 _, err = obs.PutFile(fn)
261 expectOk(t, err)
262 numFiles++
263 }
264 expectOk(t, obs.Seal())
265
266 _, err = js.StreamInfo("OBJ_TEST_FILES")
267 expectOk(t, err)
268
269 result, err := obs.Get("object_test.go")
270 expectOk(t, err)
271 expectOk(t, result.Error())
272 defer result.Close()
273
274 _, err = result.Info()
275 expectOk(t, err)
276
277 copy, err := io.ReadAll(result)
278 expectOk(t, err)
279
280 orig, err := os.ReadFile(path.Join(".", "object_test.go"))
281 expectOk(t, err)
282
283 if !bytes.Equal(orig, copy) {
284 t.Fatalf("Files did not match")
285 }
286}
287
288func TestObjectDeleteMarkers(t *testing.T) {
289 s := RunBasicJetStreamServer()

Callers

nothing calls this directly

Calls 15

EqualMethod · 0.80
FatalfMethod · 0.80
RunBasicJetStreamServerFunction · 0.70
jsClientFunction · 0.70
expectOkFunction · 0.70
CreateObjectStoreMethod · 0.65
NameMethod · 0.65
PutFileMethod · 0.65
SealMethod · 0.65
StreamInfoMethod · 0.65
GetMethod · 0.65

Tested by

no test coverage detected