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

Function Test_ValidateImageCommandExtraData

cmd/validate/image_test.go:667–768  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

665}
666
667func Test_ValidateImageCommandExtraData(t *testing.T) {
668 validateImageCmd := validateImageCmd(happyValidator())
669 cmd := setUpCobra(validateImageCmd)
670
671 fs := afero.NewMemMapFs()
672
673 ctx := utils.WithFS(context.Background(), fs)
674 client := fake.FakeClient{}
675 commonMockClient(&client)
676
677 // Add missing ResolveDigest expectation for VSA processing
678 digest, _ := name.NewDigest(testImageDigest)
679 client.On("ResolveDigest", mock.Anything).Return(digest.String(), nil)
680
681 ctx = oci.WithClient(ctx, &client)
682
683 mdl := MockDownloader{}
684 mdl.On("Download", mock.Anything, "registry/policy:latest", false).Return(&ociMetadata.OCIMetadata{Digest: "sha256:da54bca5477bf4e3449bc37de1822888fa0fbb8d89c640218cb31b987374d357"}, nil)
685 mdl.On("Download", mock.Anything, "registry/policy-data:latest", false).Return(&ociMetadata.OCIMetadata{Digest: "sha256:da54bca5477bf4e3449bc37de1822888fa0fbb8d89c640218cb31b987374d357"}, nil)
686 ctx = context.WithValue(ctx, source.DownloaderFuncKey, &mdl)
687
688 cmd.SetContext(ctx)
689
690 testPolicyJSON := `sources:
691 - policy:
692 - "registry/policy:latest"
693 data:
694 - "registry/policy-data:latest"
695 ruleData:
696 custom_rule_data:
697 prefix_data:
698 - registry1
699 config:
700 include:
701 - '@minimal'
702 exclude: []
703`
704 err := afero.WriteFile(fs, "/policy.json", []byte(testPolicyJSON), 0o644)
705 if err != nil {
706 panic(err)
707 }
708
709 testExtraRuleDataYAML := `---
710kind: ReleasePlanAdmission
711spec:
712 application: [some-app]
713 data:
714 mapping:
715 components:
716 - name: some-name
717 repository: quay.io/some-namespace/msd
718`
719
720 err = afero.WriteFile(fs, "/value.yaml", []byte(testExtraRuleDataYAML), 0o644)
721 if err != nil {
722 panic(err)
723 }
724

Callers

nothing calls this directly

Calls 8

WithFSFunction · 0.92
WithClientFunction · 0.92
SetTestRekorPublicKeyFunction · 0.92
validateImageCmdFunction · 0.85
happyValidatorFunction · 0.85
commonMockClientFunction · 0.85
setUpCobraFunction · 0.70
StringMethod · 0.45

Tested by

no test coverage detected