MCPcopy
hub / github.com/kopia/kopia / TestReader

Function TestReader

repo/object/object_manager_test.go:695–737  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

693}
694
695func TestReader(t *testing.T) {
696 ctx := testlogging.Context(t)
697 data, _, om := setupTest(t, nil)
698
699 storedPayload := []byte("foo\nbar")
700
701 cid, err := content.ParseID("a76999788386641a3ec798554f1fe7e6")
702 require.NoError(t, err)
703
704 data[cid] = storedPayload
705
706 cases := []struct {
707 text string
708 payload []byte
709 }{
710 {"a76999788386641a3ec798554f1fe7e6", storedPayload},
711 }
712
713 for _, c := range cases {
714 objectID, err := ParseID(c.text)
715 if err != nil {
716 t.Errorf("cannot parse object ID: %v", err)
717 continue
718 }
719
720 reader, err := Open(ctx, om.contentMgr, objectID)
721 if err != nil {
722 t.Errorf("cannot create reader for %v: %v", objectID, err)
723 continue
724 }
725
726 d, err := io.ReadAll(reader)
727 if err != nil {
728 t.Errorf("cannot read all data for %v: %v", objectID, err)
729 continue
730 }
731
732 if !bytes.Equal(d, c.payload) {
733 t.Errorf("incorrect payload for %v: expected: %v got: %v", objectID, c.payload, d)
734 continue
735 }
736 }
737}
738
739func TestReaderStoredBlockNotFound(t *testing.T) {
740 ctx := testlogging.Context(t)

Callers

nothing calls this directly

Calls 7

ContextFunction · 0.92
ParseIDFunction · 0.92
setupTestFunction · 0.85
ErrorfMethod · 0.80
EqualMethod · 0.80
ParseIDFunction · 0.70
OpenFunction · 0.70

Tested by

no test coverage detected