MCPcopy
hub / github.com/cloudflare/tableflip / TestFdsFiles

Function TestFdsFiles

fds_test.go:319–376  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

317}
318
319func TestFdsFiles(t *testing.T) {
320 r1, w1, err := os.Pipe()
321 if err != nil {
322 t.Fatal(err)
323 }
324 defer r1.Close()
325
326 r2, w2, err := os.Pipe()
327 if err != nil {
328 t.Fatal(err)
329 }
330 defer r2.Close()
331
332 testcases := []struct {
333 f *os.File
334 name string
335 expected string
336 }{
337 {
338 w1,
339 "test1",
340 "fd:test1:",
341 },
342 {
343 w2,
344 "test2",
345 "fd:test2:",
346 },
347 }
348
349 parent := newFds(nil, nil)
350 for _, tc := range testcases {
351 if err := parent.AddFile(tc.name, tc.f); err != nil {
352 t.Fatal("Can't add file:", err)
353 }
354 tc.f.Close()
355 }
356
357 child := newFds(parent.copy(), nil)
358 files, err := child.Files()
359 if err != nil {
360 t.Fatal("Can't get inherited files:", err)
361 }
362
363 if len(files) != len(testcases) {
364 t.Fatalf("Expected %d files, got %d", len(testcases), len(files))
365 }
366
367 for i, ff := range files {
368 tc := testcases[i]
369
370 if ff.Name() != tc.expected {
371 t.Errorf("Expected file %q, got %q", tc.expected, ff.Name())
372 }
373
374 ff.Close()
375 }
376}

Callers

nothing calls this directly

Calls 4

newFdsFunction · 0.85
copyMethod · 0.80
FilesMethod · 0.80
AddFileMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…