MCPcopy Create free account
hub / github.com/conforma/cli / TestTrackGitReferencesWithoutFreshen

Function TestTrackGitReferencesWithoutFreshen

internal/tracker/tracker_test.go:671–723  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

669}
670
671func TestTrackGitReferencesWithoutFreshen(t *testing.T) {
672 tracker := &Tracker{
673 TrustedTasks: map[string][]taskRecord{
674 "git+test://git.io/repository/.git//tasks/task1/0.1/task.yaml": {{
675 Ref: "f0cacc1a",
676 Repository: "git+test://git.io/repository/.git//tasks/task1/0.1/task.yaml",
677 }},
678 },
679 }
680
681 fs := afero.NewMemMapFs()
682 ctx := utils.WithFS(context.Background(), fs)
683
684 f, err := os.Open("testdata/repository.zip")
685 require.NoError(t, err)
686
687 i, err := os.Stat("testdata/repository.zip")
688 require.NoError(t, err)
689
690 z, err := zip.NewReader(f, i.Size())
691 require.NoError(t, err)
692
693 rfs := gba.New(zipfs.New(z), "", false)
694
695 client.InstallProtocol("test", server.NewServer(server.NewFilesystemLoader(rfs)))
696
697 require.NoError(t, tracker.trackGitReferences(ctx, []string{
698 "git+test://git.io/repository/.git//tasks/task2/0.2/task.yaml",
699 }, true))
700
701 expected := map[string][]taskRecord{
702 "git+test://git.io/repository/.git//tasks/task1/0.1/task.yaml": {{
703 Ref: "0916963bac30ea708c0ded4dd9d160fc148fd46f",
704 Repository: "git+test://git.io/repository/.git//tasks/task1/0.1/task.yaml",
705 }, {
706 Ref: "f0cacc1a",
707 Repository: "git+test://git.io/repository/.git//tasks/task1/0.1/task.yaml",
708 }},
709 "git+test://git.io/repository/.git//tasks/task2/0.2/task.yaml": {{
710 Ref: "acf3f1907b51c0e15809a61536bba71809daec68",
711 Repository: "git+test://git.io/repository/.git//tasks/task2/0.2/task.yaml",
712 }},
713 }
714
715 if !cmp.Equal(tracker.TrustedTasks, expected) {
716 t.Errorf("expected vs got: %s", cmp.Diff(tracker.TrustedTasks, expected))
717 }
718
719 // check to make sure we do not leave temp files around
720 matches, err := afero.Glob(fs, "tmp/*")
721 require.NoError(t, err)
722 assert.Nil(t, matches)
723}
724
725func TestInEffectDays(t *testing.T) {
726 ctx := context.WithValue(context.Background(), image.RemoteHead, head)

Callers

nothing calls this directly

Calls 5

trackGitReferencesMethod · 0.95
WithFSFunction · 0.92
ErrorfMethod · 0.65
OpenMethod · 0.45
SizeMethod · 0.45

Tested by

no test coverage detected