cli/pkg/cmd/attestation/inspect/bundle_test.go
Meredith Lancaster e0fc8c7032 switch assert to require
Signed-off-by: Meredith Lancaster <malancas@github.com>
2024-03-12 11:58:08 -06:00

46 lines
1.4 KiB
Go

package inspect
import (
"testing"
"github.com/cli/cli/v2/pkg/cmd/attestation/test"
"github.com/cli/cli/v2/pkg/cmd/attestation/verification"
"github.com/stretchr/testify/require"
)
func TestGetOrgAndRepo(t *testing.T) {
t.Run("with valid source URL", func(t *testing.T) {
sourceURL := "https://github.com/github/gh-attestation"
org, repo, err := getOrgAndRepo(sourceURL)
require.Nil(t, err)
require.Equal(t, "github", org)
require.Equal(t, "gh-attestation", repo)
})
t.Run("with invalid source URL", func(t *testing.T) {
sourceURL := "hub.com/github/gh-attestation"
org, repo, err := getOrgAndRepo(sourceURL)
require.Error(t, err)
require.Zero(t, org)
require.Zero(t, repo)
})
}
func TestGetAttestationDetail(t *testing.T) {
bundlePath := test.NormalizeRelativePath("../test/data/sigstore-js-2.1.0-bundle.json")
attestations, err := verification.GetLocalAttestations(bundlePath)
require.Len(t, attestations, 1)
require.NoError(t, err)
attestation := attestations[0]
detail, err := getAttestationDetail(*attestation)
require.NoError(t, err)
require.Equal(t, "sigstore", detail.OrgName)
require.Equal(t, "71096353", detail.OrgID)
require.Equal(t, "sigstore-js", detail.RepositoryName)
require.Equal(t, "495574555", detail.RepositoryID)
require.Equal(t, "https://github.com/sigstore/sigstore-js/actions/runs/6014488666/attempts/1", detail.WorkflowID)
}