aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorVictor Morales <victor.morales@intel.com>2018-03-13 12:26:08 -0700
committerVictor Morales <victor.morales@intel.com>2018-03-13 12:26:08 -0700
commit4d7590ed7425a94c0f87a8461548c2461d79a710 (patch)
tree083ffc33a4cd6d8eff42deeea1da0b50c49efdfe /tests
parentceb22354fcb078e8991a66dc9bc11dd5f21e77f4 (diff)
Migrate vagrant-onap to devtool repo
This change covers the migration of the vagrant-onap tool's code which was located under integration repo to devtool's repository. The tool was renamed to avoid misunderstandings about its goals. Change-Id: I79df8c35fccaa266a789217d441a6cf1183bd42a Signed-off-by: Victor Morales <victor.morales@intel.com> Issue-ID: INT-441
Diffstat (limited to 'tests')
-rwxr-xr-xtests/_test_base33
-rwxr-xr-xtests/asserts94
-rw-r--r--tests/projects.txt209
-rwxr-xr-xtests/test_aai100
-rwxr-xr-xtests/test_appc95
-rwxr-xr-xtests/test_ccsdk90
-rwxr-xr-xtests/test_dcae111
-rwxr-xr-xtests/test_functions191
-rwxr-xr-xtests/test_mr38
-rwxr-xr-xtests/test_msb61
-rwxr-xr-xtests/test_mso67
-rwxr-xr-xtests/test_multicloud54
-rwxr-xr-xtests/test_policy100
-rwxr-xr-xtests/test_portal59
-rwxr-xr-xtests/test_robot48
-rwxr-xr-xtests/test_sdc69
-rwxr-xr-xtests/test_sdnc69
-rwxr-xr-xtests/test_vfc68
-rwxr-xr-xtests/test_vid51
-rwxr-xr-xtests/test_vnfsdk57
-rwxr-xr-xtests/test_vvp55
21 files changed, 1719 insertions, 0 deletions
diff --git a/tests/_test_base b/tests/_test_base
new file mode 100755
index 0000000..b30632d
--- /dev/null
+++ b/tests/_test_base
@@ -0,0 +1,33 @@
+#!/bin/bash
+
+if [[ "$debug" == "True" ]]; then
+ set -o xtrace
+fi
+
+source /var/onap_tests/asserts
+source /var/onap/commons
+
+# main() - Starting point for Unit Tests
+function main {
+ local covered_functions=("$@")
+
+ update_repos
+ len=${#covered_functions[@]}
+ echo "1..$len"
+ for i in ${!covered_functions[@]}; do
+ dpkg --get-selections > installed-software
+ sort -o installed-software installed-software
+ test_${covered_functions[$i]}
+ echo "ok $((i+1)) - test_${covered_functions[$i]}"
+
+ # Teardown process
+ if is_package_installed docker-ce; then
+ docker images -q | xargs docker rmi -f
+ fi
+ dpkg --get-selections > installed-software_new
+ sort -o installed-software_new installed-software_new
+ apt-get purge -y -qq $(comm -3 installed-software installed-software_new | awk '{print $1}')
+ #rm -rf $git_src_folder
+ #rm -rf ~/.m2/
+ done
+}
diff --git a/tests/asserts b/tests/asserts
new file mode 100755
index 0000000..441b9f0
--- /dev/null
+++ b/tests/asserts
@@ -0,0 +1,94 @@
+#!/bin/bash
+
+source /var/onap/commons
+
+# asserts_http_status_code() - Function that determines if a HTTP status code is retrieved from URL
+function asserts_http_status_code {
+ local url=$1
+ local expected_code=${2:-"200"}
+
+ code=$(curl -I $url | head -n 1 | cut -d$' ' -f2)
+ local error_msg=${3:-"The URL $url responded with $code status code"}
+ if [[ "$code" != "$expected_code" ]]; then
+ raise_error $error_msg
+ fi
+}
+
+# asserts_process() - Function that verifies if a specific process is running
+function asserts_process {
+ local process=$1
+ local error_msg=${2:-"There is no $process running process"}
+
+ if [[ "ps -ef | grep $process" == "" ]]; then
+ raise_error $error_msg
+ fi
+}
+
+# asserts_java_process() - Function that verifies if a specific java process is running
+function asserts_java_process {
+ local process=$1
+ local error_msg=${2:-"There is no $process java running process"}
+
+ install_java
+ if [[ "jps | grep $process" == "" ]]; then
+ raise_error $error_msg
+ fi
+}
+
+# asserts_image_running() - Function that verifies if a specific image is running
+function asserts_image_running {
+ local image=$1
+ local error_msg=${2:-"There is no process with $image image running"}
+
+ asserts_image $image
+ if [[ "$(docker ps -q --filter=ancestor=$image 2> /dev/null)" == "" ]]; then
+ raise_error $error_msg
+ fi
+}
+
+# asserts_image() - Function that verifies if a specific image was created
+function asserts_image {
+ local image=$1
+ local error_msg=${2:-"There is no $image image"}
+
+ install_docker
+ if [[ "$(docker images -q $image 2> /dev/null)" == "" ]]; then
+ raise_error $error_msg
+ fi
+}
+
+# asserts_installed_package() - Function that verifies if a specific package was installed.
+function asserts_installed_package {
+ local package=$1
+ local error_msg=${2:-"$package wasn't installed"}
+
+ if ! is_package_installed $package; then
+ raise_error $error_msg
+ fi
+}
+
+# asserts_file_exist() - Function that verifies if a specific file exists
+function asserts_file_exist {
+ local file=$1
+ local error_msg=${2:-"$file doesn't exist"}
+
+ if [ ! -f $file ]; then
+ raise_error $error_msg
+ fi
+}
+
+# asserts_env_set() - Function that verities that an environment variable is set
+function asserts_env_set {
+ local variable=$1
+ local error_msg=${2:-"$variable wasn't set"}
+
+ if [ -z ${variable+x} ]; then
+ raise_error $error_msg
+ fi
+}
+
+# raise_error() - Function that prints and exits the execution
+function raise_error {
+ echo $@
+ exit 1
+}
diff --git a/tests/projects.txt b/tests/projects.txt
new file mode 100644
index 0000000..0aba508
--- /dev/null
+++ b/tests/projects.txt
@@ -0,0 +1,209 @@
+aaf/authz
+aaf/cadi
+aaf/inno
+aaf/luaplugin
+aai/aai-common
+aai/aai-config
+aai/aai-data
+aai/aai-service
+aai/babel
+aai/champ
+aai/data-router
+aai/esr-gui
+aai/esr-server
+aai/gizmo
+aai/logging-service
+aai/model-loader
+aai/resources
+aai/rest-client
+aai/router-core
+aai/search-data-service
+aai/sparky-be
+aai/sparky-fe
+aai/test-config
+aai/traversal
+appc
+appc/deployment
+ccsdk/dashboard
+ccsdk/distribution
+ccsdk/parent
+ccsdk/platform/blueprints
+ccsdk/platform/nbapi
+ccsdk/platform/plugins
+ccsdk/sli/adaptors
+ccsdk/sli/core
+ccsdk/sli/northbound
+ccsdk/sli/plugins
+ccsdk/storage/esaas
+ccsdk/storage/pgaas
+ccsdk/utils
+ci-management
+clamp
+cli
+dcae
+dcae/apod
+dcae/apod/analytics
+dcae/apod/buildtools
+dcae/apod/cdap
+dcae/collectors
+dcae/collectors/ves
+dcae/controller
+dcae/controller/analytics
+dcae/dcae-inventory
+dcae/demo
+dcae/demo/startup
+dcae/demo/startup/aaf
+dcae/demo/startup/controller
+dcae/demo/startup/message-router
+dcae/dmaapbc
+dcae/operation
+dcae/operation/utils
+dcae/orch-dispatcher
+dcae/pgaas
+dcae/utils
+dcae/utils/buildtools
+dcaegen2
+dcaegen2/analytics
+dcaegen2/analytics/tca
+dcaegen2/collectors
+dcaegen2/collectors/snmptrap
+dcaegen2/collectors/ves
+dcaegen2/deployments
+dcaegen2/platform
+dcaegen2/platform/blueprints
+dcaegen2/platform/cdapbroker
+dcaegen2/platform/cli
+dcaegen2/platform/configbinding
+dcaegen2/platform/deployment-handler
+dcaegen2/platform/inventory-api
+dcaegen2/platform/plugins
+dcaegen2/platform/policy-handler
+dcaegen2/platform/registrator
+dcaegen2/platform/servicechange-handler
+dcaegen2/utils
+demo
+dmaap/buscontroller
+dmaap/datarouter
+dmaap/dbcapi
+dmaap/messagerouter/dmaapclient
+dmaap/messagerouter/messageservice
+dmaap/messagerouter/mirroragent
+dmaap/messagerouter/msgrtr
+doc
+doc/tools
+ecompsdkos
+externalapi/nbi
+holmes/common
+holmes/dsa
+holmes/engine-management
+holmes/rule-management
+integration
+logging-analytics
+modeling/modelspec
+modeling/toscaparsers
+msb/apigateway
+msb/discovery
+msb/java-sdk
+msb/swagger-sdk
+mso
+mso/chef-repo
+mso/docker-config
+mso/libs
+mso/mso-config
+multicloud/azure
+multicloud/framework
+multicloud/openstack
+multicloud/openstack/vmware
+multicloud/openstack/windriver
+ncomp
+ncomp/cdap
+ncomp/core
+ncomp/docker
+ncomp/maven
+ncomp/openstack
+ncomp/sirius
+ncomp/sirius/manager
+ncomp/utils
+oom
+oom/registrator
+oparent
+optf/cmso
+optf/has
+optf/osdf
+policy/api
+policy/common
+policy/docker
+policy/drools-applications
+policy/drools-pdp
+policy/engine
+policy/gui
+policy/pap
+policy/pdp
+portal
+portal/sdk
+sdc
+sdc/jtosca
+sdc/sdc-distribution-client
+sdc/sdc-docker-base
+sdc/sdc-titan-cassandra
+sdc/sdc-tosca
+sdc/sdc-workflow-designer
+sdnc/adaptors
+sdnc/architecture
+sdnc/core
+sdnc/features
+sdnc/northbound
+sdnc/oam
+sdnc/parent
+sdnc/plugins
+so
+so/chef-repo
+so/docker-config
+so/libs
+so/so-config
+testsuite
+testsuite/heatbridge
+testsuite/properties
+testsuite/python-testing-utils
+ui
+ui/dmaapbc
+university
+usecase-ui
+usecase-ui/server
+vfc/gvnfm/vnflcm
+vfc/gvnfm/vnfmgr
+vfc/gvnfm/vnfres
+vfc/nfvo/catalog
+vfc/nfvo/driver/ems
+vfc/nfvo/driver/sfc
+vfc/nfvo/driver/vnfm/gvnfm
+vfc/nfvo/driver/vnfm/svnfm
+vfc/nfvo/lcm
+vfc/nfvo/resmanagement
+vfc/nfvo/wfengine
+vid
+vid/asdcclient
+vnfrqts/epics
+vnfrqts/guidelines
+vnfrqts/requirements
+vnfrqts/testcases
+vnfrqts/usecases
+vnfsdk/compliance
+vnfsdk/functest
+vnfsdk/lctest
+vnfsdk/model
+vnfsdk/pkgtools
+vnfsdk/refrepo
+vnfsdk/validation
+vvp/ansible-ice-bootstrap
+vvp/cms
+vvp/devkit
+vvp/documentation
+vvp/engagementmgr
+vvp/gitlab
+vvp/image-scanner
+vvp/jenkins
+vvp/portal
+vvp/postgresql
+vvp/test-engine
+vvp/validation-scripts
diff --git a/tests/test_aai b/tests/test_aai
new file mode 100755
index 0000000..dd027d2
--- /dev/null
+++ b/tests/test_aai
@@ -0,0 +1,100 @@
+#!/bin/bash
+
+source /var/onap_tests/_test_base
+source /var/onap/aai
+
+covered_functions=(
+#"install_hadoop" "install_haproxy" "clone_all_aai_repos" "compile_aai_repos" "setup_titan" "start_aai_microservices" "install_hbase" "install_ajsc_aai" "install_model_loader"
+"install_hadoop" "install_haproxy" "clone_all_aai_repos" "compile_aai_repos" "setup_titan" "install_hbase"
+)
+
+# test_install_hadoop() - Verify that Hadoop is downloaded and started properly
+function test_install_hadoop {
+ install_hadoop
+
+ asserts_file_exist /opt/hadoop/current/titan-1.0.0-hadoop1/bin/titan.sh
+ asserts_java_process Elasticsearch
+ asserts_java_process GremlinServer
+ asserts_java_process CassandraDaemon
+}
+
+# test_install_haproxy() - Verify that HAProxy is installed properly
+function test_install_haproxy {
+ install_haproxy
+
+ asserts_installed_package haproxy
+ asserts_process haproxy
+}
+
+# test_clone_all_aai_repos() - Verify that all the AAI Repos are cloned
+function test_clone_all_aai_repos {
+ clone_repos "aai"
+
+ asserts_file_exist ${src_folders[aai]}/aai-common/pom.xml
+ asserts_file_exist ${src_folders[aai]}/aai-config/cookbooks/aai-resources/runlist-aai-resources.json
+ asserts_file_exist ${src_folders[aai]}/aai-data/environments/solo.json
+ asserts_file_exist ${src_folders[aai]}/aai-service/pom.xml
+ asserts_file_exist ${src_folders[aai]}/babel/README.md
+ asserts_file_exist ${src_folders[aai]}/champ/pom.xml
+ asserts_file_exist ${src_folders[aai]}/data-router/pom.xml
+ asserts_file_exist ${src_folders[aai]}/esr-gui/pom.xml
+ asserts_file_exist ${src_folders[aai]}/esr-server/pom.xml
+ asserts_file_exist ${src_folders[aai]}/gizmo/pom.xml
+ asserts_file_exist ${src_folders[aai]}/logging-service/pom.xml
+ asserts_file_exist ${src_folders[aai]}/model-loader/pom.xml
+ asserts_file_exist ${src_folders[aai]}/resources/pom.xml
+ asserts_file_exist ${src_folders[aai]}/rest-client/pom.xml
+ asserts_file_exist ${src_folders[aai]}/router-core/pom.xml
+ asserts_file_exist ${src_folders[aai]}/search-data-service/pom.xml
+ asserts_file_exist ${src_folders[aai]}/sparky-be/pom.xml
+ asserts_file_exist ${src_folders[aai]}/sparky-fe/pom.xml
+ asserts_file_exist ${src_folders[aai]}/test-config/docker-compose-app.yml
+ asserts_file_exist ${src_folders[aai]}/traversal/pom.xml
+}
+
+# test_compile_aai_repos() - Verify that all the AAI Repositories complile properly
+function test_compile_aai_repos {
+ clone_repos "aai"
+ compile_aai_repos
+
+ for common in annotations auth core schema utils; do
+ asserts_file_exist ${src_folders[aai]}/aai-common/aai-$common/target/aai-$common-1.1.0-SNAPSHOT.jar
+ done
+
+ for service in common-logging eelf-logging logging-api; do
+ asserts_file_exist ${src_folders[aai]}/logging-service/$service/target/$service-1.1.0-SNAPSHOT.jar
+ done
+
+ asserts_file_exist ${src_folders[aai]}/resources/aai-resources/target/aai-resources.jar
+ asserts_file_exist ${src_folders[aai]}/traversal/aai-traversal/target/traversal.jar
+}
+
+# test_setup_titan() - Verify that Titan Cassandra DB is up and running
+function test_setup_titan {
+ clone_repos "aai"
+ install_hadoop
+ setup_titan
+
+ # TODO(electrocucaracha): Validate the DB creation
+}
+
+# test_start_aai_microservices() - Verify that AAI Resources and Traversal images works
+function test_start_aai_microservices {
+ clone_repos "aai"
+ start_aai_microservices
+
+ # TODO(electrocucaracha): Investigate how to run AAI microservices in background
+}
+
+# test_install_hbase() - Verify that AAI HBase service is up and running properly
+function test_install_hbase {
+ install_hbase
+
+ asserts_image_running aai-hbase-${hbase_version}
+}
+
+if [ "$1" != '*' ]; then
+ unset covered_functions
+ covered_functions=$1
+fi
+main "${covered_functions[@]}"
diff --git a/tests/test_appc b/tests/test_appc
new file mode 100755
index 0000000..f567d7f
--- /dev/null
+++ b/tests/test_appc
@@ -0,0 +1,95 @@
+#!/bin/bash
+
+source /var/onap_tests/_test_base
+source /var/onap/appc
+
+covered_functions=(
+"clone_all_appc_repos" "compile_all_appc_repos" "get_appc_images" "install_appc"
+)
+
+# test_clone_all_appc_repos() - Verify that the APPC source code is cloned
+function test_clone_all_appc_repos {
+ clone_repos "appc"
+
+ asserts_file_exist ${src_folders[appc]}/pom.xml
+ asserts_file_exist ${src_folders[appc]}/deployment/pom.xml
+}
+
+# test_compile_all_appc_repos() - Verify that the APPC source code is compiled properly
+function test_compile_all_appc_repos {
+ clone_repos "appc"
+ compile_repos "appc"
+
+ for adapter in appc-ansible-adapter appc-chef-adapter appc-dmaap-adapter appc-iaas-adapter appc-netconf-adapter appc-rest-adapter appc-rest-healthcheck-adapter; do
+ asserts_file_exist ${src_folders[appc]}/appc-adapters/$adapter/$adapter-bundle/target/$adapter-bundle-*-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[appc]}/appc-adapters/$adapter/$adapter-features/target/$adapter-features-*-SNAPSHOT.jar
+ if [[ "$adapter" == "appc-netconf-adapter" ]]; then
+ asserts_file_exist ${src_folders[appc]}/appc-adapters/$adapter/appc-netconf-installer/target/$adapter-*-SNAPSHOT.zip
+ else
+ asserts_file_exist ${src_folders[appc]}/appc-adapters/$adapter/$adapter-installer/target/$adapter-*-SNAPSHOT.zip
+ fi
+ done
+ asserts_file_exist ${src_folders[appc]}/appc-adapters/appc-dmaap-adapter/appc-message-adapter-api/target/appc-message-adapter-api-*-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[appc]}/appc-adapters/appc-dmaap-adapter/appc-message-adapter-factory/target/appc-message-adapter-factory-*-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[appc]}/appc-adapters/appc-ssh-adapter/appc-ssh-adapter-api/target/appc-ssh-adapter-api-*-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[appc]}/appc-adapters/appc-ssh-adapter/appc-ssh-adapter-features/target/appc-ssh-adapter-features-*-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[appc]}/appc-adapters/appc-ssh-adapter/appc-ssh-adapter-sshd/target/appc-ssh-adapter-sshd-*-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[appc]}/appc-adapters/appc-ssh-adapter/appc-ssh-adapter-tests/target/appc-ssh-adapter-tests-*-SNAPSHOT.jar
+
+ #for component in appc-event-listener appc-oam appc-provider; do
+ for component in appc-event-listener appc-provider; do
+ asserts_file_exist ${src_folders[appc]}/$component/$component-bundle/target/$component-bundle-*-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[appc]}/$component/$component-features/target/$component-features-*-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[appc]}/$component/$component-installer/target/$component-*-SNAPSHOT.zip
+ done
+ #for component in appc-oam appc-provider; do
+ for component in appc-provider; do
+ asserts_file_exist ${src_folders[appc]}/$component/$component-model/target/$component-model-*-SNAPSHOT.jar
+ done
+
+ asserts_file_exist ${src_folders[appc]}/appc-common/target/appc-common-*-SNAPSHOT.jar
+
+ asserts_file_exist ${src_folders[appc]}/appc-dg/appc-dg-shared/appc-dg-dependency-model/target/appc-dg-dependency-model-*-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[appc]}/appc-dg/appc-dg-shared/appc-dg-domain-model-lib/target/appc-dg-domain-model-lib-*-SNAPSHOT.jar
+
+ asserts_file_exist ${src_folders[appc]}/appc-dispatcher/appc-command-executor/appc-command-executor-api/target/appc-command-executor-api-*-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[appc]}/appc-dispatcher/appc-dispatcher-common/appc-data-access-lib/target/appc-data-access-lib-*-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[appc]}/appc-dispatcher/appc-dispatcher-common/domain-model-lib/target/domain-model-lib-*-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[appc]}/appc-dispatcher/appc-dispatcher-common/execution-queue-management-lib/target/execution-queue-management-lib-*-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[appc]}/appc-dispatcher/appc-license-manager/appc-license-manager-api/target/appc-license-manager-api-*-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[appc]}/appc-dispatcher/appc-request-handler/appc-request-handler-api/target/appc-request-handler-api-*-SNAPSHOT.jar
+
+
+ #asserts_file_exist ${src_folders[appc]}/appc-lifecycle-management/appc-lifecycle-management-api/target/appc-lifecycle-management-api-*-SNAPSHOT.jar
+ #asserts_file_exist ${src_folders[appc]}/appc-lifecycle-management/appc-lifecycle-management-core/target/appc-lifecycle-management-core-*-SNAPSHOT.jar
+ #asserts_file_exist ${src_folders[appc]}/appc-lifecycle-management/appc-lifecycle-management-features/target/appc-lifecycle-management-features-*-SNAPSHOT.jar
+ #asserts_file_exist ${src_folders[appc]}/appc-lifecycle-management/appc-lifecycle-management-installer/target/appc-lifecycle-management-*-SNAPSHOT.zip
+ #asserts_file_exist ${src_folders[appc]}/appc-lifecycle-management/state-machine-lib/target/state-machine-lib-*-SNAPSHOT.jar
+
+ asserts_file_exist ${src_folders[appc]}/appc-metric/appc-metric-bundle/target/appc-metric-bundle-*-SNAPSHOT.jar
+
+ asserts_file_exist ${src_folders[appc]}/deployment/platform-logic/installer/target/platform-logic-installer-*-SNAPSHOT.zip
+}
+
+# test_get_appc_images() - Verify that APPC Docker images can be retrieved
+function test_get_appc_images {
+ clone_repos "appc"
+ get_appc_images
+
+ asserts_image openecomp/appc-image
+}
+
+# test_install_appc() - Verify that the APPC Docker images are up and running
+function test_install_appc {
+ clone_repos "appc"
+ get_appc_images
+ install_appc
+
+ asserts_image_running openecomp/appc-image
+}
+
+if [ "$1" != '*' ]; then
+ unset covered_functions
+ covered_functions=$1
+fi
+main "${covered_functions[@]}"
diff --git a/tests/test_ccsdk b/tests/test_ccsdk
new file mode 100755
index 0000000..28de270
--- /dev/null
+++ b/tests/test_ccsdk
@@ -0,0 +1,90 @@
+#!/bin/bash
+
+source /var/onap_tests/_test_base
+source /var/onap/ccsdk
+
+covered_functions=(
+"clone_ccsdk_repos" "compile_ccsdk_repos" "get_ccsdk_images"
+)
+
+# test_clone_ccsdk_repos() - Verify that CCSDL repositories are retrieved properly
+function test_clone_ccsdk_repos {
+ clone_repos "ccsdk"
+
+ asserts_file_exist ${src_folders[ccsdk]}/dashboard/pom.xml
+ asserts_file_exist ${src_folders[ccsdk]}/distribution/pom.xml
+ asserts_file_exist ${src_folders[ccsdk]}/parent/pom.xml
+ asserts_file_exist ${src_folders[ccsdk]}/platform/blueprints/pom.xml
+ asserts_file_exist ${src_folders[ccsdk]}/platform/nbapi/pom.xml
+ asserts_file_exist ${src_folders[ccsdk]}/platform/plugins/pom.xml
+ asserts_file_exist ${src_folders[ccsdk]}/sli/adaptors/pom.xml
+ asserts_file_exist ${src_folders[ccsdk]}/sli/core/pom.xml
+ asserts_file_exist ${src_folders[ccsdk]}/sli/northbound/pom.xml
+ asserts_file_exist ${src_folders[ccsdk]}/sli/plugins/pom.xml
+ asserts_file_exist ${src_folders[ccsdk]}/storage/esaas/pom.xml
+ asserts_file_exist ${src_folders[ccsdk]}/storage/pgaas/pom.xml
+ asserts_file_exist ${src_folders[ccsdk]}/utils/pom.xml
+}
+
+# test_compile_ccsdk_repos() - Verify the compilation of CCSDK repositories
+function test_compile_ccsdk_repos {
+ clone_repos "ccsdk"
+ compile_repos "ccsdk"
+
+ asserts_file_exist ${src_folders[ccsdk]}/dashboard/ccsdk-app-common/target/ccsdk-app-common-1.1.0-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[ccsdk]}/dashboard/ccsdk-app-os/target/ccsdk-app-os-1.1.0-SNAPSHOT.war
+ asserts_file_exist ${src_folders[ccsdk]}/dashboard/ccsdk-app-overlay/target/ccsdk-app-overlay-1.1.0-SNAPSHOT.war
+ asserts_file_exist ${src_folders[ccsdk]}/distribution/dgbuilder/target/dgbuilder.0.1.0-SNAPSHOT.zip
+ asserts_file_exist ${src_folders[ccsdk]}/distribution/platform-logic/installer/target/platform-logic-installer-0.1.0-SNAPSHOT.zip
+ asserts_file_exist ${src_folders[ccsdk]}/platform/nbapi/target/commonnbapi-*.war
+
+ #for adaptor in aai-service mdsal-resource resource-assignment sql-resource; do
+ #for component in features provider; do
+ #asserts_file_exist ${src_folders[ccsdk]}/sli/adaptors/$adaptor/$component/target/$adaptor-$component-0.1.0-SNAPSHOT.jar
+ #done
+ #asserts_file_exist ${src_folders[ccsdk]}/sli/adaptors/$adaptor/installer/target/sdnc-$adaptor-0.1.0-SNAPSHOT-installer.zip
+ #done
+
+ #for core in dblib filters sli sliapi sliPluginUtils; do
+ for core in dblib; do
+ for component in features provider; do
+ asserts_file_exist ${src_folders[ccsdk]}/sli/core/$core/$component/target/$core-$component-*-SNAPSHOT.jar
+ done
+ asserts_file_exist ${src_folders[ccsdk]}/sli/core/$core/installer/target/sdnc-$core-*-SNAPSHOT-installer.zip
+ done
+ #asserts_file_exist ${src_folders[ccsdk]}/sli/core/sli/common/target/sli-common-*-SNAPSHOT.jar
+ #asserts_file_exist ${src_folders[ccsdk]}/sli/core/sli/recording/target/sli-recording-*-SNAPSHOT.jar
+ #asserts_file_exist ${src_folders[ccsdk]}/sli/core/sliapi/model/target/sliapi-model-*-SNAPSHOT.jar
+
+ for northbound in asdcApi dataChange; do
+ for component in features model provider; do
+ asserts_file_exist ${src_folders[ccsdk]}/sli/northbound/$northbound/$component/target/$northbound-$component-*-SNAPSHOT.jar
+ done
+ asserts_file_exist ${src_folders[ccsdk]}/sli/northbound/$northbound/installer/target/sdnc-$northbound-*-SNAPSHOT-installer.zip
+ done
+ asserts_file_exist ${src_folders[ccsdk]}/sli/northbound/dmaap-listener/target/dmaap-listener-*-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[ccsdk]}/sli/northbound/ueb-listener/target/ueb-listener-*-SNAPSHOT.jar
+
+ for plugin in properties-node restapi-call-node; do
+ for component in features provider; do
+ asserts_file_exist ${src_folders[ccsdk]}/sli/plugins/$plugin/$component/target/$plugin-$component-*-SNAPSHOT.jar
+ done
+ asserts_file_exist ${src_folders[ccsdk]}/sli/plugins/$plugin/installer/target/sdnc-$plugin-*-SNAPSHOT-installer.zip
+ done
+}
+
+# test_get_ccsdk_images() - Verify that CCSDK images are retrieved or built properly
+function test_get_ccsdk_images {
+ clone_repos "ccsdk"
+ get_ccsdk_images
+
+ for image in dgbuilder odlsli odl ubuntu; do
+ asserts_image onap/ccsdk-$image-image
+ done
+}
+
+if [ "$1" != '*' ]; then
+ unset covered_functions
+ covered_functions=$1
+fi
+main "${covered_functions[@]}"
diff --git a/tests/test_dcae b/tests/test_dcae
new file mode 100755
index 0000000..3c5400f
--- /dev/null
+++ b/tests/test_dcae
@@ -0,0 +1,111 @@
+#!/bin/bash
+
+source /var/onap_tests/_test_base
+source /var/onap/dcae
+
+covered_functions=(
+"clone_all_dcae_repos" "compile_all_dcae_repos" "get_dcae_images" "install_dcae"
+)
+
+# test_clone_all_dcae_repos() - Verifies that can retrieve DCAE repositories properly
+function test_clone_all_dcae_repos {
+ clone_repos "dcae"
+
+ asserts_file_exist ${src_folders[dcae]}/apod/README.md
+ asserts_file_exist ${src_folders[dcae]}/apod/analytics/pom.xml
+ asserts_file_exist ${src_folders[dcae]}/apod/buildtools/LICENSE.txt
+ asserts_file_exist ${src_folders[dcae]}/apod/cdap/LICENSE.txt
+ asserts_file_exist ${src_folders[dcae]}/collectors/README.md
+ asserts_file_exist ${src_folders[dcae]}/collectors/ves/pom.xml
+ asserts_file_exist ${src_folders[dcae]}/controller/pom.xml
+ asserts_file_exist ${src_folders[dcae]}/controller/analytics/pom.xml
+ asserts_file_exist ${src_folders[dcae]}/dcae-inventory/pom.xml
+ asserts_file_exist ${src_folders[dcae]}/demo/pom.xml
+ asserts_file_exist ${src_folders[dcae]}/demo/startup/README.md
+ asserts_file_exist ${src_folders[dcae]}/demo/startup/aaf/LICENSE.txt
+ asserts_file_exist ${src_folders[dcae]}/demo/startup/controller/LICENSE.txt
+ asserts_file_exist ${src_folders[dcae]}/demo/startup/message-router/LICENSE.txt
+ asserts_file_exist ${src_folders[dcae]}/dmaapbc/pom.xml
+ asserts_file_exist ${src_folders[dcae]}/operation/README.md
+ asserts_file_exist ${src_folders[dcae]}/operation/utils/pom.xml
+ asserts_file_exist ${src_folders[dcae]}/orch-dispatcher/LICENSE.txt
+ asserts_file_exist ${src_folders[dcae]}/pgaas/LICENSE.txt
+ asserts_file_exist ${src_folders[dcae]}/utils/README.md
+ asserts_file_exist ${src_folders[dcae]}/utils/buildtools/LICENSE.txt
+}
+
+# test_compile_all_dcae_repos() - Verify that the DCAE source code is compiled properly
+function test_compile_all_dcae_repos {
+ clone_repos "dcae"
+ compile_repos "dcae"
+
+ asserts_file_exist ${src_folders[dcae]}/collectors/ves/target/VESCollector-1.1.0-SNAPSHOT.jar
+
+ asserts_file_exist ${src_folders[dcae]}/controller/analytics/dcae-analytics-cdap-common-model/target/dcae-analytics-cdap-common-model-1.1.0-SNAPSHOT.jar
+
+ asserts_file_exist ${src_folders[dcae]}/controller/dcae-controller-core/dcae-controller-core-model/target/dcae-controller-core-model-1.1.0-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[dcae]}/controller/dcae-controller-core/dcae-controller-core-utils/target/dcae-controller-core-utils-1.1.0-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[dcae]}/controller/dcae-controller-core/dcae-controller-operation-utils/target/dcae-controller-operation-utils-1.1.0-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[dcae]}/controller/dcae-controller-core/dcae-controller-platform-model/target/dcae-controller-platform-model-1.1.0-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[dcae]}/controller/dcae-controller-core/dcae-controller-platform-server/target/dcae-controller-platform-server-1.1.0-SNAPSHOT.jar
+
+ asserts_file_exist ${src_folders[dcae]}/controller/dcae-controller-service/dcae-controller-service-dmaap-drsub/dcae-controller-service-dmaap-drsub-manager/target/dcae-controller-service-dmaap-drsub-manager-1.1.0-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[dcae]}/controller/dcae-controller-service/dcae-controller-service-dmaap-drsub/dcae-controller-service-dmaap-drsub-model/target/dcae-controller-service-dmaap-drsub-model-1.1.0-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[dcae]}/controller/dcae-controller-service/dcae-controller-service-standardeventcollector/dcae-controller-service-standardeventcollector-manager/target/dcae-controller-service-standardeventcollector-manager-1.1.0-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[dcae]}/controller/dcae-controller-service/dcae-controller-service-standardeventcollector/dcae-controller-service-standardeventcollector-model/target/dcae-controller-service-standardeventcollector-model-1.1.0-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[dcae]}/controller/dcae-controller-service/dcae-controller-service-storage-postgres-model/target/dcae-controller-service-storage-postgres-model-1.1.0-SNAPSHOT.jar
+
+ asserts_file_exist ${src_folders[dcae]}/controller/dcae-controller-service-cdap/dcae-controller-service-cdap-adaptor/target/dcae-controller-service-cdap-adaptor-1.1.0-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[dcae]}/controller/dcae-controller-service-cdap/dcae-controller-service-cdap-cluster/dcae-controller-service-cdap-cluster-manager/target/dcae-controller-service-cdap-cluster-manager-1.1.0-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[dcae]}/controller/dcae-controller-service-cdap/dcae-controller-service-cdap-cluster/dcae-controller-service-cdap-cluster-model/target/dcae-controller-service-cdap-cluster-model-1.1.0-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[dcae]}/controller/dcae-controller-service-cdap/dcae-controller-service-cdap-model/target/dcae-controller-service-cdap-model-1.1.0-SNAPSHOT.jar
+
+ asserts_file_exist ${src_folders[dcae]}/controller/dcae-controller-service-docker/dcae-controller-service-common-docker/dcae-controller-service-common-docker-manager/target/dcae-controller-service-common-docker-manager-1.1.0-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[dcae]}/controller/dcae-controller-service-docker/dcae-controller-service-common-docker/dcae-controller-service-common-docker-model/target/dcae-controller-service-common-docker-model-1.1.0-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[dcae]}/controller/dcae-controller-service-docker/dcae-controller-service-docker-adaptor/target/dcae-controller-service-docker-adaptor-1.1.0-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[dcae]}/controller/dcae-controller-service-docker/dcae-controller-service-docker-host/dcae-controller-service-docker-host-manager/target/dcae-controller-service-docker-host-manager-1.1.0-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[dcae]}/controller/dcae-controller-service-docker/dcae-controller-service-docker-host/dcae-controller-service-docker-host-model/target/dcae-controller-service-docker-host-model-1.1.0-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[dcae]}/controller/dcae-controller-service-docker/dcae-controller-service-docker-model/target/dcae-controller-service-docker-model-1.1.0-SNAPSHOT.jar
+
+ asserts_file_exist ${src_folders[dcae]}/controller/dcae-controller-service-vm/dcae-controller-service-common-vm/dcae-controller-service-common-vm-manager/target/dcae-controller-service-common-vm-manager-1.1.0-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[dcae]}/controller/dcae-controller-service-vm/dcae-controller-service-common-vm/dcae-controller-service-common-vm-model/target/dcae-controller-service-common-vm-model-1.1.0-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[dcae]}/controller/dcae-controller-service-vm/dcae-controller-service-vm-adaptor/target/dcae-controller-service-vm-adaptor-1.1.0-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[dcae]}/controller/dcae-controller-service-vm/dcae-controller-service-vm-model/target/dcae-controller-service-vm-model-1.1.0-SNAPSHOT.jar
+
+ asserts_file_exist ${src_folders[dcae]}/dcae-inventory/target/dcae-inventory-1.1.0.jar
+
+ asserts_file_exist ${src_folders[dcae]}/demo/dcae-demo-controller/target/dcae-demo-controller-1.1.0-SNAPSHOT-runtime.zip
+
+ asserts_file_exist ${src_folders[dcae]}/dmaapbc/target/dcae_dmaapbc.jar
+
+ asserts_file_exist ${src_folders[dcae]}/operation/utils/operation-utils/target/operation-utils-1.1.0-SNAPSHOT.jar
+}
+
+# test_get_dcae_images() - Function that verifies DCAE images are retrieved properly
+function test_get_dcae_images {
+ clone_repos "dcae"
+ compile_repos "dcae"
+ get_dcae_images
+
+ asserts_image openecomp/dcae-dmaapbc
+ #asserts_image dcae/orch-dispatcher
+ asserts_image dcae-controller
+ asserts_image dcae-inventory
+}
+
+# test_install_dcae() - Function that verifies that DCAE services are up and running
+function test_install_dcae {
+ clone_repos "dcae"
+ compile_all_dcae_repos
+ get_dcae_images
+ install_dcae
+
+ dcae_image=`docker images | grep dcae-controller | awk '{print $1 ":" $2}'`
+ asserts_image_running $dcae_image
+}
+
+if [ "$1" != '*' ]; then
+ unset covered_functions
+ covered_functions=$1
+fi
+main "${covered_functions[@]}"
diff --git a/tests/test_functions b/tests/test_functions
new file mode 100755
index 0000000..dd48215
--- /dev/null
+++ b/tests/test_functions
@@ -0,0 +1,191 @@
+#!/bin/bash
+
+source /var/onap_tests/_test_base
+source /var/onap/functions
+
+covered_functions=(
+"create_configuration_files" "clone_repo"
+"configure_bind" "install_java" "install_maven" "install_nodejs" "install_python"
+"install_docker" "pull_docker_image" "install_docker_compose" "configure_service"
+"start_ODL" "compile_src" "build_docker_image" "docker_openecomp_login"
+"pull_openecomp_image" "pull_onap_image" "coverity_repos" "add_no_proxy_value"
+)
+
+# test_create_configuration_files() - Verify the creation of a configuration files
+function test_create_configuration_files {
+ create_configuration_files
+
+ asserts_file_exist /opt/config/nexus_docker_repo.txt
+ asserts_file_exist /opt/config/nexus_username.txt
+ asserts_file_exist /opt/config/nexus_password.txt
+ asserts_file_exist /opt/config/openstack_username.txt
+ asserts_file_exist /opt/config/tenant_id.txt
+ asserts_file_exist /opt/config/dmaap_topic.txt
+ asserts_file_exist /opt/config/docker_version.txt
+}
+
+# test_docker_openecomp_login() - Verify the proper login to OpenECOMP Docker Hub
+function test_docker_openecomp_login {
+ docker_openecomp_login
+}
+
+# test_pull_openecomp_image() - Verify the OpenECOMP container image pulling process
+function test_pull_openecomp_image {
+ local image_name=portal-apps
+ unset docker_version
+ pull_openecomp_image $image_name
+
+ asserts_image $nexus_docker_repo/openecomp/$image_name
+}
+
+# test_pull_onap_image() - Verify the ONAP cointainer pulling process
+function test_pull_onap_image {
+ local image_name=portal-apps
+ unset docker_version
+ pull_onap_image $image_name
+
+ asserts_image $nexus_docker_repo/onap/$image_name
+}
+
+# test_clone_repo() - Verify cloning and pulling source code from repositories
+function test_clone_repo {
+ clone_repo demo
+
+ asserts_installed_package git
+ asserts_file_exist $git_src_folder/demo/LICENSE.TXT
+}
+
+# test_configure_bind() - Verify the correct installation and configuration of bind
+function test_configure_bind {
+ configure_bind
+
+ asserts_installed_package bind9
+ asserts_installed_package bind9utils
+ asserts_file_exist /etc/bind/zones/db.simpledemo.openecomp.org
+ asserts_file_exist /etc/bind/named.conf.options
+ asserts_file_exist /etc/bind/named.conf.local
+
+ rm -rf /etc/bind/
+}
+
+# test_install_java() - Verify the correct installation of java
+function test_install_java {
+ install_java
+
+ asserts_installed_package openjdk-8-jdk
+}
+
+# test_install_maven() - Verify the correct installation and configuration of maven
+function test_install_maven {
+ install_maven
+
+ asserts_installed_package maven3
+ asserts_installed_package openjdk-8-jdk
+ asserts_file_exist $mvn_conf_file
+}
+
+# test_install_nodejs() - Verify the correct installation of NodeJS tools
+function test_install_nodejs {
+ install_nodejs
+
+ asserts_installed_package nodejs
+ asserts_file_exist /usr/bin/npm
+}
+
+# test_install_python() - Verify the correct installation of Python
+function test_install_python {
+ install_python
+ asserts_installed_package python2.7
+ asserts_installed_package python-dev
+}
+
+# test_install_docker() - Verify the correct installation of Docker
+function test_install_docker {
+ install_docker
+
+ asserts_installed_package docker-ce
+}
+
+# test_pull_docker_image() - Verify the correct retrieve of a specific docker image
+function test_pull_docker_image {
+ local image=attos/dmaap
+ pull_docker_image $image
+
+ asserts_image $image
+}
+
+# test_install_docker_compose() - Verify the correct installation of Docker Compose tool
+function test_install_docker_compose {
+ install_docker_compose
+
+ asserts_file_exist /opt/docker/docker-compose
+}
+
+# test_configure_service() - Verify the correct configuration of a specific init service
+function test_configure_service {
+ local service=mso
+
+ configure_service $service
+
+ asserts_file_exist /etc/init.d/$service
+
+ rm -rf /etc/init.d/$service
+}
+
+# test_start_ODL() - Verify the installation and configuration of OpenDayLight controller
+function test_start_ODL {
+ start_ODL
+
+ asserts_file_exist /opt/opendaylight/current/bin/start
+}
+
+# test_compile_src() - Verify the compilation of java code using maven tools
+function test_compile_src {
+ local repo=vid/asdcclient
+ clone_repo $repo
+ compile_src $git_src_folder/$repo
+
+ asserts_file_exist $git_src_folder/$repo/target/asdcclient-1.0.2-SNAPSHOT.jar
+}
+
+# test_build_docker_image() - Verify that a docker image is created from source code
+function test_build_docker_image {
+ clone_repo ccsdk/distribution
+ build_docker_image $git_src_folder/ccsdk/distribution/ubuntu docker
+
+ asserts_image onap/ccsdk-ubuntu-image
+}
+
+# test_coverity_repos() - Verify that all the repos are covered by scripts
+function test_coverity_repos {
+ pushd /var/onap_tests/
+ cp projects.txt remaining_projects.txt
+ for project in "${repos[@]}"; do
+ for covered_repo in $project; do
+ sed -i '/^'${covered_repo//\//\\/}'$/d' remaining_projects.txt
+ done
+ done
+
+ threshold=75
+ num_projects=$(wc -l < projects.txt)
+ num_remaining_projects=$(wc -l < remaining_projects.txt)
+ coverage=`echo "scale=2; 100-($num_remaining_projects/$num_projects*100)" | bc | cut -d . -f 1`
+ if [ $coverage -lt $threshold ]; then
+ raise_error "There are repositories that are not covered by scripts"
+ fi
+ popd
+}
+
+# test_add_no_proxy_value - Verify that the no_proxy value is correctly set
+function test_add_no_proxy_value {
+ local ip="172.16.0.3"
+ add_no_proxy_value $ip
+
+ asserts_env_set no_proxy
+}
+
+if [ "$1" != '*' ]; then
+ unset covered_functions
+ covered_functions=$1
+fi
+main "${covered_functions[@]}"
diff --git a/tests/test_mr b/tests/test_mr
new file mode 100755
index 0000000..ad1bcd2
--- /dev/null
+++ b/tests/test_mr
@@ -0,0 +1,38 @@
+#!/bin/bash
+
+source /var/onap_tests/_test_base
+source /var/onap/mr
+
+covered_functions=(
+"clone_mr_repos" "get_mr_images" "install_message_router"
+)
+
+# test_clone_mr_repos() - Verify that Message Router repositories are cloned properly
+function test_clone_mr_repos {
+ clone_repo dcae/demo/startup/message-router ${src_folders[mr]}
+
+ asserts_file_exist ${src_folders[mr]}/deploy.sh
+}
+
+# test_get_mr_images() - Verify that Message Router Docker images are retrieved
+function test_get_mr_images {
+ get_mr_images
+
+ asserts_image attos/dmaap
+ asserts_image wurstmeister/zookeeper
+}
+
+# test_install_message_router() - Verify the built and start of Message Router services
+function test_install_message_router {
+ clone_repo dcae/demo/startup/message-router ${src_folders[mr]}
+ get_mr_images
+ install_message_router
+
+ asserts_image_running dockerfiles_kafka
+}
+
+if [ "$1" != '*' ]; then
+ unset covered_functions
+ covered_functions=$1
+fi
+main "${covered_functions[@]}"
diff --git a/tests/test_msb b/tests/test_msb
new file mode 100755
index 0000000..0848d33
--- /dev/null
+++ b/tests/test_msb
@@ -0,0 +1,61 @@
+#!/bin/bash
+
+source /var/onap_tests/_test_base
+source /var/onap/msb
+
+covered_functions=(
+"clone_all_msb_repos" "compile_all_msb_repos" "get_msb_images" "install_msb"
+)
+
+# test_clone_all_msb_repos() - Verify the source code retrieve of Microservice Bus project
+function test_clone_all_msb_repos {
+ clone_repos "msb"
+
+ asserts_file_exist ${src_folders[msb]}/apigateway/pom.xml
+ asserts_file_exist ${src_folders[msb]}/discovery/pom.xml
+ asserts_file_exist ${src_folders[msb]}/java-sdk/pom.xml
+ asserts_file_exist ${src_folders[msb]}/swagger-sdk/pom.xml
+}
+
+# test_compile_all_msb_repos() - Verify the correct compilation of MSB project
+function test_compile_all_msb_repos {
+ clone_repos "msb"
+ compile_repos "msb"
+
+ asserts_file_exist ${src_folders[msb]}/apigateway/apiroute/apiroute-service/target/original-apiroute-service-1.1.0-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[msb]}/apigateway/apiroute/apiroute-standalone/target/apiroute-1.1.0-SNAPSHOT.zip
+ asserts_file_exist ${src_folders[msb]}/discovery/discovery-ui/target/discovery-ui-1.1.0-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[msb]}/discovery/sdclient/discovery-service/target/original-discovery-service-1.1.0-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[msb]}/java-sdk/target/msb-java-sdk-1.1.0-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[msb]}/swagger-sdk/target/swagger-sdk-1.1.0-SNAPSHOT.jar
+}
+
+# test_get_msb_images() - Verify the creation of MSB Docker images
+function test_get_msb_images {
+ clone_repos "msb"
+ get_msb_images
+
+ for image in base apigateway discovery; do
+ asserts_image $nexus_docker_repo/onap/msb/msb_$image
+ done
+}
+
+# test_install_msb - Verify the execution of MSB Docker images
+function test_install_msb {
+ clone_repos "msb"
+ get_msb_images
+ install_msb
+
+ for image in apigateway discovery; do
+ asserts_image_running $nexus_docker_repo/onap/msb/msb_$image
+ done
+
+ asserts_http_status_code "http://127.0.0.1:10081/api/microservices/v1/services"
+ asserts_http_status_code "http://127.0.0.1/api/aai/v8/cloud-infrastructure/cloud-regions"
+}
+
+if [ "$1" != '*' ]; then
+ unset covered_functions
+ covered_functions=$1
+fi
+main "${covered_functions[@]}"
diff --git a/tests/test_mso b/tests/test_mso
new file mode 100755
index 0000000..6a6bef7
--- /dev/null
+++ b/tests/test_mso
@@ -0,0 +1,67 @@
+#!/bin/bash
+
+source /var/onap_tests/_test_base
+source /var/onap/mso
+
+covered_functions=(
+"clone_all_mso_repos" "compile_all_mso_repos" "get_mso_images" "install_mso"
+)
+
+# test_clone_all_mso_repos() - Verify the source code retrieve of MSO project
+function test_clone_all_mso_repos {
+ clone_repos "mso"
+
+ asserts_file_exist ${src_folders[mso]}/pom.xml
+ asserts_file_exist ${src_folders[mso]}/chef-repo/LICENSE.txt
+ asserts_file_exist ${src_folders[mso]}/docker-config/LICENSE.txt
+ asserts_file_exist ${src_folders[mso]}/libs/pom.xml
+ asserts_file_exist ${src_folders[mso]}/mso-config/LICENSE.txt
+}
+
+# test_compile_all_mso_repos() - Verify the correct compilation of MSO projects
+function test_compile_all_mso_repos {
+ clone_repos "mso"
+ compile_repos "mso"
+
+ asserts_file_exist ${src_folders[mso]}/libs/ceilometer-client/target/ceilometer-client-1.1.0-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[mso]}/libs/ceilometer-model/target/ceilometer-model-1.1.0-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[mso]}/libs/glance-client/target/glance-client-1.1.0-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[mso]}/libs/glance-model/target/glance-model-1.1.0-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[mso]}/libs/heat-client/target/heat-client-1.1.0-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[mso]}/libs/heat-model/target/heat-model-1.1.0-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[mso]}/libs/keystone-client/target/keystone-client-1.1.0-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[mso]}/libs/keystone-model/target/keystone-model-1.1.0-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[mso]}/libs/nova-client/target/nova-client-1.1.0-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[mso]}/libs/nova-model/target/nova-model-1.1.0-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[mso]}/libs/openstack-client/target/openstack-client-1.1.0-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[mso]}/libs/quantum-client/target/quantum-client-1.1.0-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[mso]}/libs/quantum-model/target/quantum-model-1.1.0-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[mso]}/libs/swift-client/target/swift-client-1.1.0-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[mso]}/libs/swift-model/target/swift-model-1.1.0-SNAPSHOT.jar
+}
+
+# test_get_mso_images() - Verify the creation of MSO Docker images
+function test_get_mso_images {
+ clone_repos "mso"
+ install_mso
+
+ for image in mso mso-arquillian wildfly ubuntu-update jacoco; do
+ asserts_image openecomp/$image
+ done
+}
+
+# test_install_mso - Verify the execution of MSO Docker images
+function test_install_mso {
+ clone_repos "mso"
+ install_mso
+ install_mso_docker_config
+
+ asserts_image_running openecomp/mso
+ asserts_image_running mariadb:10.1.11
+}
+
+if [ "$1" != '*' ]; then
+ unset covered_functions
+ covered_functions=$1
+fi
+main "${covered_functions[@]}"
diff --git a/tests/test_multicloud b/tests/test_multicloud
new file mode 100755
index 0000000..1b5b85d
--- /dev/null
+++ b/tests/test_multicloud
@@ -0,0 +1,54 @@
+#!/bin/bash
+
+source /var/onap_tests/_test_base
+source /var/onap/multicloud
+
+covered_functions=(
+"clone_multicloud_repos" "compile_multicloud_repos" "get_multicloud_images" "install_multicloud"
+)
+
+# test_clone_multicloud_repos() - Verify that Multi Cloud repositories are cloned properly
+function test_clone_multicloud_repos {
+ clone_repos "multicloud"
+
+ #asserts_file_exist ${src_folders[multicloud]}/
+ asserts_file_exist ${src_folders[multicloud]}/framework/pom.xml
+ asserts_file_exist ${src_folders[multicloud]}/openstack/pom.xml
+ asserts_file_exist ${src_folders[multicloud]}/openstack/vmware/pom.xml
+ asserts_file_exist ${src_folders[multicloud]}/openstack/windriver/pom.xml
+ #asserts_file_exist ${src_folders[multicloud]}/azure/
+}
+
+# test_compile_multicloud_repos() -
+function test_compile_multicloud_repos {
+ clone_repos "multicloud"
+ compile_repos "multicloud"
+
+ asserts_file_exist ${src_folders[multicloud]}/openstack/newton/target/multicloud-openstack-newton-1.0.0-SNAPSHOT.zip
+ asserts_file_exist ${src_folders[multicloud]}/openstack/ocata/target/multicloud-openstack-ocata-1.0.0-SNAPSHOT.zip
+ asserts_file_exist ${src_folders[multicloud]}/openstack/windriver/target/multicloud-openstack-windriver-1.0.0-SNAPSHOT.zip
+}
+
+# test_get_multicloud_images() -
+function test_get_multicloud_images {
+ clone_repos "multicloud"
+ get_multicloud_images
+
+ asserts_image onap/multicloud/openstack-$openstack_release
+}
+
+# test_install_multicloud() - Verify the built and start of Multi Cloud services
+function test_install_multicloud {
+ clone_repos "multicloud"
+ get_multicloud_images
+ install_multicloud
+
+ # NOTE(electrocucaracha): Depends on https://gerrit.onap.org/r/#/c/23631/
+ asserts_http_status_code http://127.0.0.1:9003/api/multicloud-$openstack_release/v0/swagger.json
+}
+
+if [ "$1" != '*' ]; then
+ unset covered_functions
+ covered_functions=$1
+fi
+main "${covered_functions[@]}"
diff --git a/tests/test_policy b/tests/test_policy
new file mode 100755
index 0000000..b666cf9
--- /dev/null
+++ b/tests/test_policy
@@ -0,0 +1,100 @@
+#!/bin/bash
+
+source /var/onap_tests/_test_base
+source /var/onap/policy
+
+covered_functions=(
+"clone_all_policy_repos"
+"compile_all_policy_repos"
+"get_policy_images"
+"install_policy"
+)
+
+# test_clone_all_policy_repos() - Verify cloning of Policy source code
+function test_clone_all_policy_repos {
+ clone_repos "policy"
+
+ asserts_file_exist ${src_folders[policy]}/api/pom.xml
+ asserts_file_exist ${src_folders[policy]}/common/pom.xml
+ asserts_file_exist ${src_folders[policy]}/docker/pom.xml
+ asserts_file_exist ${src_folders[policy]}/drools-applications/pom.xml
+ asserts_file_exist ${src_folders[policy]}/drools-pdp/pom.xml
+ asserts_file_exist ${src_folders[policy]}/engine/pom.xml
+ asserts_file_exist ${src_folders[policy]}/gui/pom.xml
+ asserts_file_exist ${src_folders[policy]}/pap/pom.xml
+ asserts_file_exist ${src_folders[policy]}/pdp/pom.xml
+}
+
+# test_compile_all_policy_repos() - Verify compiling of Policy source code
+function test_compile_all_policy_repos {
+ clone_repos "policy"
+ compile_repos "policy"
+
+ asserts_file_exist ${src_folders[policy]}/common/common-logging/target/ONAP-Logging-*-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[policy]}/common/integrity-audit/target/integrity-audit-*-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[policy]}/common/integrity-monitor/target/integrity-monitor-*-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[policy]}/common/site-manager/target/site-manager-*-SNAPSHOT.jar
+ for actor in appc appclcm so test vfc; do
+ asserts_file_exist ${src_folders[policy]}/drools-applications/controlloop/common/actors/actor.$actor/target/actor.$actor-*-SNAPSHOT.jar
+ done
+ asserts_file_exist ${src_folders[policy]}/drools-applications/controlloop/common/actors/actorServiceProvider/target/actorServiceProvider-*-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[policy]}/drools-applications/controlloop/common/eventmanager/target/eventmanager-*-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[policy]}/drools-applications/controlloop/common/guard/target/guard-*-SNAPSHOT.jar
+ for module in aai appc appclcm events rest sdc so trafficgenerator vfc; do
+ asserts_file_exist ${src_folders[policy]}/drools-applications/controlloop/common/model-impl/$module/target/$module-*-SNAPSHOT.jar
+ done
+ asserts_file_exist ${src_folders[policy]}/drools-applications/controlloop/common/policy-yaml/target/policy-yaml-*-SNAPSHOT.jar
+ for package in apps artifacts; do
+ asserts_file_exist ${src_folders[policy]}/drools-applications/controlloop/packages/$package/target/$package-*-SNAPSHOT.zip
+ done
+ #asserts_file_exist ${src_folders[policy]}/drools-applications/controlloop/packages/basex/target/basex-*-SNAPSHOT.tar.gz
+ asserts_file_exist ${src_folders[policy]}/drools-applications/controlloop/templates/template.demo/target/template.demo-*-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[policy]}/drools-applications/controlloop/templates/template.demo/target/template.demo-*-SNAPSHOT.jar
+ for feature in eelf healthcheck session-persistence; do
+ asserts_file_exist ${src_folders[policy]}/drools-pdp/feature-$feature/target/feature-$feature-*-SNAPSHOT.jar
+ done
+ #asserts_file_exist ${src_folders[policy]}/drools-pdp/packages/base/target/base-*-SNAPSHOT.tar.gz
+ #asserts_file_exist ${src_folders[policy]}/drools-pdp/packages/install/target/install-drools-*-SNAPSHOT.zip
+ for policy in core endpoints management utils; do
+ asserts_file_exist ${src_folders[policy]}/drools-pdp/policy-$policy/target/policy-$policy-*-SNAPSHOT.jar
+ done
+ for engine in BRMSGateway LogParser ONAP-PDP ONAP-XACML ONAP-REST; do
+ asserts_file_exist ${src_folders[policy]}/engine/$engine/target/$engine-*-SNAPSHOT.jar
+ done
+ for engine in ONAP-PAP-REST ONAP-PDP-REST ONAP-SDK-APP; do
+ asserts_file_exist ${src_folders[policy]}/engine/$engine/target/$engine-*-SNAPSHOT.war
+ done
+ asserts_file_exist ${src_folders[policy]}/engine/packages/base/target/base-*-SNAPSHOT.tar.gz
+ asserts_file_exist ${src_folders[policy]}/engine/packages/install/target/install-*-SNAPSHOT.zip
+ asserts_file_exist ${src_folders[policy]}/engine/POLICY-SDK-APP/target/POLICY-SDK-APP-*-SNAPSHOT.war
+ asserts_file_exist ${src_folders[policy]}/engine/PolicyEngineAPI/target/PolicyEngineAPI-*-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[policy]}/engine/PolicyEngineClient/target/PolicyEngineClient-*-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[policy]}/engine/PolicyEngineUtils/target/PolicyEngineUtils-*-SNAPSHOT.jar
+}
+
+# test_get_policy_images() - Verify that Policy Docker images are retrieved properly
+function test_get_policy_images {
+ clone_repos "policy"
+ get_policy_images
+
+ for image in os nexus db base drools pe; do
+ asserts_image onap/policy/policy-$image
+ done
+}
+
+# test_install_policy() - Verify that Policy services are started properly
+function test_install_policy {
+ clone_repos "policy"
+ get_policy_images
+ install_policy
+
+ for image in pe drools db nexus; do
+ asserts_image_running onap/policy/policy-$image
+ done
+}
+
+if [ "$1" != '*' ]; then
+ unset covered_functions
+ covered_functions=$1
+fi
+main "${covered_functions[@]}"
diff --git a/tests/test_portal b/tests/test_portal
new file mode 100755
index 0000000..d20f173
--- /dev/null
+++ b/tests/test_portal
@@ -0,0 +1,59 @@
+#!/bin/bash
+
+source /var/onap_tests/_test_base
+source /var/onap/portal
+
+covered_functions=(
+"clone_all_portal_repos"
+"compile_all_portal_repos"
+"get_portal_images"
+"install_portal"
+)
+
+# test_clone_all_portal_repos() - Verify cloning of Portal source code
+function test_clone_all_portal_repos {
+ clone_all_portal_repos
+
+ asserts_file_exist ${src_folders[portal]}/pom.xml
+ asserts_file_exist ${src_folders[portal]}/ecompsdkos/LICENSE.txt
+ asserts_file_exist ${src_folders[portal]}/dmaapbc/pom.xml
+ asserts_file_exist ${src_folders[portal]}/sdk/LICENSE.txt
+}
+
+# test_compile_all_portal_repos() - Verify compiling of Portal source code
+function test_compile_all_portal_repos {
+ clone_all_portal_repos
+ compile_all_portal_repos
+
+ asserts_file_exist ${src_folders[portal]}/ecomp-portal-BE-common/target/ecompportal-be-common.war
+ asserts_file_exist ${src_folders[portal]}/ecomp-portal-BE-common-test/target/ecomp-portal-BE-common-test.jar
+ asserts_file_exist ${src_folders[portal]}/ecomp-portal-BE-os/target/ecompportal-be-os.war
+}
+
+# test_get_portal_images() - Verify that Portal Docker images are retrieved or built properly
+function test_get_portal_images {
+ clone_all_portal_repos
+ get_portal_images
+
+ asserts_image portal-db
+ asserts_image portal-wms
+ asserts_image portal-apps
+ asserts_image mariadb
+}
+
+# test_install_portal() - Verify installation of Portal services
+function test_install_portal {
+ clone_all_portal_repos
+ install_mariadb
+ install_portal
+
+ asserts_image_running portal-db
+ asserts_image_running portal-wms
+ asserts_image_running portal-apps
+}
+
+if [ "$1" != '*' ]; then
+ unset covered_functions
+ covered_functions=$1
+fi
+main "${covered_functions[@]}"
diff --git a/tests/test_robot b/tests/test_robot
new file mode 100755
index 0000000..b96a088
--- /dev/null
+++ b/tests/test_robot
@@ -0,0 +1,48 @@
+#!/bin/bash
+
+source /var/onap_tests/_test_base
+source /var/onap/robot
+
+covered_functions=(
+"clone_robot_repos" "compile_robot_repos" "get_robot_images" "install_robot"
+)
+
+# test_clone_robot_repos() - Verify that Robot repositories are cloned properly
+function test_clone_robot_repos {
+ clone_repos "robot" "testsuite"
+
+ asserts_file_exist ${src_folders[robot]}/LICENSE.TXT
+ asserts_file_exist ${src_folders[robot]}/heatbridge/pom.xml
+ asserts_file_exist ${src_folders[robot]}/properties/LICENSE.TXT
+ asserts_file_exist ${src_folders[robot]}/python-testing-utils/LICENSE.TXT
+}
+
+# test_compile_robot_repos() - Verify that Robot source code can be compiled properly
+function test_compile_robot_repos {
+ clone_repos "robot" "testsuite"
+ compile_repos "robot"
+
+ #asserts_file_exist $testsuite_src_folder/heatbridge/target/maven-python/dist/heatbridge-0.3.0.dev0-py2-none-any.whl
+}
+
+# test_get_robot_images() - Verify that Robot Docker images are retrieved
+function test_get_robot_images {
+ get_robot_images
+
+ asserts_image $nexus_docker_repo/openecomp/testsuite
+}
+
+# test_install_robot() - Verify the built and start of Robot services
+function test_install_robot {
+ clone_repos "robot" "testsuite"
+ get_robot_images
+ install_robot
+
+ asserts_image_running $nexus_docker_repo/openecomp/testsuite
+}
+
+if [ "$1" != '*' ]; then
+ unset covered_functions
+ covered_functions=$1
+fi
+main "${covered_functions[@]}"
diff --git a/tests/test_sdc b/tests/test_sdc
new file mode 100755
index 0000000..6765780
--- /dev/null
+++ b/tests/test_sdc
@@ -0,0 +1,69 @@
+#!/bin/bash
+
+source /var/onap_tests/_test_base
+source /var/onap/sdc
+
+covered_functions=(
+"clone_all_sdc_repos" "compile_all_sdc_repos" "get_sdc_images" "install_sdc"
+)
+
+# test_clone_all_sdc_repos() - Verifies the retrieval of SDC source code repos
+function test_clone_all_sdc_repos {
+ clone_repos "sdc"
+
+ asserts_file_exist ${src_folders[sdc]}/pom.xml
+ asserts_file_exist ${src_folders[sdc]}/sdc-os-chef/pom.xml
+ asserts_file_exist ${src_folders[sdc]}/jtosca/pom.xml
+ asserts_file_exist ${src_folders[sdc]}/sdc-distribution-client/pom.xml
+ asserts_file_exist ${src_folders[sdc]}/sdc-titan-cassandra/pom.xml
+ asserts_file_exist ${src_folders[sdc]}/sdc-tosca/pom.xml
+ asserts_file_exist ${src_folders[sdc]}/sdc_common/pom.xml
+}
+
+# test_compile_all_sdc_repos() - Verifies the correct compilation of SDC repositories
+function test_compile_all_sdc_repos {
+ clone_repos "sdc"
+ compile_repos "sdc"
+
+ #asserts_file_exist ${src_folders[sdc]}/jtosca/target/jtosca-1.1.10-SNAPSHOT.jar
+ #asserts_file_exist ${src_folders[sdc]}/sdc-distribution-client/sdc-distribution-ci/target/sdc-distribution-ci-1.1.*-SNAPSHOT.jar
+ #asserts_file_exist ${src_folders[sdc]}/sdc-distribution-client/sdc-distribution-client/target/sdc-distribution-client-1.1.*-SNAPSHOT.jar
+ #asserts_file_exist ${src_folders[sdc]}/sdc-titan-cassandra/target/jamm-0.3.0.jar
+ #asserts_file_exist ${src_folders[sdc]}/sdc-tosca/target/sdc-tosca-1.1.*-SNAPSHOT.jar
+
+ #for dirc in logging sdc-artifact-generator; do
+ for dirc in logging; do
+ name="openecomp-$dirc"
+ for module in api core; do
+ fullname="$name-$module"
+ asserts_file_exist ${src_folders[sdc]}/sdc_common/$name-lib/$fullname/target/$fullname-1.1.0-SNAPSHOT.jar
+ done
+ done
+}
+
+# test_get_sdc_images() - Verifies the correct retrieval of SDC Docker images
+function test_get_sdc_images {
+ clone_repos "sdc"
+ get_sdc_images
+
+ for image in sanity elasticsearch cassandra kibana frontend backend; do
+ asserts_image openecomp/base_sdc-$image
+ done
+}
+
+# test_install_sdc() - Verifies that SDC services are up and running
+function test_install_sdc {
+ clone_repos "sdc"
+ get_sdc_images
+ install_sdc
+
+ for image in elasticsearch cassandra kibana frontend backend; do
+ asserts_image_running openecomp/base_sdc-$image
+ done
+}
+
+if [ "$1" != '*' ]; then
+ unset covered_functions
+ covered_functions=$1
+fi
+main "${covered_functions[@]}"
diff --git a/tests/test_sdnc b/tests/test_sdnc
new file mode 100755
index 0000000..c4ddc56
--- /dev/null
+++ b/tests/test_sdnc
@@ -0,0 +1,69 @@
+#!/bin/bash
+
+source /var/onap_tests/_test_base
+source /var/onap/sdnc
+
+covered_functions=(
+"clone_all_sdnc_repos" "compile_all_sdnc_repos" "get_sdnc_images" "install_sdnc"
+)
+
+# test_clone_all_sdnc_repos() - Verify the source code retrieve of SDNC project
+function test_clone_all_sdnc_repos {
+ clone_repos "sdnc"
+
+ asserts_file_exist ${src_folders[sdnc]}/adaptors/pom.xml
+ #asserts_file_exist ${src_folders[sdnc]}/architecture/docs/index.rst
+ asserts_file_exist ${src_folders[sdnc]}/core/pom.xml
+ #asserts_file_exist ${src_folders[sdnc]}/features/docs/index.rst
+ asserts_file_exist ${src_folders[sdnc]}/northbound/pom.xml
+ asserts_file_exist ${src_folders[sdnc]}/oam/pom.xml
+ #asserts_file_exist ${src_folders[sdnc]}/parent/docs/index.rst
+ asserts_file_exist ${src_folders[sdnc]}/plugins/pom.xml
+}
+
+# test_compile_all_sdnc_repos() - Verify the correct compilation of SDNC projects
+function test_compile_all_sdnc_repos {
+ clone_repos "sdnc"
+ compile_all_sdnc_repos
+
+ for component in generic-resource-api vnfapi vnftools; do
+ if [[ "$component" == "vnfapi" ]]; then
+ asserts_file_exist ${src_folders[sdnc]}/northbound/vnfapi/model/target/vnfapi-model-1.2.0-SNAPSHOT.jar
+ fi
+ asserts_file_exist ${src_folders[sdnc]}/northbound/$component/installer/target/sdnc-$component-1.2.0-SNAPSHOT-installer.zip
+ asserts_file_exist ${src_folders[sdnc]}/northbound/$component/features/target/$component-features-1.2.0-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[sdnc]}/northbound/$component/provider/target/$component-provider-1.2.0-SNAPSHOT.jar
+ done
+ asserts_file_exist ${src_folders[sdnc]}/oam/admportal/target/admportal.*-SNAPSHOT.zip
+ asserts_file_exist ${src_folders[sdnc]}/oam/dgbuilder/target/dgbuilder.*-SNAPSHOT.zip
+ asserts_file_exist ${src_folders[sdnc]}/oam/platform-logic/installer/target/platform-logic-installer-*-SNAPSHOT.zip
+}
+
+# test_get_sdnc_images() - Verify that the SDNC images are created or retrieved
+function test_get_sdnc_images {
+ clone_repos "sdnc"
+ get_sdnc_images
+
+ asserts_image onap/sdnc-image
+ asserts_image onap/admportal-sdnc-image
+ asserts_image onap/dgbuilder-sdnc-image
+ asserts_image mysql/mysql-server:5.6
+}
+
+# test_install_sdnc() - Verify that the SDNC Docker containers are up and running
+function test_install_sdnc {
+ clone_repos "sdnc"
+ get_sdnc_images
+ install_sdnc
+
+ asserts_image_running onap/ccsdk-dgbuilder-image
+ asserts_image_running onap/admportal-sdnc-image
+ asserts_image_running onap/sdnc-image
+ asserts_image_running mysql/mysql-server:5.6
+}
+
+if [ "$1" != '*' ]; then
+ unset covered_functions
+ covered_functions=$1
+fi
+main "${covered_functions[@]}"
diff --git a/tests/test_vfc b/tests/test_vfc
new file mode 100755
index 0000000..3fadeaf
--- /dev/null
+++ b/tests/test_vfc
@@ -0,0 +1,68 @@
+#!/bin/bash
+
+source /var/onap_tests/_test_base
+source /var/onap/vfc
+
+covered_functions=(
+"clone_all_vfc_repos" "compile_all_vfc_repos" "install_vfc" "get_vfc_images"
+)
+
+# test_clone_all_vfc_repos() - Verify cloning and pulling source code from repositories
+function test_clone_all_vfc_repos {
+ clone_repos "vfc"
+
+ #asserts_file_exist ${src_folders[vfc]}/pom.xml
+ #asserts_file_exist ${src_folders[vfc]}/gvnfm
+ asserts_file_exist ${src_folders[vfc]}/gvnfm/vnflcm/pom.xml
+ asserts_file_exist ${src_folders[vfc]}/gvnfm/vnfmgr/pom.xml
+ asserts_file_exist ${src_folders[vfc]}/gvnfm/vnfres/pom.xml
+ #asserts_file_exist ${src_folders[vfc]}/nfvo
+ asserts_file_exist ${src_folders[vfc]}/nfvo/catalog/run.sh
+ #asserts_file_exist ${src_folders[vfc]}/nfvo/driver
+ asserts_file_exist ${src_folders[vfc]}/nfvo/driver/ems/pom.xml
+ asserts_file_exist ${src_folders[vfc]}/nfvo/driver/sfc/pom.xml
+ #asserts_file_exist ${src_folders[vfc]}/nfvo/driver/vnfm
+ asserts_file_exist ${src_folders[vfc]}/nfvo/driver/vnfm/gvnfm/pom.xml
+ asserts_file_exist ${src_folders[vfc]}/nfvo/driver/vnfm/svnfm/pom.xml
+ asserts_file_exist ${src_folders[vfc]}/nfvo/lcm/pom.xml
+ asserts_file_exist ${src_folders[vfc]}/nfvo/wfengine/wso2/pom.xml
+}
+
+# test_compile_all_vfc_repos() - Verify that all the VFC modules are compiled properly
+function test_compile_all_vfc_repos {
+ clone_repos "vfc"
+ compile_all_vfc_repos
+
+ # TODO(electrocucaracha): Add asserts_file_exist
+}
+
+# test_get_vfc_images() - Verify all VFC images are built correctly.
+function test_get_vfc_images {
+ clone_repos "vfc"
+ get_vfc_images
+
+ asserts_image onap/gvnfmdriver
+ asserts_image onap/nslcm
+ asserts_image onap/vnfres
+ asserts_image onap/vnfmgr
+ asserts_image onap/vnflcm
+}
+
+# test_install_vfc() - Verify that the VFC are up and running
+function test_install_vfc {
+ clone_repos "vfc"
+ get_vfc_images
+ install_vfc
+
+ asserts_image_running onap/nslcm
+ asserts_image_running onap/gvnfmdriver
+ asserts_image_running onap/vnfres
+ asserts_image_running onap/vnfmgr
+ asserts_image_running onap/vnflcm
+}
+
+if [ "$1" != '*' ]; then
+ unset covered_functions
+ covered_functions=$1
+fi
+main "${covered_functions[@]}"
diff --git a/tests/test_vid b/tests/test_vid
new file mode 100755
index 0000000..79a4152
--- /dev/null
+++ b/tests/test_vid
@@ -0,0 +1,51 @@
+#!/bin/bash
+
+source /var/onap_tests/_test_base
+source /var/onap/vid
+
+covered_functions=(
+"clone_all_vid_repos" "compile_all_vid_repos" "get_vid_images" "install_vid"
+)
+
+# test_clone_all_vid_repos() - Verifies that VID repositories are retrieved properly
+function test_clone_all_vid_repos {
+ clone_repos "vid"
+
+ asserts_file_exist ${src_folders[vid]}/pom.xml
+ asserts_file_exist ${src_folders[vid]}/asdcclient/pom.xml
+}
+
+# test_compile_all_vid_repos() - Verifies that VID source code is compiled properly
+function test_compile_all_vid_repos {
+ clone_repos "vid"
+ compile_repos "vid"
+
+ asserts_file_exist ${src_folders[vid]}/asdcclient/target/asdcclient-1.0.2-SNAPSHOT.jar
+ asserts_file_exist ${src_folders[vid]}/epsdk-app-onap/target/vid.war
+ asserts_file_exist ${src_folders[vid]}/vid-app-common/target/vid-common.war
+}
+
+# test_get_vid_images() - Verifies that VID Docker images are built properly
+function test_get_vid_images {
+ clone_repos "vid"
+ get_vid_images
+
+ asserts_image openecomp/vid
+ asserts_image mariadb:10
+}
+
+# test_install_vid() - Verifies taht VID services are up and running
+function test_install_vid {
+ clone_repos "vid"
+ get_vid_images
+ install_vid
+
+ vid_image=`docker images | grep vid | grep latest| awk '{print $1 ":" $2}'`
+ asserts_image_running $vid_image
+}
+
+if [ "$1" != '*' ]; then
+ unset covered_functions
+ covered_functions=$1
+fi
+main "${covered_functions[@]}"
diff --git a/tests/test_vnfsdk b/tests/test_vnfsdk
new file mode 100755
index 0000000..cd29a97
--- /dev/null
+++ b/tests/test_vnfsdk
@@ -0,0 +1,57 @@
+#!/bin/bash
+
+source /var/onap_tests/_test_base
+source /var/onap/vnfsdk
+
+covered_functions=(
+"clone_all_vnfsdk_repos" "compile_all_vnfsdk_repos" "get_vnfsdk_images" "install_vnfsdk"
+)
+
+# test_clone_all_vnfsdk_repos() - Verify the cloning of VNFSDK source repo.
+function test_clone_all_vnfsdk_repos {
+ clone_repos "vnfsdk"
+
+ asserts_file_exist ${src_folders[vnfsdk]}/compliance/veslibrary/README
+ asserts_file_exist ${src_folders[vnfsdk]}/functest/pom.xml
+ asserts_file_exist ${src_folders[vnfsdk]}/lctest/pom.xml
+ asserts_file_exist ${src_folders[vnfsdk]}/model/docs/index.rst
+ asserts_file_exist ${src_folders[vnfsdk]}/pkgtools/pom.xml
+ asserts_file_exist ${src_folders[vnfsdk]}/refrepo/pom.xml
+ asserts_file_exist ${src_folders[vnfsdk]}/validation/pom.xml
+}
+
+# test_compile_all_vnfsdk_repos () - Verify if VNFSDK source repo compiles correctly.
+function test_compile_all_vnfsdk_repos {
+ clone_repos "vnfsdk"
+ compile_repos "vnfsdk"
+
+ asserts_file_exist ${src_folders[vnfsdk]}/lctest/lifecycle-test/target/lifecycle-test-service-1.0.0-SNAPSHOT.war
+ asserts_file_exist ${src_folders[vnfsdk]}/pkgtools/target/vnf-sdk-pkgtools-1.0.0-SNAPSHOT.zip
+ asserts_file_exist ${src_folders[vnfsdk]}/refrepo/vnfmarket-be/vnf-sdk-marketplace/target/ROOT.war
+ asserts_file_exist ${src_folders[vnfsdk]}/validation/csarvalidation/target/validation-csar-1.0.0-SNAPSHOT.jar
+}
+
+# test_get_vnfsdk_images() - Verify that the VNFSDK images are created or retrieved
+function test_get_vnfsdk_images {
+ clone_repos "vnfsdk"
+ get_vnfsdk_images
+
+ asserts_image refrepo:1.0-STAGING-latest
+ asserts_image refrepo:latest
+}
+
+# test_install_vnfsdk() - Verify that VNFSDK docker images are running.
+function test_install_vnfsdk {
+ clone_repos "vnfsdk"
+ get_vnfsdk_images
+ install_vnfsdk
+
+ asserts_image_running refrepo:1.0-STAGING-latest
+ asserts_image refrepo:latest
+}
+
+if [ "$1" != '*' ]; then
+ unset covered_functions
+ covered_functions=$1
+fi
+main "${covered_functions[@]}"
diff --git a/tests/test_vvp b/tests/test_vvp
new file mode 100755
index 0000000..8e9594d
--- /dev/null
+++ b/tests/test_vvp
@@ -0,0 +1,55 @@
+#!/bin/bash
+
+source /var/onap_tests/_test_base
+source /var/onap/vvp
+
+covered_functions=(
+"clone_all_vvp_repos" "compile_all_vvp_repos" "get_vvp_images" "install_vvp"
+)
+
+# test_clone_all_vvp_repos() - Verify the cloning of VNFSDK source repo.
+function test_clone_all_vvp_repos {
+ clone_repos "vvp"
+
+ asserts_file_exist ${src_folders[vvp]}/cms/pom.xml
+ asserts_file_exist ${src_folders[vvp]}/devkit/LICENSE.TXT
+ asserts_file_exist ${src_folders[vvp]}/engagementmgr/pom.xml
+ asserts_file_exist ${src_folders[vvp]}/gitlab/pom.xml
+ asserts_file_exist ${src_folders[vvp]}/image-scanner/pom.xml
+ asserts_file_exist ${src_folders[vvp]}/jenkins/pom.xml
+ asserts_file_exist ${src_folders[vvp]}/portal/pom.xml
+ asserts_file_exist ${src_folders[vvp]}/postgresql/pom.xml
+ asserts_file_exist ${src_folders[vvp]}/test-engine/pom.xml
+ asserts_file_exist ${src_folders[vvp]}/validation-scripts/LICENSE.txt
+}
+
+# test_compile_all_vvp_repos () - Verify if VNFSDK source repo compiles correctly.
+function test_compile_all_vvp_repos {
+ clone_repos "vvp"
+ compile_repos "vvp"
+
+ # asserts_file_exist ${src_folders[vvp]}/
+}
+
+# test_get_vvp_images() - Verify that the VNFSDK images are created or retrieved
+function test_get_vvp_images {
+ clone_repos "vvp"
+ get_vvp_images
+
+ #asserts_image refrepo:latest
+}
+
+# test_install_vvp() - Verify that VNFSDK docker images are running.
+function test_install_vvp {
+ clone_repos "vvp"
+ get_vvp_images
+ install_vvp
+
+ #asserts_image_running refrepo:1.0-STAGING-latest
+}
+
+if [ "$1" != '*' ]; then
+ unset covered_functions
+ covered_functions=$1
+fi
+main "${covered_functions[@]}"