Add fail migration test 72/139672/1
authorFrancescoFioraEst <francesco.fiora@est.tech>
Fri, 22 Nov 2024 13:42:47 +0000 (13:42 +0000)
committerFrancesco Fiora <francesco.fiora@est.tech>
Wed, 4 Dec 2024 10:33:13 +0000 (10:33 +0000)
Issue-ID: POLICY-5195
Change-Id: I7f89a9097b6979734a9f677662b818869237bd8d
Signed-off-by: FrancescoFioraEst <francesco.fiora@est.tech>
csit/resources/tests/data/ac-instance-migration-fail.yaml [new file with mode: 0644]
csit/resources/tests/policy-clamp-test.robot

diff --git a/csit/resources/tests/data/ac-instance-migration-fail.yaml b/csit/resources/tests/data/ac-instance-migration-fail.yaml
new file mode 100644 (file)
index 0000000..1e6bd78
--- /dev/null
@@ -0,0 +1,99 @@
+# ============LICENSE_START=======================================================
+# Copyright (C) 2024 Nordix Foundation.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the License);
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an AS IS BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+# SPDX-License-Identifier: Apache-2.0
+# ============LICENSE_END=========================================================
+name: Instance-Migration-Fail
+version: 1.0.1
+compositionId: COMPOSITIONIDPLACEHOLDER
+instanceId: INSTACEIDPLACEHOLDER
+compositionTargetId: COMPOSITIONTARGETIDPLACEHOLDER
+description: Demo automation composition instance 0
+elements:
+
+  709c62b3-8918-41b9-a747-d21eb79c6c34:
+    id: 709c62b3-8918-41b9-a747-d21eb79c6c34
+    definition:
+      name: onap.policy.clamp.ac.element.Sim_StarterAutomationCompositionElement
+      version: 1.2.3
+    description: Starter Automation Composition Element for the Demo
+    properties:
+      baseUrl: http://address:30800
+      httpHeaders:
+        Content-Type: application/json
+        Authorization: Basic YWNtVXNlcjp6YiFYenRHMzQ=
+      configurationEntities:
+        - configurationEntityId:
+            name: onap.policy.clamp.ac.starter
+            version: 1.0.0
+          restSequence:
+            - restRequestId:
+                name: request1
+                version: 1.0.1
+              httpMethod: POST
+              path: /onap/policy/clamp/acelement/v2/activate
+              body: '{ "receiverId": { "name": "onap.policy.clamp.ac.startertobridge", "version": "1.0.0" }, "timerMs": 20000, "elementType": "STARTER", "topicParameterGroup": { "server": "message-router:3904", "listenerTopic": "POLICY_UPDATE_MSG", "publisherTopic": "AC_ELEMENT_MSG", "fetchTimeout": 15000, "topicCommInfrastructure": "dmaap" } }'
+              expectedResponse: 201
+          myParameterToUpdate: text
+
+  709c62b3-8918-41b9-a747-d21eb79c6c35:
+    id: 709c62b3-8918-41b9-a747-d21eb79c6c35
+    definition:
+      name: onap.policy.clamp.ac.element.Sim_BridgeAutomationCompositionElement
+      version: 1.2.3
+    description: Bridge Automation Composition Element for the Demo
+    properties:
+      baseUrl: http://address:30801
+      httpHeaders:
+        Content-Type: application/json
+        Authorization: Basic YWNtVXNlcjp6YiFYenRHMzQ=
+      configurationEntities:
+        - configurationEntityId:
+            name: onap.policy.clamp.ac.bridge
+            version: 1.0.0
+          restSequence:
+            - restRequestId:
+                name: request2
+                version: 1.0.1
+              httpMethod: POST
+              path: /onap/policy/clamp/acelement/v2/activate
+              body: '{ "receiverId": { "name": "onap.policy.clamp.ac.bridgetosink", "version": "1.0.0" }, "timerMs": 20000, "elementType": "BRIDGE", "topicParameterGroup": { "server": "message-router:3904", "listenerTopic": "POLICY_UPDATE_MSG", "publisherTopic": "AC_ELEMENT_MSG", "fetchTimeout": 15000, "topicCommInfrastructure": "dmaap" } }'
+              expectedResponse: 201
+          myParameterToUpdate: text
+
+  709c62b3-8918-41b9-a747-d21eb79c6c36:
+    id: 709c62b3-8918-41b9-a747-d21eb79c6c36
+    definition:
+      name: onap.policy.clamp.ac.element.Sim_SinkAutomationCompositionElement
+      version: 1.2.3
+    description: Sink Automation Composition Element for the Demo
+    properties:
+      baseUrl: http://address:30802
+      httpHeaders:
+        Content-Type: application/json
+        Authorization: Basic YWNtVXNlcjp6YiFYenRHMzQ=
+      configurationEntities:
+        - configurationEntityId:
+            name: onap.policy.clamp.ac.sink
+            version: 1.0.0
+          restSequence:
+            - restRequestId:
+                name: request3
+                version: 1.0.1
+              httpMethod: POST
+              path: /onap/policy/clamp/acelement/v2/activate
+              body: '{ "receiverId": { "name": "onap.policy.clamp.ac.sink", "version": "1.0.0" }, "timerMs": 20000, "elementType": "SINK", "topicParameterGroup": { "server": "message-router", "listenerTopic": "POLICY_UPDATE_MSG", "publisherTopic": "AC_ELEMENT_MSG", "fetchTimeout": 15000, "topicCommInfrastructure": "dmaap" } }'
+              expectedResponse: 201
+          myParameterToUpdate: text
index 1c2ea03..b2e30fc 100644 (file)
@@ -283,6 +283,37 @@ AutomationCompositionMigrationTo
     VerifyMigratedElementsRuntime  ${compositionToId}  ${instanceMigrationId}
     VerifyMigratedElementsSim  ${instanceMigrationId}
 
