|
| 1 | +// Copyright (c) 2017, 2024, Oracle and/or its affiliates. All rights reserved. |
| 2 | +// Licensed under the Mozilla Public License v2.0 |
| 3 | + |
| 4 | +package integrationtest |
| 5 | + |
| 6 | +import ( |
| 7 | +"fmt" |
| 8 | +"testing" |
| 9 | + |
| 10 | +"github.com/hashicorp/terraform-plugin-testing/helper/resource" |
| 11 | + |
| 12 | +"github.com/oracle/terraform-provider-oci/httpreplay" |
| 13 | +"github.com/oracle/terraform-provider-oci/internal/acctest" |
| 14 | + |
| 15 | +"github.com/oracle/terraform-provider-oci/internal/utils" |
| 16 | +) |
| 17 | + |
| 18 | +var ( |
| 19 | +DatascienceMlApplicationImplementationVersionSingularDataSourceRepresentation = map[string]interface{}{ |
| 20 | +"ml_application_implementation_version_id": acctest.Representation{RepType: acctest.Required, Create: `${data.oci_datascience_ml_application_implementation_versions.test_ml_application_implementation_versions.ml_application_implementation_version_collection[0].items[0].id}`}, |
| 21 | +} |
| 22 | + |
| 23 | +DatascienceMlApplicationImplementationVersionDataSourceRepresentation = map[string]interface{}{ |
| 24 | +"ml_application_implementation_id": acctest.Representation{RepType: acctest.Required, Create: `${oci_datascience_ml_application_implementation.test_ml_application_implementation.id}`}, |
| 25 | +"state": acctest.Representation{RepType: acctest.Optional, Create: `AVAILABLE`}, |
| 26 | +} |
| 27 | + |
| 28 | +DatascienceMlAppImplementationRepresentation = map[string]interface{}{ |
| 29 | +"compartment_id": acctest.Representation{RepType: acctest.Required, Create: `${var.compartment_id}`}, |
| 30 | +"ml_application_id": acctest.Representation{RepType: acctest.Required, Create: `${oci_datascience_ml_application.test_ml_application.id}`}, |
| 31 | +"name": acctest.Representation{RepType: acctest.Required, Create: `TestResource`}, |
| 32 | +"opc_ml_app_package_args": acctest.Representation{RepType: acctest.Optional, Create: map[string]string{"bucket_namespace": "idtlxnfdweil"}}, |
| 33 | +"ml_application_package": acctest.Representation{RepType: acctest.Optional, Create: map[string]string{"source_type": "object_storage_download", "uri": "https://objectstorage.us-ashburn-1.oraclecloud.com/n/ociodscdev/b/Artifact/o/windows.zip"}, Update: map[string]string{"source_type": "object_storage_download", "path": "https://objectstorage.us-ashburn-1.oraclecloud.com/n/ociodscdev/b/Artifact/o/ml-app-package-1.8.zip"}}, |
| 34 | +"allowed_migration_destinations": acctest.Representation{RepType: acctest.Optional, Update: []string{`allowedMigrationDestinations2`}}, |
| 35 | +"lifecycle": acctest.RepresentationGroup{RepType: acctest.Required, Group: ignoreDatascienceMlApplicationImplementationDefinedTagsChangesRepresentation}, |
| 36 | +} |
| 37 | + |
| 38 | +DatascienceMlAppImplementationResourceConfig = acctest.GenerateResourceFromRepresentationMap("oci_datascience_ml_application_implementation", "test_ml_application_implementation", acctest.Optional, acctest.Create, DatascienceMlAppImplementationRepresentation) + |
| 39 | +acctest.GenerateResourceFromRepresentationMap("oci_datascience_ml_application", "test_ml_application", acctest.Required, acctest.Create, DatascienceMlApplicationRepresentation) |
| 40 | +) |
| 41 | + |
| 42 | +// issue-routing-tag: datascience |
| 43 | +func TestDatascienceMlApplicationImplementationVersionResource_basic(t *testing.T) { |
| 44 | +httpreplay.SetScenario("TestDatascienceMlApplicationImplementationVersionResource_basic") |
| 45 | +defer httpreplay.SaveScenario() |
| 46 | + |
| 47 | +config := acctest.ProviderTestConfig() |
| 48 | + |
| 49 | +compartmentId := utils.GetEnvSettingWithBlankDefault("compartment_ocid") |
| 50 | +compartmentIdVariableStr := fmt.Sprintf("variable \"compartment_id\" { default = \"%s\" }\n", compartmentId) |
| 51 | + |
| 52 | +datasourceName := "data.oci_datascience_ml_application_implementation_versions.test_ml_application_implementation_versions" |
| 53 | +singularDatasourceName := "data.oci_datascience_ml_application_implementation_version.test_ml_application_implementation_version" |
| 54 | + |
| 55 | +acctest.SaveConfigContent("", "", "", t) |
| 56 | + |
| 57 | +acctest.ResourceTest(t, nil, []resource.TestStep{ |
| 58 | +// verify datasource |
| 59 | +{ |
| 60 | +Config: config + |
| 61 | +acctest.GenerateDataSourceFromRepresentationMap("oci_datascience_ml_application_implementation_versions", "test_ml_application_implementation_versions", acctest.Required, acctest.Create, DatascienceMlApplicationImplementationVersionDataSourceRepresentation) + |
| 62 | +compartmentIdVariableStr + DatascienceMlAppImplementationResourceConfig, |
| 63 | +Check: acctest.ComposeAggregateTestCheckFuncWrapper( |
| 64 | +resource.TestCheckResourceAttr(datasourceName, "ml_application_implementation_version_collection.0.items.0.state", "ACTIVE"), |
| 65 | +resource.TestCheckResourceAttr(datasourceName, "ml_application_implementation_version_collection.0.items.0.ml_application_name", "ml-app-name-test"), |
| 66 | +resource.TestCheckResourceAttr(datasourceName, "ml_application_implementation_version_collection.0.items.0.name", "TestResource"), |
| 67 | +resource.TestCheckResourceAttr(datasourceName, "ml_application_implementation_version_collection.#", "1"), |
| 68 | +resource.TestCheckResourceAttrSet(datasourceName, "ml_application_implementation_id"), |
| 69 | +), |
| 70 | +}, |
| 71 | +// verify singular datasource |
| 72 | +{ |
| 73 | +Config: config + |
| 74 | +acctest.GenerateDataSourceFromRepresentationMap("oci_datascience_ml_application_implementation_versions", "test_ml_application_implementation_versions", acctest.Required, acctest.Create, DatascienceMlApplicationImplementationVersionDataSourceRepresentation) + |
| 75 | +compartmentIdVariableStr + DatascienceMlAppImplementationResourceConfig + acctest.GenerateDataSourceFromRepresentationMap("oci_datascience_ml_application_implementation_version", "test_ml_application_implementation_version", acctest.Required, acctest.Create, DatascienceMlApplicationImplementationVersionSingularDataSourceRepresentation), |
| 76 | + |
| 77 | +Check: acctest.ComposeAggregateTestCheckFuncWrapper( |
| 78 | +resource.TestCheckResourceAttr(singularDatasourceName, "configuration_schema.#", "1"), |
| 79 | +resource.TestCheckResourceAttr(singularDatasourceName, "ml_application_package_arguments.#", "1"), |
| 80 | +resource.TestCheckResourceAttr(singularDatasourceName, "state", "ACTIVE"), |
| 81 | +resource.TestCheckResourceAttr(singularDatasourceName, "name", "TestResource"), |
| 82 | +resource.TestCheckResourceAttr(singularDatasourceName, "ml_application_name", "ml-app-name-test"), |
| 83 | +resource.TestCheckResourceAttrSet(singularDatasourceName, "id"), |
| 84 | +resource.TestCheckResourceAttrSet(singularDatasourceName, "ml_application_id"), |
| 85 | +resource.TestCheckResourceAttrSet(singularDatasourceName, "package_version"), |
| 86 | +), |
| 87 | +}, |
| 88 | +}) |
| 89 | + |
| 90 | +} |
0 commit comments