(t *testing.T)
| 622 | } |
| 623 | |
| 624 | func TestTrackGitReferencesWithoutCommitId(t *testing.T) { |
| 625 | tracker := &Tracker{ |
| 626 | TrustedTasks: make(map[string][]taskRecord), |
| 627 | } |
| 628 | |
| 629 | fs := afero.NewMemMapFs() |
| 630 | ctx := utils.WithFS(context.Background(), fs) |
| 631 | |
| 632 | f, err := os.Open("testdata/repository.zip") |
| 633 | require.NoError(t, err) |
| 634 | |
| 635 | i, err := os.Stat("testdata/repository.zip") |
| 636 | require.NoError(t, err) |
| 637 | |
| 638 | z, err := zip.NewReader(f, i.Size()) |
| 639 | require.NoError(t, err) |
| 640 | |
| 641 | rfs := gba.New(zipfs.New(z), "", false) |
| 642 | |
| 643 | client.InstallProtocol("test", server.NewServer(server.NewFilesystemLoader(rfs))) |
| 644 | |
| 645 | require.NoError(t, tracker.trackGitReferences(ctx, []string{ |
| 646 | "git+test://git.io/repository/.git//tasks/task1/0.1/task.yaml", |
| 647 | "git+test://git.io/repository/.git//tasks/task2/0.2/task.yaml", |
| 648 | }, true)) |
| 649 | |
| 650 | expected := map[string][]taskRecord{ |
| 651 | "git+test://git.io/repository/.git//tasks/task1/0.1/task.yaml": {{ |
| 652 | Ref: "0916963bac30ea708c0ded4dd9d160fc148fd46f", |
| 653 | Repository: "git+test://git.io/repository/.git//tasks/task1/0.1/task.yaml", |
| 654 | }}, |
| 655 | "git+test://git.io/repository/.git//tasks/task2/0.2/task.yaml": {{ |
| 656 | Ref: "acf3f1907b51c0e15809a61536bba71809daec68", |
| 657 | Repository: "git+test://git.io/repository/.git//tasks/task2/0.2/task.yaml", |
| 658 | }}, |
| 659 | } |
| 660 | |
| 661 | if !cmp.Equal(tracker.TrustedTasks, expected) { |
| 662 | t.Errorf("expected vs got: %s", cmp.Diff(tracker.TrustedTasks, expected)) |
| 663 | } |
| 664 | |
| 665 | // check to make sure we do not leave temp files around |
| 666 | matches, err := afero.Glob(fs, "tmp/*") |
| 667 | require.NoError(t, err) |
| 668 | assert.Nil(t, matches) |
| 669 | } |
| 670 | |
| 671 | func TestTrackGitReferencesWithoutFreshen(t *testing.T) { |
| 672 | tracker := &Tracker{ |
nothing calls this directly
no test coverage detected