Skip to content

Commit

Permalink
Iterating on tests
Browse files Browse the repository at this point in the history
  • Loading branch information
annawinkler committed May 15, 2022
1 parent 119cf62 commit 2ff8259
Show file tree
Hide file tree
Showing 3 changed files with 94 additions and 92 deletions.
36 changes: 19 additions & 17 deletions helper_test.go
Expand Up @@ -773,7 +773,7 @@ func createPrivateRegistryProvider(t *testing.T, client *Client, org *Organizati
prv.Organization = org

return prv, func() {
id := RegistryProviderID {
id := RegistryProviderID{
OrganizationName: org.Name,
RegistryName: prv.RegistryName,
Namespace: prv.Namespace,
Expand Down Expand Up @@ -816,7 +816,7 @@ func createPublicRegistryProvider(t *testing.T, client *Client, org *Organizatio
prv.Organization = org

return prv, func() {
id := RegistryProviderID {
id := RegistryProviderID{
OrganizationName: org.Name,
RegistryName: prv.RegistryName,
Namespace: prv.Namespace,
Expand All @@ -843,7 +843,7 @@ func createRegistryProviderPlatform(t *testing.T, client *Client, provider *Regi
provider, providerCleanup = createPrivateRegistryProvider(t, client, nil)
}

providerID := RegistryProviderID {
providerID := RegistryProviderID{
OrganizationName: provider.Organization.Name,
RegistryName: provider.RegistryName,
Namespace: provider.Namespace,
Expand All @@ -854,18 +854,18 @@ func createRegistryProviderPlatform(t *testing.T, client *Client, provider *Regi
version, versionCleanup = createRegistryProviderVersion(t, client, provider)
}

versionID := RegistryProviderVersionID {
versionID := RegistryProviderVersionID{
RegistryProviderID: providerID,
Version: version.ID,
Version: version.Version,
}

ctx := context.Background()

options := RegistryProviderPlatformCreateOptions{
OS: "fooos",
Arch: "arch",
Shasum: "shasum",
Filename: "filename",
OS: randomString(t),
Arch: randomString(t),
Shasum: genSha(t, "secret", "data"),
Filename: randomString(t),
}

rpp, err := client.RegistryProviderPlatforms.Create(ctx, versionID, options)
Expand All @@ -874,13 +874,14 @@ func createRegistryProviderPlatform(t *testing.T, client *Client, provider *Regi
t.Fatal(err)
}

// rpp.RegistryProviderVersion = version
// TODO - do I need this?
// rpp.RegistryProviderVersion = version

return rpp, func() {
platformID := RegistryProviderPlatformID {
platformID := RegistryProviderPlatformID{
RegistryProviderVersionID: versionID,
OS: rpp.OS,
Arch: rpp.Arch,
OS: rpp.OS,
Arch: rpp.Arch,
}

if err := client.RegistryProviderPlatforms.Delete(ctx, platformID); err != nil {
Expand All @@ -905,7 +906,7 @@ func createRegistryProviderVersion(t *testing.T, client *Client, provider *Regis
provider, providerCleanup = createPrivateRegistryProvider(t, client, nil)
}

providerID := RegistryProviderID {
providerID := RegistryProviderID{
OrganizationName: provider.Organization.Name,
RegistryName: provider.RegistryName,
Namespace: provider.Namespace,
Expand All @@ -915,8 +916,9 @@ func createRegistryProviderVersion(t *testing.T, client *Client, provider *Regis
ctx := context.Background()

options := RegistryProviderVersionCreateOptions{
Version: randomSemver(t),
KeyID: randomString(t),
Version: randomSemver(t),
KeyID: randomString(t),
Protocols: []string{"4.0", "5.0", "6.0"},
}

prvv, err := client.RegistryProviderVersions.Create(ctx, providerID, options)
Expand All @@ -928,7 +930,7 @@ func createRegistryProviderVersion(t *testing.T, client *Client, provider *Regis
prvv.RegistryProvider = provider

return prvv, func() {
id := RegistryProviderVersionID {
id := RegistryProviderVersionID{
Version: options.Version,
RegistryProviderID: providerID,
}
Expand Down
6 changes: 4 additions & 2 deletions registry_provider_platform.go
Expand Up @@ -112,8 +112,10 @@ func (r *registryProviderPlatforms) List(ctx context.Context, versionID Registry
if err := versionID.valid(); err != nil {
return nil, err
}
if err := options.valid(); err != nil {
return nil, err
if options != nil {
if err := options.valid(); err != nil {
return nil, err
}
}

// GET /organizations/:organization_name/registry-providers/:registry_name/:namespace/:name/versions/:version/platforms
Expand Down
144 changes: 71 additions & 73 deletions registry_provider_platform_integration_test.go
Expand Up @@ -49,7 +49,7 @@ func TestRegistryProviderPlatformsCreate(t *testing.T) {
assert.Equal(t, options.Filename, rpp.Filename)

t.Run("relationships are properly decoded", func(t *testing.T) {
assert.Equal(t, provider.ID, rpp.RegistryProviderVersion.ID)
assert.Equal(t, version.ID, rpp.RegistryProviderVersion.ID)
})

t.Run("attributes are properly decoded", func(t *testing.T) {
Expand Down Expand Up @@ -175,21 +175,21 @@ func TestRegistryProviderPlatformsDelete(t *testing.T) {
version, versionCleanup := createRegistryProviderVersion(t, client, provider)
defer versionCleanup()

providerID := RegistryProviderID{
OrganizationName: provider.Organization.Name,
RegistryName: provider.RegistryName,
Namespace: provider.Namespace,
Name: provider.Name,
versionID := RegistryProviderVersionID{
RegistryProviderID: RegistryProviderID{
OrganizationName: provider.Organization.Name,
RegistryName: provider.RegistryName,
Namespace: provider.Namespace,
Name: provider.Name,
},
Version: version.Version,
}

t.Run("with a valid version", func(t *testing.T) {
platform, _ := createRegistryProviderPlatform(t, client, provider, version)

platformID := RegistryProviderPlatformID{
RegistryProviderVersionID: RegistryProviderVersionID{
RegistryProviderID: providerID,
Version: version.Version,
},
RegistryProviderVersionID: versionID,
OS: platform.OS,
Arch: platform.Arch,
}
Expand All @@ -200,10 +200,7 @@ func TestRegistryProviderPlatformsDelete(t *testing.T) {

t.Run("with a non-existant version", func(t *testing.T) {
platformID := RegistryProviderPlatformID{
RegistryProviderVersionID: RegistryProviderVersionID{
RegistryProviderID: providerID,
Version: version.Version,
},
RegistryProviderVersionID: versionID,
OS: "nope",
Arch: "no",
}
Expand All @@ -213,6 +210,66 @@ func TestRegistryProviderPlatformsDelete(t *testing.T) {
})
}

func TestRegistryProviderPlatformsRead(t *testing.T) {
client := testClient(t)
ctx := context.Background()

provider, providerCleanup := createPrivateRegistryProvider(t, client, nil)
defer providerCleanup()

version, versionCleanup := createRegistryProviderVersion(t, client, provider)
defer versionCleanup()

versionID := RegistryProviderVersionID{
RegistryProviderID: RegistryProviderID{
OrganizationName: provider.Organization.Name,
Namespace: provider.Namespace,
Name: provider.Name,
RegistryName: provider.RegistryName,
},
Version: version.Version,
}

platform, platformCleanup := createRegistryProviderPlatform(t, client, provider, version)
defer platformCleanup()

t.Run("with valid platform", func(t *testing.T) {
platformID := RegistryProviderPlatformID{
RegistryProviderVersionID: versionID,
OS: platform.OS,
Arch: platform.Arch,
}

readPlatform, err := client.RegistryProviderPlatforms.Read(ctx, platformID)
assert.NoError(t, err)
assert.Equal(t, platformID.RegistryProviderVersionID.Version, readPlatform.RegistryProviderVersion.Version)
assert.Equal(t, platformID.OS, readPlatform.OS)
assert.Equal(t, platformID.Arch, readPlatform.Arch)
})

t.Run("with non-existant os", func(t *testing.T) {
platformID := RegistryProviderPlatformID{
RegistryProviderVersionID: versionID,
OS: "DoesNotExist",
Arch: platform.Arch,
}

_, err := client.RegistryProviderPlatforms.Read(ctx, platformID)
assert.Error(t, err)
})

t.Run("with non-existant arch", func(t *testing.T) {
platformID := RegistryProviderPlatformID{
RegistryProviderVersionID: versionID,
OS: platform.OS,
Arch: "DoesNotExist",
}

_, err := client.RegistryProviderPlatforms.Read(ctx, platformID)
assert.Error(t, err)
})
}

func TestRegistryProviderPlatformsList(t *testing.T) {
client := testClient(t)
ctx := context.Background()
Expand Down Expand Up @@ -322,62 +379,3 @@ func TestRegistryProviderPlatformsList(t *testing.T) {
})
}

func TestRegistryProviderPlatformsRead(t *testing.T) {
client := testClient(t)
ctx := context.Background()

provider, providerCleanup := createPrivateRegistryProvider(t, client, nil)
defer providerCleanup()

version, versionCleanup := createRegistryProviderVersion(t, client, provider)
defer versionCleanup()

versionID := RegistryProviderVersionID{
RegistryProviderID: RegistryProviderID{
OrganizationName: provider.Organization.Name,
Namespace: provider.Namespace,
Name: provider.Name,
RegistryName: provider.RegistryName,
},
Version: version.ID,
}

platform, platformCleanup := createRegistryProviderPlatform(t, client, provider, version)
defer platformCleanup()

t.Run("with valid platform", func(t *testing.T) {
platformID := RegistryProviderPlatformID{
RegistryProviderVersionID: versionID,
OS: platform.OS,
Arch: platform.Arch,
}

readPlatform, err := client.RegistryProviderPlatforms.Read(ctx, platformID)
assert.NoError(t, err)
assert.Equal(t, platformID.RegistryProviderVersionID.Version, readPlatform.RegistryProviderVersion.Version)
assert.Equal(t, platformID.OS, readPlatform.OS)
assert.Equal(t, platformID.Arch, readPlatform.Arch)
})

t.Run("with non-existant os", func(t *testing.T) {
platformID := RegistryProviderPlatformID{
RegistryProviderVersionID: versionID,
OS: "DoesNotExist",
Arch: platform.Arch,
}

_, err := client.RegistryProviderPlatforms.Read(ctx, platformID)
assert.Error(t, err)
})

t.Run("with non-existant arch", func(t *testing.T) {
platformID := RegistryProviderPlatformID{
RegistryProviderVersionID: versionID,
OS: platform.OS,
Arch: "DoesNotExist",
}

_, err := client.RegistryProviderPlatforms.Read(ctx, platformID)
assert.Error(t, err)
})
}

0 comments on commit 2ff8259

Please sign in to comment.