aboutsummaryrefslogtreecommitdiffstats
path: root/test/csit
diff options
context:
space:
mode:
Diffstat (limited to 'test/csit')
-rw-r--r--test/csit/plans/aai/resources/aai-resources/appconfig/janusgraph-cached.properties (renamed from test/csit/plans/aai/resources/aai-resources/appconfig/titan-cached.properties)6
-rw-r--r--test/csit/plans/aai/resources/aai-resources/appconfig/janusgraph-realtime.properties (renamed from test/csit/plans/aai/traversal/aai-resources/appconfig/titan-realtime.properties)6
-rw-r--r--test/csit/plans/aai/resources/aai-traversal/appconfig/janusgraph-cached.properties (renamed from test/csit/plans/aai/traversal/aai-resources/appconfig/titan-cached.properties)6
-rw-r--r--test/csit/plans/aai/resources/aai-traversal/appconfig/janusgraph-realtime.properties (renamed from test/csit/plans/aai/resources/aai-resources/appconfig/titan-realtime.properties)6
-rw-r--r--test/csit/plans/aai/resources/docker-compose.yml27
-rw-r--r--test/csit/plans/aai/resources/setup.sh8
-rw-r--r--test/csit/plans/aai/traversal/aai-resources/appconfig/janusgraph-cached.properties (renamed from test/csit/plans/aai/resources/aai-traversal/appconfig/titan-cached.properties)6
-rw-r--r--test/csit/plans/aai/traversal/aai-resources/appconfig/janusgraph-realtime.properties (renamed from test/csit/plans/aai/traversal/aai-traversal/appconfig/titan-realtime.properties)6
-rw-r--r--test/csit/plans/aai/traversal/aai-traversal/appconfig/janusgraph-cached.properties (renamed from test/csit/plans/aai/traversal/aai-traversal/appconfig/titan-cached.properties)6
-rw-r--r--test/csit/plans/aai/traversal/aai-traversal/appconfig/janusgraph-realtime.properties (renamed from test/csit/plans/aai/resources/aai-traversal/appconfig/titan-realtime.properties)6
-rw-r--r--test/csit/plans/aai/traversal/docker-compose.yml27
-rw-r--r--test/csit/plans/aai/traversal/setup.sh10
-rwxr-xr-xtest/csit/plans/dmaap/mrpubsub/setup.sh2
-rw-r--r--test/csit/plans/multicloud-vmware/functionality1/testplan.txt4
-rwxr-xr-xtest/csit/plans/multicloud/functionality1/setup.sh4
-rwxr-xr-xtest/csit/plans/multicloud/functionality1/teardown.sh1
-rw-r--r--test/csit/plans/vfc-nfvo-multivimproxy/sanity-check/setup.sh44
-rw-r--r--test/csit/plans/vfc-nfvo-multivimproxy/sanity-check/teardown.sh22
-rw-r--r--test/csit/plans/vfc-nfvo-multivimproxy/sanity-check/testplan.txt3
-rwxr-xr-xtest/csit/scripts/optf-has/has/music_script.sh2
-rw-r--r--test/csit/tests/multicloud-vmware/hosts/sanity-host.robot24
-rw-r--r--test/csit/tests/multicloud-vmware/images/sanity-image.robot24
-rw-r--r--test/csit/tests/multicloud-vmware/networks/sanity-network.robot24
-rw-r--r--test/csit/tests/multicloud-vmware/provision/jsoninput/image_file.json7
-rw-r--r--test/csit/tests/multicloud-vmware/provision/sanity_test_image.robot34
-rw-r--r--test/csit/tests/multicloud-vmware/samples/sanity-sample.robot25
-rw-r--r--test/csit/tests/multicloud/provision/data/capacity.json6
-rw-r--r--test/csit/tests/multicloud/provision/sanity_test_multivim.robot11
-rw-r--r--test/csit/tests/optf-has/has/data/plan_with_long_distance_constraint.json49
-rw-r--r--test/csit/tests/optf-has/has/data/plan_with_long_distance_constraint.json.service51
-rw-r--r--test/csit/tests/optf-has/has/data/plan_with_short_distance_constraint.json21
-rw-r--r--test/csit/tests/optf-has/has/data/plan_with_wrong_distance_constraint.json (renamed from test/csit/tests/optf-has/has/data/plan_with_long_distance_constraint.json.orig)22
-rw-r--r--test/csit/tests/optf-has/has/optf_has_test.robot65
-rw-r--r--test/csit/tests/vfc/nfvo-multivimproxy/test.robot24
34 files changed, 437 insertions, 152 deletions
diff --git a/test/csit/plans/aai/resources/aai-resources/appconfig/titan-cached.properties b/test/csit/plans/aai/resources/aai-resources/appconfig/janusgraph-cached.properties
index 97bb81863..c2110f77c 100644
--- a/test/csit/plans/aai/resources/aai-resources/appconfig/titan-cached.properties
+++ b/test/csit/plans/aai/resources/aai-resources/appconfig/janusgraph-cached.properties
@@ -21,10 +21,14 @@
#
query.fast-property=true
+query.smart-limit=false
+
# the following parameters are not reloaded automatically and require a manual bounce
-storage.backend=hbase
+storage.backend=cassandra
storage.hostname=aai.hbase.simpledemo.onap.org
+storage.cassandra.keyspace=aaigraph
+
#schema.default=none
storage.lock.wait-time=300
storage.hbase.table=aaigraph-dev1.dev
diff --git a/test/csit/plans/aai/traversal/aai-resources/appconfig/titan-realtime.properties b/test/csit/plans/aai/resources/aai-resources/appconfig/janusgraph-realtime.properties
index 0c97b753a..4791431a1 100644
--- a/test/csit/plans/aai/traversal/aai-resources/appconfig/titan-realtime.properties
+++ b/test/csit/plans/aai/resources/aai-resources/appconfig/janusgraph-realtime.properties
@@ -21,10 +21,14 @@
#
query.fast-property=true
+query.smart-limit=false
+
# the following parameters are not reloaded automatically and require a manual bounce
-storage.backend=hbase
+storage.backend=cassandra
storage.hostname=aai.hbase.simpledemo.onap.org
+storage.cassandra.keyspace=aaigraph
+
#schema.default=none
storage.lock.wait-time=300
storage.hbase.table=aaigraph-dev1.dev
diff --git a/test/csit/plans/aai/traversal/aai-resources/appconfig/titan-cached.properties b/test/csit/plans/aai/resources/aai-traversal/appconfig/janusgraph-cached.properties
index 97bb81863..c2110f77c 100644
--- a/test/csit/plans/aai/traversal/aai-resources/appconfig/titan-cached.properties
+++ b/test/csit/plans/aai/resources/aai-traversal/appconfig/janusgraph-cached.properties
@@ -21,10 +21,14 @@
#
query.fast-property=true
+query.smart-limit=false
+
# the following parameters are not reloaded automatically and require a manual bounce
-storage.backend=hbase
+storage.backend=cassandra
storage.hostname=aai.hbase.simpledemo.onap.org
+storage.cassandra.keyspace=aaigraph
+
#schema.default=none
storage.lock.wait-time=300
storage.hbase.table=aaigraph-dev1.dev
diff --git a/test/csit/plans/aai/resources/aai-resources/appconfig/titan-realtime.properties b/test/csit/plans/aai/resources/aai-traversal/appconfig/janusgraph-realtime.properties
index 0c97b753a..4791431a1 100644
--- a/test/csit/plans/aai/resources/aai-resources/appconfig/titan-realtime.properties
+++ b/test/csit/plans/aai/resources/aai-traversal/appconfig/janusgraph-realtime.properties
@@ -21,10 +21,14 @@
#
query.fast-property=true
+query.smart-limit=false
+
# the following parameters are not reloaded automatically and require a manual bounce
-storage.backend=hbase
+storage.backend=cassandra
storage.hostname=aai.hbase.simpledemo.onap.org
+storage.cassandra.keyspace=aaigraph
+
#schema.default=none
storage.lock.wait-time=300
storage.hbase.table=aaigraph-dev1.dev
diff --git a/test/csit/plans/aai/resources/docker-compose.yml b/test/csit/plans/aai/resources/docker-compose.yml
index 3f465c3ec..6f62e6ef2 100644
--- a/test/csit/plans/aai/resources/docker-compose.yml
+++ b/test/csit/plans/aai/resources/docker-compose.yml
@@ -6,11 +6,12 @@ services:
environment:
- LOCAL_USER_ID=${USER_ID}
- LOCAL_GROUP_ID=${GROUP_ID}
+ - SKIP_CREATE_DB_SCHEMA_AT_STARTUP=true
ports:
- 8447:8447
volumes:
- - ${CURRENT_PWD}/aai-resources/appconfig/titan-realtime.properties:/opt/app/aai-resources/resources/etc/appprops/titan-realtime.properties
- - ${CURRENT_PWD}/aai-resources/appconfig/titan-cached.properties:/opt/app/aai-resources/resources/etc/appprops/titan-cached.properties
+ - ${CURRENT_PWD}/aai-resources/appconfig/janusgraph-realtime.properties:/opt/app/aai-resources/resources/etc/appprops/janusgraph-realtime.properties
+ - ${CURRENT_PWD}/aai-resources/appconfig/janusgraph-cached.properties:/opt/app/aai-resources/resources/etc/appprops/janusgraph-cached.properties
- ${CURRENT_PWD}/aai-resources/appconfig/aaiconfig.properties:/opt/app/aai-resources/resources/etc/appprops/aaiconfig.properties
- ${CURRENT_PWD}/aai-resources/appconfig/application.properties:/opt/app/aai-resources/resources/application.properties
- ${CURRENT_PWD}/aai-resources/appconfig/logback.xml:/opt/app/aai-resources/resources/logback.xml
@@ -30,8 +31,8 @@ services:
- LOCAL_GROUP_ID=${GROUP_ID}
- DISABLE_UPDATE_QUERY=true
volumes:
- - ${CURRENT_PWD}/aai-traversal/appconfig/titan-realtime.properties:/opt/app/aai-traversal/resources/etc/appprops/titan-realtime.properties
- - ${CURRENT_PWD}/aai-traversal/appconfig/titan-cached.properties:/opt/app/aai-traversal/resources/etc/appprops/titan-cached.properties
+ - ${CURRENT_PWD}/aai-traversal/appconfig/janusgraph-realtime.properties:/opt/app/aai-traversal/resources/etc/appprops/janusgraph-realtime.properties
+ - ${CURRENT_PWD}/aai-traversal/appconfig/janusgraph-cached.properties:/opt/app/aai-traversal/resources/etc/appprops/janusgraph-cached.properties
- ${CURRENT_PWD}/aai-traversal/appconfig/aaiconfig.properties:/opt/app/aai-traversal/resources/etc/appprops/aaiconfig.properties
- ${CURRENT_PWD}/aai-traversal/appconfig/application.properties:/opt/app/aai-traversal/resources/application.properties
- ${CURRENT_PWD}/aai-traversal/appconfig/logback.xml:/opt/app/aai-traversal/resources/logback.xml
@@ -61,16 +62,18 @@ services:
max-size: "30m"
max-file: "5"
aai.hbase.simpledemo.onap.org:
- image: ${HBASE_IMAGE}:${HBASE_VERSION}
+ image: cassandra:2.1
hostname: aai.hbase.simpledemo.onap.org
ports:
- - 2181:2181
- - 8080:8080
- - 8085:8085
- - 9090:9090
- - 16000:16000
- - 16010:16010
- - 16201:16201
+ - 7000:7000
+ - 7001:7001
+ - 7199:7199
+ - 9042:9042
+ environment:
+ - CASSANDRA_SEEDS=aai.hbase.simpledemo.onap.org
+ - CASSANDRA_DC=Heat
+ - CASSANDRA_RACK=Rack1
+ - CASSANDRA_AUTO_BOOTSTRAP=true
logging:
driver: "json-file"
options:
diff --git a/test/csit/plans/aai/resources/setup.sh b/test/csit/plans/aai/resources/setup.sh
index 14b567108..bd5cb5214 100644
--- a/test/csit/plans/aai/resources/setup.sh
+++ b/test/csit/plans/aai/resources/setup.sh
@@ -73,10 +73,8 @@ ${DOCKER_COMPOSE_CMD} stop
${DOCKER_COMPOSE_CMD} rm -f -v
# Start the hbase where the data will be stored
-HBASE_CONTAINER_NAME=$(${DOCKER_COMPOSE_CMD} up -d aai.hbase.simpledemo.onap.org 2>&1 | grep 'Creating' | grep -v 'volume' | grep -v 'network' | awk '{ print $2; }' | head -1);
-wait_for_container ${HBASE_CONTAINER_NAME} ' Started SelectChannelConnector@0.0.0.0:8085';
-wait_for_container ${HBASE_CONTAINER_NAME} ' Started SelectChannelConnector@0.0.0.0:8080';
-wait_for_container ${HBASE_CONTAINER_NAME} ' Started SelectChannelConnector@0.0.0.0:9095';
+CASSANDRA_CONTAINER_NAME=$(${DOCKER_COMPOSE_CMD} up -d aai.hbase.simpledemo.onap.org 2>&1 | grep 'Creating' | grep -v 'volume' | grep -v 'network' | awk '{ print $2; }' | head -1);
+wait_for_container $CASSANDRA_CONTAINER_NAME 'Listening for thrift clients';
USER_EXISTS=$(check_if_user_exists aaiadmin);
@@ -102,6 +100,8 @@ else
export USER_ID=$(id -u aaiadmin);
fi;
+$DOCKER_COMPOSE_CMD run --rm aai-resources.api.simpledemo.onap.org createDBSchema.sh
+
RESOURCES_CONTAINER_NAME=$(${DOCKER_COMPOSE_CMD} up -d aai-resources.api.simpledemo.onap.org 2>&1 | grep 'Creating' | grep -v 'volume' | grep -v 'network' | awk '{ print $2; }' | head -1);
wait_for_container $RESOURCES_CONTAINER_NAME 'Resources Microservice Started';
diff --git a/test/csit/plans/aai/resources/aai-traversal/appconfig/titan-cached.properties b/test/csit/plans/aai/traversal/aai-resources/appconfig/janusgraph-cached.properties
index 97bb81863..c2110f77c 100644
--- a/test/csit/plans/aai/resources/aai-traversal/appconfig/titan-cached.properties
+++ b/test/csit/plans/aai/traversal/aai-resources/appconfig/janusgraph-cached.properties
@@ -21,10 +21,14 @@
#
query.fast-property=true
+query.smart-limit=false
+
# the following parameters are not reloaded automatically and require a manual bounce
-storage.backend=hbase
+storage.backend=cassandra
storage.hostname=aai.hbase.simpledemo.onap.org
+storage.cassandra.keyspace=aaigraph
+
#schema.default=none
storage.lock.wait-time=300
storage.hbase.table=aaigraph-dev1.dev
diff --git a/test/csit/plans/aai/traversal/aai-traversal/appconfig/titan-realtime.properties b/test/csit/plans/aai/traversal/aai-resources/appconfig/janusgraph-realtime.properties
index 0c97b753a..4791431a1 100644
--- a/test/csit/plans/aai/traversal/aai-traversal/appconfig/titan-realtime.properties
+++ b/test/csit/plans/aai/traversal/aai-resources/appconfig/janusgraph-realtime.properties
@@ -21,10 +21,14 @@
#
query.fast-property=true
+query.smart-limit=false
+
# the following parameters are not reloaded automatically and require a manual bounce
-storage.backend=hbase
+storage.backend=cassandra
storage.hostname=aai.hbase.simpledemo.onap.org
+storage.cassandra.keyspace=aaigraph
+
#schema.default=none
storage.lock.wait-time=300
storage.hbase.table=aaigraph-dev1.dev
diff --git a/test/csit/plans/aai/traversal/aai-traversal/appconfig/titan-cached.properties b/test/csit/plans/aai/traversal/aai-traversal/appconfig/janusgraph-cached.properties
index 97bb81863..c2110f77c 100644
--- a/test/csit/plans/aai/traversal/aai-traversal/appconfig/titan-cached.properties
+++ b/test/csit/plans/aai/traversal/aai-traversal/appconfig/janusgraph-cached.properties
@@ -21,10 +21,14 @@
#
query.fast-property=true
+query.smart-limit=false
+
# the following parameters are not reloaded automatically and require a manual bounce
-storage.backend=hbase
+storage.backend=cassandra
storage.hostname=aai.hbase.simpledemo.onap.org
+storage.cassandra.keyspace=aaigraph
+
#schema.default=none
storage.lock.wait-time=300
storage.hbase.table=aaigraph-dev1.dev
diff --git a/test/csit/plans/aai/resources/aai-traversal/appconfig/titan-realtime.properties b/test/csit/plans/aai/traversal/aai-traversal/appconfig/janusgraph-realtime.properties
index 0c97b753a..4791431a1 100644
--- a/test/csit/plans/aai/resources/aai-traversal/appconfig/titan-realtime.properties
+++ b/test/csit/plans/aai/traversal/aai-traversal/appconfig/janusgraph-realtime.properties
@@ -21,10 +21,14 @@
#
query.fast-property=true
+query.smart-limit=false
+
# the following parameters are not reloaded automatically and require a manual bounce
-storage.backend=hbase
+storage.backend=cassandra
storage.hostname=aai.hbase.simpledemo.onap.org
+storage.cassandra.keyspace=aaigraph
+
#schema.default=none
storage.lock.wait-time=300
storage.hbase.table=aaigraph-dev1.dev
diff --git a/test/csit/plans/aai/traversal/docker-compose.yml b/test/csit/plans/aai/traversal/docker-compose.yml
index 3f465c3ec..6f62e6ef2 100644
--- a/test/csit/plans/aai/traversal/docker-compose.yml
+++ b/test/csit/plans/aai/traversal/docker-compose.yml
@@ -6,11 +6,12 @@ services:
environment:
- LOCAL_USER_ID=${USER_ID}
- LOCAL_GROUP_ID=${GROUP_ID}
+ - SKIP_CREATE_DB_SCHEMA_AT_STARTUP=true
ports:
- 8447:8447
volumes:
- - ${CURRENT_PWD}/aai-resources/appconfig/titan-realtime.properties:/opt/app/aai-resources/resources/etc/appprops/titan-realtime.properties
- - ${CURRENT_PWD}/aai-resources/appconfig/titan-cached.properties:/opt/app/aai-resources/resources/etc/appprops/titan-cached.properties
+ - ${CURRENT_PWD}/aai-resources/appconfig/janusgraph-realtime.properties:/opt/app/aai-resources/resources/etc/appprops/janusgraph-realtime.properties
+ - ${CURRENT_PWD}/aai-resources/appconfig/janusgraph-cached.properties:/opt/app/aai-resources/resources/etc/appprops/janusgraph-cached.properties
- ${CURRENT_PWD}/aai-resources/appconfig/aaiconfig.properties:/opt/app/aai-resources/resources/etc/appprops/aaiconfig.properties
- ${CURRENT_PWD}/aai-resources/appconfig/application.properties:/opt/app/aai-resources/resources/application.properties
- ${CURRENT_PWD}/aai-resources/appconfig/logback.xml:/opt/app/aai-resources/resources/logback.xml
@@ -30,8 +31,8 @@ services:
- LOCAL_GROUP_ID=${GROUP_ID}
- DISABLE_UPDATE_QUERY=true
volumes:
- - ${CURRENT_PWD}/aai-traversal/appconfig/titan-realtime.properties:/opt/app/aai-traversal/resources/etc/appprops/titan-realtime.properties
- - ${CURRENT_PWD}/aai-traversal/appconfig/titan-cached.properties:/opt/app/aai-traversal/resources/etc/appprops/titan-cached.properties
+ - ${CURRENT_PWD}/aai-traversal/appconfig/janusgraph-realtime.properties:/opt/app/aai-traversal/resources/etc/appprops/janusgraph-realtime.properties
+ - ${CURRENT_PWD}/aai-traversal/appconfig/janusgraph-cached.properties:/opt/app/aai-traversal/resources/etc/appprops/janusgraph-cached.properties
- ${CURRENT_PWD}/aai-traversal/appconfig/aaiconfig.properties:/opt/app/aai-traversal/resources/etc/appprops/aaiconfig.properties
- ${CURRENT_PWD}/aai-traversal/appconfig/application.properties:/opt/app/aai-traversal/resources/application.properties
- ${CURRENT_PWD}/aai-traversal/appconfig/logback.xml:/opt/app/aai-traversal/resources/logback.xml
@@ -61,16 +62,18 @@ services:
max-size: "30m"
max-file: "5"
aai.hbase.simpledemo.onap.org:
- image: ${HBASE_IMAGE}:${HBASE_VERSION}
+ image: cassandra:2.1
hostname: aai.hbase.simpledemo.onap.org
ports:
- - 2181:2181
- - 8080:8080
- - 8085:8085
- - 9090:9090
- - 16000:16000
- - 16010:16010
- - 16201:16201
+ - 7000:7000
+ - 7001:7001
+ - 7199:7199
+ - 9042:9042
+ environment:
+ - CASSANDRA_SEEDS=aai.hbase.simpledemo.onap.org
+ - CASSANDRA_DC=Heat
+ - CASSANDRA_RACK=Rack1
+ - CASSANDRA_AUTO_BOOTSTRAP=true
logging:
driver: "json-file"
options:
diff --git a/test/csit/plans/aai/traversal/setup.sh b/test/csit/plans/aai/traversal/setup.sh
index 118a1bc9c..70dda84b6 100644
--- a/test/csit/plans/aai/traversal/setup.sh
+++ b/test/csit/plans/aai/traversal/setup.sh
@@ -72,10 +72,8 @@ ${DOCKER_COMPOSE_CMD} stop
${DOCKER_COMPOSE_CMD} rm -f -v
# Start the hbase where the data will be stored
-HBASE_CONTAINER_NAME=$(${DOCKER_COMPOSE_CMD} up -d aai.hbase.simpledemo.onap.org 2>&1 | grep 'Creating' | grep -v 'volume' | grep -v 'network' | awk '{ print $2; }' | head -1);
-wait_for_container ${HBASE_CONTAINER_NAME} ' Started SelectChannelConnector@0.0.0.0:8085';
-wait_for_container ${HBASE_CONTAINER_NAME} ' Started SelectChannelConnector@0.0.0.0:8080';
-wait_for_container ${HBASE_CONTAINER_NAME} ' Started SelectChannelConnector@0.0.0.0:9095';
+CASSANDRA_CONTAINER_NAME=$(${DOCKER_COMPOSE_CMD} up -d aai.hbase.simpledemo.onap.org 2>&1 | grep 'Creating' | grep -v 'volume' | grep -v 'network' | awk '{ print $2; }' | head -1);
+wait_for_container $CASSANDRA_CONTAINER_NAME 'Listening for thrift clients';
USER_EXISTS=$(check_if_user_exists aaiadmin);
@@ -103,12 +101,16 @@ else
export GROUP_ID=$(id -g aaiadmin);
fi;
+$DOCKER_COMPOSE_CMD run --rm aai-resources.api.simpledemo.onap.org createDBSchema.sh
+
RESOURCES_CONTAINER_NAME=$(${DOCKER_COMPOSE_CMD} up -d aai-resources.api.simpledemo.onap.org 2>&1 | grep 'Creating' | grep -v 'volume' | grep -v 'network' | awk '{ print $2; }' | head -1);
wait_for_container $RESOURCES_CONTAINER_NAME 'Resources Microservice Started';
${DOCKER_COMPOSE_CMD} up -d aai-traversal.api.simpledemo.onap.org aai.api.simpledemo.onap.org
TRAVERSAL_CONTAINER_NAME=$(echo $RESOURCES_CONTAINER_NAME | sed 's/aai-resources/aai-traversal/g');
+$DOCKER_COMPOSE_CMD run --rm aai-traversal.api.simpledemo.onap.org install/updateQueryData.sh
+
echo "A&AI Microservices, resources and traversal, are up and running along with HAProxy";
wait_for_container $TRAVERSAL_CONTAINER_NAME 'Traversal Microservice Started';
diff --git a/test/csit/plans/dmaap/mrpubsub/setup.sh b/test/csit/plans/dmaap/mrpubsub/setup.sh
index 3e8950f2b..0a1f9d359 100755
--- a/test/csit/plans/dmaap/mrpubsub/setup.sh
+++ b/test/csit/plans/dmaap/mrpubsub/setup.sh
@@ -35,6 +35,7 @@ cp $WORKSPACE/archives/dmaapmr/messageservice/bundleconfig-local/etc/appprops/Ms
# start DMaaP MR containers with docker compose and configuration from docker-compose.yml
+docker login -u docker -p docker nexus3.onap.org:10001
docker-compose up -d
# Wait for initialization of Docker contaienr for DMaaP MR, Kafka and Zookeeper
@@ -68,6 +69,7 @@ sed -i -e 's/<zookeeper_host>/'$ZOOKEEPER_IP'/' /var/tmp/MsgRtrApi.properties
sed -i -e 's/<kafka_host>:<kafka_port>/'$KAFKA_IP':9092/' /var/tmp/MsgRtrApi.properties
docker-compose build
+docker login -u docker -p docker nexus3.onap.org:10001
docker-compose up -d
# Wait for initialization of Docker containers
diff --git a/test/csit/plans/multicloud-vmware/functionality1/testplan.txt b/test/csit/plans/multicloud-vmware/functionality1/testplan.txt
index 2f5ad1b6f..0a2ad45af 100644
--- a/test/csit/plans/multicloud-vmware/functionality1/testplan.txt
+++ b/test/csit/plans/multicloud-vmware/functionality1/testplan.txt
@@ -7,3 +7,7 @@ multicloud-vmware/provision/sanity_test_neutron.robot
multicloud-vmware/nova/sanity-flavor.robot
multicloud-vmware/nova/sanity-host.robot
multicloud-vmware/nova/sanity-server.robot
+multicloud-vmware/samples/sanity-sample.robot
+multicloud-vmware/hosts/sanity-host.robot
+multicloud-vmware/networks/sanity-network.robot
+multicloud-vmware/images/sanity-image.robot
diff --git a/test/csit/plans/multicloud/functionality1/setup.sh b/test/csit/plans/multicloud/functionality1/setup.sh
index 993a39f68..479c21daf 100755
--- a/test/csit/plans/multicloud/functionality1/setup.sh
+++ b/test/csit/plans/multicloud/functionality1/setup.sh
@@ -20,7 +20,9 @@
source ${SCRIPTS}/common_functions.sh
# start multivim-broker
-docker run -d --name multivim-broker nexus3.onap.org:10001/onap/multicloud/framework
+docker run -d --name multivim-vio nexus3.onap.org:10001/onap/multicloud/vio
+docker run -d --name multivim-broker --link multivim-vio -e MSB_ADDR:multivim-vio -e MSB_ADDR:9004 nexus3.onap.org:10001/onap/multicloud/framework
+
BROKER_IP=`get-instance-ip.sh multivim-broker`
for i in {1..50}; do
curl -sS ${BROKER_IP}:9001 && break
diff --git a/test/csit/plans/multicloud/functionality1/teardown.sh b/test/csit/plans/multicloud/functionality1/teardown.sh
index 1732649af..a2ef0e35e 100755
--- a/test/csit/plans/multicloud/functionality1/teardown.sh
+++ b/test/csit/plans/multicloud/functionality1/teardown.sh
@@ -16,4 +16,5 @@
#
# This script is sourced by run-csit.sh after Robot test completion.
+kill-instance.sh multivim-vio
kill-instance.sh multivim-broker
diff --git a/test/csit/plans/vfc-nfvo-multivimproxy/sanity-check/setup.sh b/test/csit/plans/vfc-nfvo-multivimproxy/sanity-check/setup.sh
new file mode 100644
index 000000000..4d97f33eb
--- /dev/null
+++ b/test/csit/plans/vfc-nfvo-multivimproxy/sanity-check/setup.sh
@@ -0,0 +1,44 @@
+#!/bin/bash
+#
+# Copyright 2018 Huawei Technologies Co., Ltd.
+#
+# 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.
+#
+# Place the scripts in run order:
+# Start all process required for executing test case
+
+#login to the onap nexus docker repo
+docker login -u docker -p docker nexus3.onap.org:10001
+
+# Start MSB
+docker run -d -p 8500:8500 --name msb_consul consul:0.9.3
+CONSUL_IP=`get-instance-ip.sh msb_consul`
+echo CONSUL_IP=${CONSUL_IP}
+docker run -d -p 10081:10081 -e CONSUL_IP=$CONSUL_IP --name msb_discovery nexus3.onap.org:10001/onap/msb/msb_discovery
+DISCOVERY_IP=`get-instance-ip.sh msb_discovery`
+echo DISCOVERY_IP=${DISCOVERY_IP}
+docker run -d -p 80:80 -e CONSUL_IP=$CONSUL_IP -e SDCLIENT_IP=$DISCOVERY_IP --name msb_internal_apigateway nexus3.onap.org:10001/onap/msb/msb_apigateway
+MSB_IP==`get-instance-ip.sh msb_internal_apigateway`
+echo MSB_IP=${MSB_IP}
+
+# Start resmgr
+docker run -d --name vfc-multivimproxy -e MSB_ADDR=${MSB_IP}:80 nexus3.onap.org:10001/onap/vfc/multivimproxy
+RESMGR_IP=`get-instance-ip.sh vfc-multivimproxy`
+for i in {1..20}; do
+ curl -sS ${RESMGR_IP}:8486 && break
+ echo sleep $i
+ sleep $i
+done
+
+# Pass any variables required by Robot test suites in ROBOT_VARIABLES
+ROBOT_VARIABLES="-v MSB_IP:${MSB_IP} -v RESMGR_IP:${RESMGR_IP}"
diff --git a/test/csit/plans/vfc-nfvo-multivimproxy/sanity-check/teardown.sh b/test/csit/plans/vfc-nfvo-multivimproxy/sanity-check/teardown.sh
new file mode 100644
index 000000000..c158d1997
--- /dev/null
+++ b/test/csit/plans/vfc-nfvo-multivimproxy/sanity-check/teardown.sh
@@ -0,0 +1,22 @@
+#!/bin/bash
+#
+# Copyright 2018 Huawei Technologies Co., Ltd.
+#
+# 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.
+#
+
+# This script is sourced by run-csit.sh after Robot test completion.
+kill-instance.sh msb_internal_apigateway
+kill-instance.sh msb_discovery
+kill-instance.sh msb_consul
+kill-instance.sh vfc-multivimproxy
diff --git a/test/csit/plans/vfc-nfvo-multivimproxy/sanity-check/testplan.txt b/test/csit/plans/vfc-nfvo-multivimproxy/sanity-check/testplan.txt
new file mode 100644
index 000000000..f81be8ecf
--- /dev/null
+++ b/test/csit/plans/vfc-nfvo-multivimproxy/sanity-check/testplan.txt
@@ -0,0 +1,3 @@
+# Test suites are relative paths under [integration.git]/test/csit/tests/.
+# Place the suites in run order.
+vfc/nfvo-multivimproxy/test.robot \ No newline at end of file
diff --git a/test/csit/scripts/optf-has/has/music_script.sh b/test/csit/scripts/optf-has/has/music_script.sh
index fb43e1b8b..39cab6194 100755
--- a/test/csit/scripts/optf-has/has/music_script.sh
+++ b/test/csit/scripts/optf-has/has/music_script.sh
@@ -55,7 +55,7 @@ docker run -d --name music-war -v music-vol:/app ${MUSIC_IMG};
docker run -d --name music-zk --network music-net -p "2181:2181" -p "2888:2888" -p "3888:3888" ${ZK_IMG};
# Delay for Cassandra
-sleep 20;
+sleep 30;
# Start Up tomcat - Needs to have properties,logs dir and war file volume mapped.
docker run -d --name music-tomcat --network music-net -p "8080:8080" -v music-vol:/usr/local/tomcat/webapps -v ${WORK_DIR}/properties:/opt/app/music/etc:ro -v ${WORK_DIR}/logs:/opt/app/music/logs ${TOMCAT_IMG};
diff --git a/test/csit/tests/multicloud-vmware/hosts/sanity-host.robot b/test/csit/tests/multicloud-vmware/hosts/sanity-host.robot
new file mode 100644
index 000000000..e74a79973
--- /dev/null
+++ b/test/csit/tests/multicloud-vmware/hosts/sanity-host.robot
@@ -0,0 +1,24 @@
+*** settings ***
+Resource ../../common.robot
+Library Collections
+Library RequestsLibrary
+Library OperatingSystem
+Library json
+Library HttpLibrary.HTTP
+
+
+*** Variables ***
+@{return_ok_list}= 200 201 202
+
+
+*** Test Cases ***
+
+TestGetHost
+ [Documentation] Sanity Test - Get Host
+ ${headers} Create Dictionary Content-Type=application/json Accept=application/json
+ Create Session web_session http://${VIO_IP}:9004 headers=${headers}
+ ${resp}= Get Request web_session api/multicloud-vio/v0/vmware_fake/1234/hosts/1
+ ${response_code}= Convert To String ${resp.status_code}
+ List Should Contain Value ${return_ok_list} ${response_code}
+ ${response_json} json.loads ${resp.content}
+ #Log To Console ${response_json}
diff --git a/test/csit/tests/multicloud-vmware/images/sanity-image.robot b/test/csit/tests/multicloud-vmware/images/sanity-image.robot
new file mode 100644
index 000000000..390433d5c
--- /dev/null
+++ b/test/csit/tests/multicloud-vmware/images/sanity-image.robot
@@ -0,0 +1,24 @@
+*** settings ***
+Resource ../../common.robot
+Library Collections
+Library RequestsLibrary
+Library OperatingSystem
+Library json
+Library HttpLibrary.HTTP
+
+
+*** Variables ***
+@{return_ok_list}= 200 201 202
+
+
+*** Test Cases ***
+
+TestGetHost
+ [Documentation] Sanity Test - Get Image
+ ${headers} Create Dictionary Content-Type=application/json Accept=application/json
+ Create Session web_session http://${VIO_IP}:9004 headers=${headers}
+ ${resp}= Get Request web_session api/multicloud-vio/v0/vmware_fake/1234/images/1
+ ${response_code}= Convert To String ${resp.status_code}
+ List Should Contain Value ${return_ok_list} ${response_code}
+ ${response_json} json.loads ${resp.content}
+ #Log To Console ${response_json}
diff --git a/test/csit/tests/multicloud-vmware/networks/sanity-network.robot b/test/csit/tests/multicloud-vmware/networks/sanity-network.robot
new file mode 100644
index 000000000..5433f18cb
--- /dev/null
+++ b/test/csit/tests/multicloud-vmware/networks/sanity-network.robot
@@ -0,0 +1,24 @@
+*** settings ***
+Resource ../../common.robot
+Library Collections
+Library RequestsLibrary
+Library OperatingSystem
+Library json
+Library HttpLibrary.HTTP
+
+
+*** Variables ***
+@{return_ok_list}= 200 201 202
+
+
+*** Test Cases ***
+
+TestGetHost
+ [Documentation] Sanity Test - Get Network
+ ${headers} Create Dictionary Content-Type=application/json Accept=application/json
+ Create Session web_session http://${VIO_IP}:9004 headers=${headers}
+ ${resp}= Get Request web_session api/multicloud-vio/v0/vmware_fake/1234/networks/1
+ ${response_code}= Convert To String ${resp.status_code}
+ List Should Contain Value ${return_ok_list} ${response_code}
+ ${response_json} json.loads ${resp.content}
+ #Log To Console ${response_json}
diff --git a/test/csit/tests/multicloud-vmware/provision/jsoninput/image_file.json b/test/csit/tests/multicloud-vmware/provision/jsoninput/image_file.json
new file mode 100644
index 000000000..1e3cac6f5
--- /dev/null
+++ b/test/csit/tests/multicloud-vmware/provision/jsoninput/image_file.json
@@ -0,0 +1,7 @@
+{
+ "name": "cirros-0.3.2-x86_64-disk",
+ "container_format": "bare",
+ "disk_format": "qcow2",
+ "visibility": "public",
+ "schema": "/v2/schemas/image"
+} \ No newline at end of file
diff --git a/test/csit/tests/multicloud-vmware/provision/sanity_test_image.robot b/test/csit/tests/multicloud-vmware/provision/sanity_test_image.robot
index 0a6f2f5e8..e8e36dc14 100644
--- a/test/csit/tests/multicloud-vmware/provision/sanity_test_image.robot
+++ b/test/csit/tests/multicloud-vmware/provision/sanity_test_image.robot
@@ -13,10 +13,13 @@ Library HttpLibrary.HTTP
${get_token_url} /api/multicloud-vio/v0/vmware_fake/identity/v3/auth/tokens
${get_image_url} /api/multicloud-vio/v0/vmware_fake/glance/v2/images
${get_image_schema_url} /api/multicloud-vio/v0/vmware_fake/glance/v2/schemas/image
+${image_service} /api/multicloud-vio/v0/vmware_fake/glance/v2/image/file
+
#json files
${auth_info_json} ${SCRIPTS}/../tests/multicloud-vmware/provision/jsoninput/auth_info.json
+${image_file} ${SCRIPTS}/../tests/multicloud-vmware/provision/jsoninput/image_file.json
#global vars
${TOKEN}
@@ -42,7 +45,7 @@ GetAuthToken
-TestCaseShoeImageSchema
+TestCaseShowImageSchema
[Documentation] Sanity test - Show Image Schema
${headers} Create Dictionary Content-Type=application/json Accept=application/json X-Auth-Token=${TOKEN}
Create Session web_session http://${VIO_IP}:9004 headers=${headers}
@@ -76,3 +79,32 @@ TestCaseShowImage
List Should Contain Value ${return_ok_list} ${responese_code}
${response_json} json.loads ${resp.content}
Should Be Equal ${response_json['status']} active
+
+
+
+
+TestCaseUploadImage
+ [Documentation] Sanity test - Upload Image
+ ${json_value}= json_from_file ${image_file}
+ ${json_string}= string_from_json ${json_value}
+ ${headers} Create Dictionary Content-Type=application/json Accept=application/json X-Auth-Token=${TOKEN}
+ Create Session web_session http://${VIO_IP}:9004 headers=${headers}
+ ${resp}= POST Request web_session ${image_service} ${json_string}
+ ${responese_code}= Convert To String ${resp.status_code}
+ List Should Contain Value ${return_ok_list} ${responese_code}
+ ${response_json} json.loads ${resp.content}
+ ${IMAGEID}= Convert To String ${response_json['id']}
+ Set Global Variable ${IMAGEID}
+
+
+
+
+TestCaseDownloadImage
+ [Documentation] Sanity test - Download Image
+ ${headers} Create Dictionary Content-Type=application/json Accept=application/json X-Auth-Token=${TOKEN}
+ Create Session web_session http://${VIO_IP}:9004 headers=${headers}
+ ${resp}= Get Request web_session ${image_service}/${IMAGEID}
+ ${responese_code}= Convert To String ${resp.status_code}
+ List Should Contain Value ${return_ok_list} ${responese_code}
+ ${response_json} json.loads ${resp.content}
+ Should Be Equal ${response_json['status']} active \ No newline at end of file
diff --git a/test/csit/tests/multicloud-vmware/samples/sanity-sample.robot b/test/csit/tests/multicloud-vmware/samples/sanity-sample.robot
new file mode 100644
index 000000000..fcb784b27
--- /dev/null
+++ b/test/csit/tests/multicloud-vmware/samples/sanity-sample.robot
@@ -0,0 +1,25 @@
+*** settings ***
+Library Collections
+Library RequestsLibrary
+Library OperatingSystem
+Library json
+
+*** Variables ***
+@{return_ok_list}= 200 201 202
+${querysample_vio_url} /samples
+
+*** Test Cases ***
+VioSwaggerTest
+ [Documentation] query swagger info rest test
+ ${headers} Create Dictionary Content-Type=application/json X-TRANSACTIONID=123456 Accept=application/json
+ Create Session web_session http://${VIO_IP}:9004 headers=${headers}
+ ${resp}= Get Request web_session ${querysample_vio_url}
+ ${responese_code}= Convert To String ${resp.status_code}
+ List Should Contain Value ${return_ok_list} ${responese_code}
+ # verify logging output
+ ${response_json} json.loads ${resp.content}
+ ${logs}= Convert To String ${response_json['logs']}
+ Log To Console ${logs}
+ Should Contain ${logs} 123456
+ Should Contain ${logs} multicloud-vio
+ Should Contain ${logs} vio.samples.views \ No newline at end of file
diff --git a/test/csit/tests/multicloud/provision/data/capacity.json b/test/csit/tests/multicloud/provision/data/capacity.json
new file mode 100644
index 000000000..9b1130d08
--- /dev/null
+++ b/test/csit/tests/multicloud/provision/data/capacity.json
@@ -0,0 +1,6 @@
+{
+ "vCPU": 1,
+ "Memory": 1,
+ "Storage": 1,
+ "VIMs": ["vmware_fake"]
+} \ No newline at end of file
diff --git a/test/csit/tests/multicloud/provision/sanity_test_multivim.robot b/test/csit/tests/multicloud/provision/sanity_test_multivim.robot
index 2c1ec3f9f..4848b7459 100644
--- a/test/csit/tests/multicloud/provision/sanity_test_multivim.robot
+++ b/test/csit/tests/multicloud/provision/sanity_test_multivim.robot
@@ -1,4 +1,5 @@
*** settings ***
+Resource ../../common.robot
Library Collections
Library RequestsLibrary
Library OperatingSystem
@@ -7,6 +8,7 @@ Library json
*** Variables ***
@{return_ok_list}= 200 201 202
${queryswagger_broker_url} /api/multicloud/v0/swagger.json
+${check_capacity_broker_url} /api/multicloud/v0/check_vim_capacity
*** Test Cases ***
@@ -20,3 +22,12 @@ BrokerSwaggerTest
${response_json} json.loads ${resp.content}
${swagger_version}= Convert To String ${response_json['swagger']}
Should Be Equal ${swagger_version} 2.0
+
+BrokerCapacityTest
+ [Documentation] Check VIMs capacity
+ ${data}= Get Binary File ${CURDIR}${/}data${/}capacity.json
+ ${headers} Create Dictionary Content-Type=application/json Accept=application/json
+ Create Session web_session http://${BROKER_IP}:9001 headers=${headers}
+ ${resp}= Post Request web_session ${check_capacity_broker_url} ${data}
+ ${responese_code}= Convert To String ${resp.status_code}
+ List Should Contain Value ${return_ok_list} ${responese_code}
diff --git a/test/csit/tests/optf-has/has/data/plan_with_long_distance_constraint.json b/test/csit/tests/optf-has/has/data/plan_with_long_distance_constraint.json
deleted file mode 100644
index 3e6d26791..000000000
--- a/test/csit/tests/optf-has/has/data/plan_with_long_distance_constraint.json
+++ /dev/null
@@ -1,49 +0,0 @@
-{
- "name":"onap template with short distance constraint",
- "template":{
- "homing_template_version":"2017-10-10",
- "parameters":{
- "service_name":"Residential vCPE",
- "service_id":"vcpe_service_id",
- "customer_lat":25.395968,
- "customer_long":-51.135344,
- "physical_location":"DLLSTX233",
- "REQUIRED_MEM":4,
- "REQUIRED_DISK":100,
- "pnf_id":"some_pnf_id"
- },
- "locations":{
- "customer_loc":{
- "latitude":{
- "get_param":"customer_lat"
- },
- "longitude":{
- "get_param":"customer_long"
- }
- }
- },
- "demands":{
- "vG":[
- {
- "inventory_provider":"aai",
- "inventory_type":"cloud"
- }
- ]
- },
- "constraints":{
- "distance-vg":{
- "type":"distance_to_location",
- "demands":[
- "vG"
- ],
- "properties":{
- "distance":"< 1 km",
- "location":"customer_loc"
- }
- }
- },
- "optimization":{
-
- }
- }
-}
diff --git a/test/csit/tests/optf-has/has/data/plan_with_long_distance_constraint.json.service b/test/csit/tests/optf-has/has/data/plan_with_long_distance_constraint.json.service
deleted file mode 100644
index b0d6478fc..000000000
--- a/test/csit/tests/optf-has/has/data/plan_with_long_distance_constraint.json.service
+++ /dev/null
@@ -1,51 +0,0 @@
-{
- "name":"onap template with long distance constraint",
- "template":{
- "homing_template_version":"2017-10-10",
- "parameters":{
- "service_name":"Residential vCPE",
- "service_id":"vcpe_service_id",
- "customer_lat":45.395968,
- "customer_long":-71.135344,
- "physical_location":"DLLSTX233",
- "REQUIRED_MEM":4,
- "REQUIRED_DISK":100,
- "pnf_id":"some_pnf_id"
- },
- "locations":{
- "customer_loc":{
- "latitude":{
- "get_param":"customer_lat"
- },
- "longitude":{
- "get_param":"customer_long"
- }
- }
- },
- "demands":{
- "vG":[
- {
- "inventory_provider":"aai",
- "inventory_type":"service",
- "service_type": "VVIG",
- "customer_id": "21014aa2-526b-11e6-beb8-9e71128cae77"
- }
- ]
- },
- "constraints":{
- "distance-vg":{
- "type":"distance_to_location",
- "demands":[
- "vG"
- ],
- "properties":{
- "distance":"> 100 km",
- "location":"customer_loc"
- }
- }
- },
- "optimization":{
-
- }
- }
-}
diff --git a/test/csit/tests/optf-has/has/data/plan_with_short_distance_constraint.json b/test/csit/tests/optf-has/has/data/plan_with_short_distance_constraint.json
index 85a1a7387..68a7e119b 100644
--- a/test/csit/tests/optf-has/has/data/plan_with_short_distance_constraint.json
+++ b/test/csit/tests/optf-has/has/data/plan_with_short_distance_constraint.json
@@ -5,8 +5,8 @@
"parameters":{
"service_name":"Residential vCPE",
"service_id":"vcpe_service_id",
- "customer_lat":45.395968,
- "customer_long":-71.135344,
+ "customer_lat":25.395968,
+ "customer_long":-51.135344,
"physical_location":"DLLSTX233",
"REQUIRED_MEM":4,
"REQUIRED_DISK":100,
@@ -43,7 +43,22 @@
}
},
"optimization":{
-
+ "minimize": {
+ "sum": [
+ {
+ "distance_between": [
+ "customer_loc",
+ "vG"
+ ]
+ },
+ {
+ "distance_between": [
+ "customer_loc",
+ "vG"
+ ]
+ }
+ ]
+ }
}
}
}
diff --git a/test/csit/tests/optf-has/has/data/plan_with_long_distance_constraint.json.orig b/test/csit/tests/optf-has/has/data/plan_with_wrong_distance_constraint.json
index be410086c..9f25c2dff 100644
--- a/test/csit/tests/optf-has/has/data/plan_with_long_distance_constraint.json.orig
+++ b/test/csit/tests/optf-has/has/data/plan_with_wrong_distance_constraint.json
@@ -1,5 +1,5 @@
{
- "name":"onap template with long distance constraint",
+ "name":"onap template with wrong distance constraint",
"template":{
"homing_template_version":"2017-10-10",
"parameters":{
@@ -32,18 +32,32 @@
},
"constraints":{
"distance-vg":{
- "type":"distance_to_location",
"demands":[
"vG"
],
"properties":{
- "distance":"> 100 km",
+ "distance":"< 1 km",
"location":"customer_loc"
}
}
},
"optimization":{
-
+ "minimize": {
+ "sum": [
+ {
+ "distance_between": [
+ "customer_loc",
+ "vG"
+ ]
+ },
+ {
+ "distance_between": [
+ "customer_loc",
+ "vG"
+ ]
+ }
+ ]
+ }
}
}
}
diff --git a/test/csit/tests/optf-has/has/optf_has_test.robot b/test/csit/tests/optf-has/has/optf_has_test.robot
index d6de27632..62db10774 100644
--- a/test/csit/tests/optf-has/has/optf_has_test.robot
+++ b/test/csit/tests/optf-has/has/optf_has_test.robot
@@ -170,8 +170,6 @@ GetPlanWithWrongVersion
Should Be Equal As Integers ${resp.status_code} 200
Should Be Equal error ${resultStatus}
-
-
SendPlanWithoutDemandSection
[Documentation] It sends a POST request to conductor
Create Session optf-cond ${COND_HOSTNAME}:${COND_PORT}
@@ -203,6 +201,37 @@ GetPlanWithoutDemandSection
Should Be Equal As Integers ${resp.status_code} 200
Should Be Equal error ${resultStatus}
+SendPlanWithWrongConstraint
+ [Documentation] It sends a POST request to conductor
+ Create Session optf-cond ${COND_HOSTNAME}:${COND_PORT}
+ ${data}= Get Binary File ${CURDIR}${/}data${/}plan_with_wrong_distance_constraint.json
+ &{headers}= Create Dictionary Content-Type=application/json Accept=application/json
+ ${resp}= Post Request optf-cond /v1/plans data=${data} headers=${headers}
+ Log To Console *********************
+ Log To Console response = ${resp}
+ Log To Console body = ${resp.text}
+ ${response_json} json.loads ${resp.content}
+ ${generatedPlanId}= Convert To String ${response_json['id']}
+ Set Global Variable ${generatedPlanId}
+ Log To Console generatedPlanId = ${generatedPlanId}
+ Should Be Equal As Integers ${resp.status_code} 201
+ Sleep 10s Wait Plan Resolution
+
+GetPlanWithWrongConstraint
+ [Documentation] It sends a REST GET request to capture error
+ Create Session optf-cond ${COND_HOSTNAME}:${COND_PORT}
+ &{headers}= Create Dictionary Content-Type=application/json Accept=application/json
+ ${resp}= Get Request optf-cond /v1/plans/${generatedPlanId} headers=${headers}
+ Log To Console *********************
+ Log To Console response = ${resp}
+ ${response_json} json.loads ${resp.content}
+ ${resultStatus}= Convert To String ${response_json['plans'][0]['status']}
+ Set Global Variable ${resultStatus}
+ Log To Console resultStatus = ${resultStatus}
+ Log To Console body = ${resp.text}
+ Should Be Equal As Integers ${resp.status_code} 200
+ Should Be Equal error ${resultStatus}
+
SendPlanWithLatiAndLongi
[Documentation] It sends a POST request to conductor
@@ -235,6 +264,38 @@ GetPlanWithLatiAndLongi
Should Be Equal As Integers ${resp.status_code} 200
Should Be Equal done ${resultStatus}
+SendPlanWithShortDistanceConstraint
+ [Documentation] It sends a POST request to conductor
+ Create Session optf-cond ${COND_HOSTNAME}:${COND_PORT}
+ ${data}= Get Binary File ${CURDIR}${/}data${/}plan_with_short_distance_constraint.json
+ &{headers}= Create Dictionary Content-Type=application/json Accept=application/json
+ ${resp}= Post Request optf-cond /v1/plans data=${data} headers=${headers}
+ Log To Console *********************
+ Log To Console response = ${resp}
+ Log To Console body = ${resp.text}
+ ${response_json} json.loads ${resp.content}
+ ${generatedPlanId}= Convert To String ${response_json['id']}
+ Set Global Variable ${generatedPlanId}
+ Log To Console generatedPlanId = ${generatedPlanId}
+ Should Be Equal As Integers ${resp.status_code} 201
+ Sleep 60s Wait Plan Resolution
+
+GetPlanWithShortDistanceConstraint
+ [Documentation] It sends a REST GET request to capture recommendations
+ Create Session optf-cond ${COND_HOSTNAME}:${COND_PORT}
+ &{headers}= Create Dictionary Content-Type=application/json Accept=application/json
+ ${resp}= Get Request optf-cond /v1/plans/${generatedPlanId} headers=${headers}
+ Log To Console *********************
+ Log To Console response = ${resp}
+ ${response_json} json.loads ${resp.content}
+ ${resultStatus}= Convert To String ${response_json['plans'][0]['status']}
+ Set Global Variable ${resultStatus}
+ Log To Console resultStatus = ${resultStatus}
+ Log To Console body = ${resp.text}
+ Should Be Equal As Integers ${resp.status_code} 200
+ Should Be Equal not found ${resultStatus}
+
+
*** Keywords ***
diff --git a/test/csit/tests/vfc/nfvo-multivimproxy/test.robot b/test/csit/tests/vfc/nfvo-multivimproxy/test.robot
new file mode 100644
index 000000000..5945da1e3
--- /dev/null
+++ b/test/csit/tests/vfc/nfvo-multivimproxy/test.robot
@@ -0,0 +1,24 @@
+*** settings ***
+Resource ../../common.robot
+Library Collections
+Library RequestsLibrary
+Library simplejson
+Library OperatingSystem
+Library json
+Library HttpLibrary.HTTP
+
+*** Variables ***
+@{return_ok_list}= 200 201 202
+${queryswagger_url} /api/multivimproxy/v1/swagger.json
+
+*** Test Cases ***
+SwaggerFuncTest
+ [Documentation] query swagger info rest test
+ ${headers} Create Dictionary Content-Type=application/json Accept=application/json
+ Create Session web_session http://${RESMGR_IP}:8486 headers=${headers}
+ ${resp}= Get Request web_session ${queryswagger_url}
+ ${responese_code}= Convert To String ${resp.status_code}
+ List Should Contain Value ${return_ok_list} ${responese_code}
+ ${response_json} json.loads ${resp.content}
+ ${swagger_version}= Convert To String ${response_json['swagger']}
+ Should Be Equal ${swagger_version} 2.0 \ No newline at end of file