kopia lustrzana https://github.com/dgtlmoon/changedetection.io
				
				
				
			
		
			
				
	
	
		
			51 wiersze
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
			
		
		
	
	
			51 wiersze
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
| #!/bin/bash
 | |
| 
 | |
| 
 | |
| # live_server will throw errors even with live_server_scope=function if I have the live_server setup in different functions
 | |
| # and I like to restart the server for each test (and have the test cleanup after each test)
 | |
| # merge request welcome :)
 | |
| 
 | |
| 
 | |
| # exit when any command fails
 | |
| set -e
 | |
| 
 | |
| find tests/test_*py -type f|while read test_name
 | |
| do
 | |
|   echo "TEST RUNNING $test_name"
 | |
|   pytest $test_name
 | |
| done
 | |
| 
 | |
| echo "RUNNING WITH BASE_URL SET"
 | |
| 
 | |
| # Now re-run some tests with BASE_URL enabled
 | |
| # Re #65 - Ability to include a link back to the installation, in the notification.
 | |
| export BASE_URL="https://really-unique-domain.io"
 | |
| pytest tests/test_notification.py
 | |
| 
 | |
| 
 | |
| # Now for the selenium and playwright/browserless fetchers
 | |
| # Note - this is not UI functional tests - just checking that each one can fetch the content
 | |
| 
 | |
| echo "TESTING WEBDRIVER FETCH > SELENIUM/WEBDRIVER..."
 | |
| docker run -d --name $$-test_selenium  -p 4444:4444 --rm --shm-size="2g"  selenium/standalone-chrome-debug:3.141.59
 | |
| # takes a while to spin up
 | |
| sleep 5
 | |
| export WEBDRIVER_URL=http://localhost:4444/wd/hub
 | |
| pytest tests/fetchers/test_content.py
 | |
| pytest tests/test_errorhandling.py
 | |
| unset WEBDRIVER_URL
 | |
| docker kill $$-test_selenium
 | |
| 
 | |
| echo "TESTING WEBDRIVER FETCH > PLAYWRIGHT/BROWSERLESS..."
 | |
| # Not all platforms support playwright (not ARM/rPI), so it's not packaged in requirements.txt
 | |
| pip3 install playwright~=1.24
 | |
| docker run -d --name $$-test_browserless -e "DEFAULT_LAUNCH_ARGS=[\"--window-size=1920,1080\"]" --rm  -p 3000:3000  --shm-size="2g"  browserless/chrome:1.53-chrome-stable
 | |
| # takes a while to spin up
 | |
| sleep 5
 | |
| export PLAYWRIGHT_DRIVER_URL=ws://127.0.0.1:3000
 | |
| pytest tests/fetchers/test_content.py
 | |
| pytest tests/test_errorhandling.py
 | |
| pytest tests/visualselector/test_fetch_data.py
 | |
| 
 | |
| unset PLAYWRIGHT_DRIVER_URL
 | |
| docker kill $$-test_browserless |