|
|
|
@ -27,7 +27,7 @@ jobs:
|
|
|
|
|
run: |
|
|
|
|
|
|
|
|
|
|
docker network create changedet-network
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Selenium+browserless
|
|
|
|
|
docker run --network changedet-network -d --hostname selenium -p 4444:4444 --rm --shm-size="2g" selenium/standalone-chrome:4
|
|
|
|
|
docker run --network changedet-network -d --name browserless --hostname browserless -e "FUNCTION_BUILT_INS=[\"fs\",\"crypto\"]" -e "DEFAULT_LAUNCH_ARGS=[\"--window-size=1920,1080\"]" --rm -p 3000:3000 --shm-size="2g" browserless/chrome:1.60-chrome-stable
|
|
|
|
@ -47,7 +47,7 @@ jobs:
|
|
|
|
|
# Debug SMTP server/echo message back server
|
|
|
|
|
docker run --network changedet-network -d -p 11025:11025 -p 11080:11080 --hostname mailserver test-changedetectionio bash -c 'python changedetectionio/tests/smtp/smtp-test-server.py'
|
|
|
|
|
|
|
|
|
|
- name: Test built container with pytest
|
|
|
|
|
- name: Test built container with Pytest (generally as requests/plaintext fetching)
|
|
|
|
|
run: |
|
|
|
|
|
# Unit tests
|
|
|
|
|
echo "run test with unittest"
|
|
|
|
@ -61,20 +61,32 @@ jobs:
|
|
|
|
|
# append the docker option. e.g. '-e LOGGER_LEVEL=DEBUG'
|
|
|
|
|
docker run --network changedet-network test-changedetectionio bash -c 'cd changedetectionio && ./run_basic_tests.sh'
|
|
|
|
|
|
|
|
|
|
- name: Test built container selenium+browserless/playwright
|
|
|
|
|
- name: Specific tests in built container for Selenium
|
|
|
|
|
run: |
|
|
|
|
|
|
|
|
|
|
# Selenium fetch
|
|
|
|
|
docker run --rm -e "WEBDRIVER_URL=http://selenium:4444/wd/hub" --network changedet-network test-changedetectionio bash -c 'cd changedetectionio;pytest tests/fetchers/test_content.py && pytest tests/test_errorhandling.py'
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- name: Specific tests in built container for Playwright
|
|
|
|
|
run: |
|
|
|
|
|
# Playwright/Browserless fetch
|
|
|
|
|
docker run --rm -e "PLAYWRIGHT_DRIVER_URL=ws://browserless:3000" --network changedet-network test-changedetectionio bash -c 'cd changedetectionio;pytest tests/fetchers/test_content.py && pytest tests/test_errorhandling.py && pytest tests/visualselector/test_fetch_data.py'
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- name: Specific tests in built container for headers and requests checks with Playwright
|
|
|
|
|
run: |
|
|
|
|
|
# Settings headers playwright tests - Call back in from Browserless, check headers
|
|
|
|
|
docker run --name "changedet" --hostname changedet --rm -e "FLASK_SERVER_NAME=changedet" -e "PLAYWRIGHT_DRIVER_URL=ws://browserless:3000?dumpio=true" --network changedet-network test-changedetectionio bash -c 'cd changedetectionio; pytest --live-server-host=0.0.0.0 --live-server-port=5004 tests/test_request.py'
|
|
|
|
|
|
|
|
|
|
- name: Specific tests in built container for headers and requests checks with Selenium
|
|
|
|
|
run: |
|
|
|
|
|
docker run --name "changedet" --hostname changedet --rm -e "FLASK_SERVER_NAME=changedet" -e "WEBDRIVER_URL=http://selenium:4444/wd/hub" --network changedet-network test-changedetectionio bash -c 'cd changedetectionio; pytest --live-server-host=0.0.0.0 --live-server-port=5004 tests/test_request.py'
|
|
|
|
|
|
|
|
|
|
- name: Specific tests in built container with Playwright as Puppeteer experimental fetcher
|
|
|
|
|
run: |
|
|
|
|
|
docker run --name "changedet" --hostname changedet --rm -e "FLASK_SERVER_NAME=changedet" -e "USE_EXPERIMENTAL_PUPPETEER_FETCH=yes" -e "PLAYWRIGHT_DRIVER_URL=ws://browserless:3000?dumpio=true" --network changedet-network test-changedetectionio bash -c 'cd changedetectionio; pytest --live-server-host=0.0.0.0 --live-server-port=5004 tests/test_request.py'
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- name: Test built container restock detection via Playwright
|
|
|
|
|
run: |
|
|
|
|
|
# restock detection via playwright - added name=changedet here so that playwright/browserless can connect to it
|
|
|
|
|
docker run --rm --name "changedet" -e "FLASK_SERVER_NAME=changedet" -e "PLAYWRIGHT_DRIVER_URL=ws://browserless:3000" --network changedet-network test-changedetectionio bash -c 'cd changedetectionio;pytest --live-server-port=5004 --live-server-host=0.0.0.0 tests/restock/test_restock.py'
|
|
|
|
|
|
|
|
|
@ -106,10 +118,10 @@ jobs:
|
|
|
|
|
docker run --name test-changedetectionio -p 5556:5000 -d test-changedetectionio
|
|
|
|
|
sleep 3
|
|
|
|
|
# Should return 0 (no error) when grep finds it
|
|
|
|
|
curl -s http://localhost:5556 |grep -q checkbox-uuid
|
|
|
|
|
curl --retry-connrefused --retry 6 -s http://localhost:5556 |grep -q checkbox-uuid
|
|
|
|
|
|
|
|
|
|
# and IPv6
|
|
|
|
|
curl -s -g -6 "http://[::1]:5556"|grep -q checkbox-uuid
|
|
|
|
|
curl --retry-connrefused --retry 6 -s -g -6 "http://[::1]:5556"|grep -q checkbox-uuid
|
|
|
|
|
|
|
|
|
|
# Check whether TRACE log is enabled.
|
|
|
|
|
# Also, check whether TRACE is came from STDERR
|
|
|
|
|