forked from Jack-Dane/odoo-wp-plugin
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathrunE2ETests.sh
executable file
·43 lines (33 loc) · 2.19 KB
/
runE2ETests.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#!/bin/bash
docker compose -f tests/end_to_end_tests/compose.yaml rm -f
docker compose -f tests/end_to_end_tests/compose.yaml up --force-recreate --build --wait
echo "Waiting for WP containers to start"
sleep 60
echo "Starting PHP container"
dockerPHPImageId=$(docker build -f tests/end_to_end_tests/php-composer-dockerfile . -q)
dockerPHPContainerId=$(docker container run -d --network=host ${dockerPHPImageId} tail -f /dev/null)
echo "Installing Vendor"
# no-cache because the container fails to create directories when cloning
# from git eg:
# could not create leading directories of
# '/.composer/cache/vcs/https ---github.com-bovigo-vfsStream.git'
docker exec $dockerPHPContainerId /bin/sh -c 'cd /usr/src/odoo_conn; composer install --no-cache'
echo "Running Endpoint Tests"
docker exec $dockerPHPContainerId /bin/sh -c 'cd /usr/src/odoo_conn; vendor/bin/phpunit tests/end_to_end_tests/tests/endpoint_tests'
echo "Running Selenium Tests"
dockerSeleniumContainerId=$(docker run -d --rm -it --network host --shm-size 2g selenium/standalone-chrome)
docker compose -f tests/end_to_end_tests/odoo_compose.yaml rm -f
docker compose -f tests/end_to_end_tests/odoo_compose.yaml up --force-recreate --build --wait
echo "Waiting for Odoo"
sleep 20
docker exec $dockerPHPContainerId /bin/sh -c 'cd /usr/src/odoo_conn; vendor/bin/phpunit tests/end_to_end_tests/tests/selenium_tests/Create_Test.php'
docker exec $dockerPHPContainerId /bin/sh -c 'cd /usr/src/odoo_conn; vendor/bin/phpunit tests/end_to_end_tests/tests/selenium_tests/SendData_Test.php'
docker exec $dockerPHPContainerId /bin/sh -c 'cd /usr/src/odoo_conn; vendor/bin/phpunit tests/end_to_end_tests/tests/selenium_tests/Update_Test.php'
docker exec $dockerPHPContainerId /bin/sh -c 'cd /usr/src/odoo_conn; vendor/bin/phpunit tests/end_to_end_tests/tests/selenium_tests/Delete_Test.php'
# cleanup the containers
docker compose -f tests/end_to_end_tests/odoo_compose.yaml down
docker compose -f tests/end_to_end_tests/odoo_compose.yaml rm -f
docker compose --project-directory tests/end_to_end_tests down
docker compose --project-directory tests/end_to_end_tests rm -f
docker container rm --force $dockerPHPContainerId
docker container rm --force $dockerSeleniumContainerId