MCPcopy
hub / github.com/perkeep/perkeep / testReadDir

Function testReadDir

pkg/schema/fileread_test.go:477–514  ·  view source on GitHub ↗
(t *testing.T, members []*test.Blob)

Source from the content-addressed store, hash-verified

475}
476
477func testReadDir(t *testing.T, members []*test.Blob) {
478 fetcher := &test.Fetcher{}
479 for _, v := range members {
480 fetcher.AddBlob(v)
481 }
482 var membersRefs []blob.Ref
483 for _, v := range members {
484 membersRefs = append(membersRefs, v.BlobRef())
485 }
486 ssb := NewStaticSet()
487 subsets := ssb.SetStaticSetMembers(membersRefs)
488 for _, v := range subsets {
489 fetcher.AddBlob(&test.Blob{Contents: v.str})
490 }
491 fetcher.AddBlob(&test.Blob{Contents: ssb.Blob().str})
492 dir := NewDirMap("whatever").PopulateDirectoryMap(ssb.Blob().BlobRef())
493 dirBlob := dir.Blob()
494 fetcher.AddBlob(&test.Blob{Contents: dirBlob.str})
495
496 dr, err := NewDirReader(context.Background(), fetcher, dirBlob.BlobRef())
497 if err != nil {
498 t.Fatal(err)
499 }
500 children, err := dr.StaticSet(context.Background())
501 if err != nil {
502 t.Fatal(err)
503 }
504 asMap := make(map[blob.Ref]bool)
505 for _, v := range children {
506 asMap[v] = true
507 }
508
509 for _, v := range membersRefs {
510 if _, ok := asMap[v]; !ok {
511 t.Errorf("%q not found among directory's children", v.String())
512 }
513 }
514}

Callers 1

TestReadDirsFunction · 0.85

Calls 11

AddBlobMethod · 0.95
StaticSetMethod · 0.95
NewStaticSetFunction · 0.85
NewDirMapFunction · 0.85
NewDirReaderFunction · 0.85
SetStaticSetMembersMethod · 0.80
PopulateDirectoryMapMethod · 0.80
FatalMethod · 0.80
BlobRefMethod · 0.65
BlobMethod · 0.65
StringMethod · 0.45

Tested by

no test coverage detected