+FailAutomationCompositionMigration
+    [Documentation]  Fail Migration of an automation composition.
+    SetParticipantSimFail
+    ${auth}=    ClampAuth
+    ${postyaml}=  Get file  ${CURDIR}/data/ac-instance-migration-fail.yaml
+    ${updatedpostyaml}=   Replace String     ${postyaml}     COMPOSITIONIDPLACEHOLDER       ${compositionToId}
+    ${updatedpostyaml}=   Replace String     ${updatedpostyaml}     COMPOSITIONTARGETIDPLACEHOLDER       ${compositionFromId}
+    ${updatedpostyaml}=   Replace String     ${updatedpostyaml}     INSTACEIDPLACEHOLDER       ${instanceMigrationId}
+    ${updatedpostyaml}=   Replace String     ${updatedpostyaml}     TEXTPLACEHOLDER       TextForMigration
+    ${resp}=   MakeYamlPostRequest  ACM  ${POLICY_RUNTIME_ACM_IP}  /onap/policy/clamp/acm/v2/compositions/${compositionToId}/instances  ${updatedpostyaml}  ${auth}
+    Should Be Equal As Strings    ${resp.status_code}     200
+    Wait Until Keyword Succeeds    2 min    5 sec    VerifyStateChangeResult  ${compositionToId}  ${instanceMigrationId}  FAILED
+
+FailDePrimeACDefinitionsFrom
+    [Documentation]  Fail DePrime automation composition definition migration From.
+    SetParticipantSimFail
+    ${auth}=    ClampAuth
+    ${postjson}=  Get file  ${CURDIR}/data/ACDepriming.json
+    ${resp}=   MakeJsonPutRequest  ACM  ${POLICY_RUNTIME_ACM_IP}  /onap/policy/clamp/acm/v2/compositions/${compositionFromId}  ${postjson}  ${auth}
+    Should Be Equal As Strings    ${resp.status_code}     202
+    Wait Until Keyword Succeeds    2 min    5 sec    VerifyFailedPriming  ${compositionFromId}
+
+DePrimeACDefinitionsFrom
+    [Documentation]  DePrime automation composition definition migration From.
+    SetParticipantSimSuccess
+    ${auth}=    ClampAuth
+    ${postjson}=  Get file  ${CURDIR}/data/ACDepriming.json
+    ${resp}=   MakeJsonPutRequest  ACM  ${POLICY_RUNTIME_ACM_IP}  /onap/policy/clamp/acm/v2/compositions/${compositionFromId}  ${postjson}  ${auth}
+    Should Be Equal As Strings    ${resp.status_code}     202
+    Wait Until Keyword Succeeds    2 min    5 sec    VerifyPriming  ${compositionFromId}  COMMISSIONED
+
 UnDeployAutomationComposition
     [Documentation]  UnDeploy automation composition.
     ${auth}=    ClampAuth
@@ -352,24 +383,6 @@ DePrimeACDefinitions
     Should Be Equal As Strings    ${resp.status_code}     202
     Wait Until Keyword Succeeds    2 min    5 sec    VerifyPriming  ${compositionId}  COMMISSIONED
 
-FailDePrimeACDefinitionsFrom
-    [Documentation]  Fail DePrime automation composition definition migration From.
-    SetParticipantSimFail
-    ${auth}=    ClampAuth
-    ${postjson}=  Get file  ${CURDIR}/data/ACDepriming.json
-    ${resp}=   MakeJsonPutRequest  ACM  ${POLICY_RUNTIME_ACM_IP}  /onap/policy/clamp/acm/v2/compositions/${compositionFromId}  ${postjson}  ${auth}
-    Should Be Equal As Strings    ${resp.status_code}     202
-    Wait Until Keyword Succeeds    2 min    5 sec    VerifyFailedPriming  ${compositionFromId}
-
-DePrimeACDefinitionsFrom
-    [Documentation]  DePrime automation composition definition migration From.
-    SetParticipantSimSuccess
-    ${auth}=    ClampAuth
-    ${postjson}=  Get file  ${CURDIR}/data/ACDepriming.json
-    ${resp}=   MakeJsonPutRequest  ACM  ${POLICY_RUNTIME_ACM_IP}  /onap/policy/clamp/acm/v2/compositions/${compositionFromId}  ${postjson}  ${auth}
-    Should Be Equal As Strings    ${resp.status_code}     202
-    Wait Until Keyword Succeeds    2 min    5 sec    VerifyPriming  ${compositionFromId}  COMMISSIONED
-
 DePrimeACDefinitionsTo
     [Documentation]  DePrime automation composition definition migration To.
     ${auth}=    ClampAuth