3 source /var/onap_tests/_test_base
4 source /var/onap/functions
7 "create_configuration_files" "clone_repo" "install_dev_tools"
8 "configure_bind" "install_java" "install_maven" "install_nodejs" "install_python"
9 "install_docker" "pull_docker_image" "install_docker_compose" "configure_service"
10 "start_ODL" "compile_src" "build_docker_image" "docker_openecomp_login"
11 "pull_openecomp_image" "pull_onap_image" "coverity_repos"
14 # test_create_configuration_files() - Verify the creation of a configuration files
15 function test_create_configuration_files {
16 create_configuration_files
18 asserts_file_exist /opt/config/nexus_docker_repo.txt
19 asserts_file_exist /opt/config/nexus_username.txt
20 asserts_file_exist /opt/config/nexus_password.txt
21 asserts_file_exist /opt/config/openstack_username.txt
22 asserts_file_exist /opt/config/tenant_id.txt
23 asserts_file_exist /opt/config/dmaap_topic.txt
24 asserts_file_exist /opt/config/docker_version.txt
27 # test_docker_openecomp_login() - Verify the proper login to OpenECOMP Docker Hub
28 function test_docker_openecomp_login {
29 docker_openecomp_login
32 # test_pull_openecomp_image() - Verify the OpenECOMP container image pulling process
33 function test_pull_openecomp_image {
34 local image_name=portal-apps
36 pull_openecomp_image $image_name
38 asserts_image $nexus_docker_repo/openecomp/$image_name
41 # test_pull_onap_image() - Verify the ONAP cointainer pulling process
42 function test_pull_onap_image {
43 local image_name=portal-apps
45 pull_onap_image $image_name
47 asserts_image $nexus_docker_repo/onap/$image_name
50 # test_clone_repo() - Verify cloning and pulling source code from repositories
51 function test_clone_repo {
54 asserts_installed_package git
55 asserts_file_exist $git_src_folder/demo/LICENSE.TXT
58 # test_install_dev_tools() - Verify the correct installation of developer tools
59 function test_install_dev_tools {
62 asserts_installed_package apt-transport-https
63 asserts_installed_package ca-certificates
64 asserts_installed_package curl
67 # test_configure_bind() - Verify the correct installation and configuration of bind
68 function test_configure_bind {
71 asserts_installed_package bind9
72 asserts_installed_package bind9utils
73 asserts_file_exist /etc/bind/zones/db.simpledemo.openecomp.org
74 asserts_file_exist /etc/bind/named.conf.options
75 asserts_file_exist /etc/bind/named.conf.local
80 # test_install_java() - Verify the correct installation of java
81 function test_install_java {
84 asserts_installed_package openjdk-8-jdk
87 # test_install_maven() - Verify the correct installation and configuration of maven
88 function test_install_maven {
91 asserts_installed_package maven3
92 asserts_installed_package openjdk-8-jdk
93 asserts_file_exist $mvn_conf_file
96 # test_install_nodejs() - Verify the correct installation of NodeJS tools
97 function test_install_nodejs {
100 asserts_installed_package nodejs
101 asserts_file_exist /usr/bin/npm
104 # test_install_python() - Verify the correct installation of Python
105 function test_install_python {
107 asserts_installed_package python2.7
108 asserts_installed_package python-dev
111 # test_install_docker() - Verify the correct installation of Docker
112 function test_install_docker {
115 asserts_installed_package docker-ce
118 # test_pull_docker_image() - Verify the correct retrieve of a specific docker image
119 function test_pull_docker_image {
120 local image=attos/dmaap
121 pull_docker_image $image
126 # test_install_docker_compose() - Verify the correct installation of Docker Compose tool
127 function test_install_docker_compose {
128 install_docker_compose
130 asserts_file_exist /opt/docker/docker-compose
133 # test_configure_service() - Verify the correct configuration of a specific init service
134 function test_configure_service {
137 configure_service $service
139 asserts_file_exist /etc/init.d/$service
141 rm -rf /etc/init.d/$service
144 # test_start_ODL() - Verify the installation and configuration of OpenDayLight controller
145 function test_start_ODL {
148 asserts_file_exist /opt/opendaylight/current/bin/start
151 # test_compile_src() - Verify the compilation of java code using maven tools
152 function test_compile_src {
153 local repo=vid/asdcclient
155 compile_src $git_src_folder/$repo
157 asserts_file_exist $git_src_folder/$repo/target/asdcclient-1.0.2-SNAPSHOT.jar
160 # test_build_docker_image() - Verify that a docker image is created from source code
161 function test_build_docker_image {
162 clone_repo ccsdk/distribution
163 build_docker_image $git_src_folder/ccsdk/distribution/ubuntu docker
165 asserts_image onap/ccsdk-ubuntu-image
168 # test_coverity_repos() - Verify that all the repos are covered by scripts
169 function test_coverity_repos {
170 # Get repositories list from source code files
172 for module in $( stat -c "%F %n" /var/onap/* | grep -v "_\|functions\|commons\|files" | cut -d' ' -f 3-); do
174 module_repo_list=$(eval echo \${$(basename $module)_repos[@]})
175 repos_list=(${repos_list[@]} ${module_repo_list[@]})
178 pushd /var/onap_tests/
179 cp projects.txt remaining_projects.txt
180 for covered_repo in "${repos_list[@]}"; do
181 sed -i "/$covered_repo/d" remaining_projects.txt
185 num_projects=$(wc -l < projects.txt)
186 num_remaining_projects=$(wc -l < remaining_projects.txt)
187 coverage=`echo "scale=2; 100-($num_remaining_projects/$num_projects*100)" | bc | cut -d . -f 1`
188 if [ $coverage -lt $threshold ]; then
189 raise_error "There are repositories that are not covered by scripts"
194 if [ "$1" != '*' ]; then
195 unset covered_functions
198 main "${covered_functions[@]}"