|
| 1 | +package v2 |
| 2 | + |
| 3 | +import ( |
| 4 | + "strings" |
| 5 | + "testing" |
| 6 | + |
| 7 | + golangsdk "github.com/opentelekomcloud/gophertelekomcloud" |
| 8 | + "github.com/opentelekomcloud/gophertelekomcloud/acceptance/clients" |
| 9 | + "github.com/opentelekomcloud/gophertelekomcloud/acceptance/tools" |
| 10 | + "github.com/opentelekomcloud/gophertelekomcloud/openstack/fgs/v2/dependency_version" |
| 11 | + "github.com/opentelekomcloud/gophertelekomcloud/openstack/fgs/v2/function" |
| 12 | + th "github.com/opentelekomcloud/gophertelekomcloud/testhelper" |
| 13 | +) |
| 14 | + |
| 15 | +func TestDependencyVersionLifecycle(t *testing.T) { |
| 16 | + client, err := clients.NewFuncGraphClient() |
| 17 | + th.AssertNoErr(t, err) |
| 18 | + |
| 19 | + createResp, _ := createFunctionGraph(t, client) |
| 20 | + |
| 21 | + funcUrn := strings.TrimSuffix(createResp.FuncURN, ":latest") |
| 22 | + |
| 23 | + defer func(client *golangsdk.ServiceClient, id string) { |
| 24 | + err = function.Delete(client, id) |
| 25 | + th.AssertNoErr(t, err) |
| 26 | + }(client, funcUrn) |
| 27 | + |
| 28 | + createOpts := dependency_version.CreateOpts{ |
| 29 | + Name: tools.RandomString("dep-version-", 4), |
| 30 | + Runtime: "Python3.9", |
| 31 | + DependType: "obs", |
| 32 | + DependLink: "https://regr-func-graph.obs.eu-de.otc.t-systems.com/requirements.zip", |
| 33 | + Description: "test dependency", |
| 34 | + } |
| 35 | + |
| 36 | + createDepResp, err := dependency_version.Create(client, createOpts) |
| 37 | + th.AssertNoErr(t, err) |
| 38 | + |
| 39 | + defer func(client *golangsdk.ServiceClient, id string) { |
| 40 | + err = dependency_version.Delete(client, createDepResp.DepId, "1") |
| 41 | + th.AssertNoErr(t, err) |
| 42 | + }(client, funcUrn) |
| 43 | + |
| 44 | + getDepResp, err := dependency_version.Get(client, createDepResp.DepId, "1") |
| 45 | + th.AssertNoErr(t, err) |
| 46 | + th.AssertEquals(t, createDepResp.Name, getDepResp.Name) |
| 47 | + th.AssertEquals(t, createDepResp.Runtime, getDepResp.Runtime) |
| 48 | + th.AssertEquals(t, createDepResp.Etag, getDepResp.Etag) |
| 49 | + |
| 50 | + listDepResp, err := dependency_version.ListDependencies(client, dependency_version.ListDependenciesOpts{ |
| 51 | + DependencyType: "obs", |
| 52 | + Runtime: "Python3.9", |
| 53 | + }) |
| 54 | + th.AssertNoErr(t, err) |
| 55 | + th.AssertEquals(t, len(listDepResp.Dependencies) > 1, true) |
| 56 | + |
| 57 | + listDepVerResp, err := dependency_version.ListDependencyVersions(client, dependency_version.ListDependencyVersionOpts{ |
| 58 | + DependId: createDepResp.DepId, |
| 59 | + }) |
| 60 | + th.AssertNoErr(t, err) |
| 61 | + th.AssertEquals(t, listDepVerResp.Dependencies[0].Name, getDepResp.Name) |
| 62 | + th.AssertEquals(t, listDepVerResp.Dependencies[0].Runtime, getDepResp.Runtime) |
| 63 | + th.AssertEquals(t, listDepVerResp.Dependencies[0].Etag, getDepResp.Etag) |
| 64 | + |
| 65 | +} |
0 commit comments