mirror of
				https://github.com/YosysHQ/yosys
				synced 2025-10-31 03:32:29 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			42 lines
		
	
	
	
		
			970 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable file
		
	
	
	
	
			
		
		
	
	
			42 lines
		
	
	
	
		
			970 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable file
		
	
	
	
	
| #!/usr/bin/env bash
 | |
| 
 | |
| fail() {
 | |
| 	echo "$1" >&2
 | |
| 	exit 1
 | |
| }
 | |
| 
 | |
| runTest() {
 | |
| 	desc="$1"
 | |
| 	want="$2"
 | |
| 	shift 2
 | |
| 	echo "running '$desc' with args $@"
 | |
| 	output=`../../yosys -q "$@" 2>&1`
 | |
| 	if [ $? -ne 1 ]; then
 | |
| 		fail "exit code for '$desc' was not 1"
 | |
| 	fi
 | |
| 	if [ "$output" != "$want" ]; then
 | |
| 		fail "output for '$desc' did not match"
 | |
| 	fi
 | |
| }
 | |
| 
 | |
| unmet() {
 | |
| 	kind=$1
 | |
| 	runTest "unmet $kind" \
 | |
| 		"ERROR: Expected $kind pattern 'foobar' not found !" \
 | |
| 		-p "logger -expect $kind \"foobar\" 1"
 | |
| }
 | |
| 
 | |
| unmet log
 | |
| unmet warning
 | |
| unmet error
 | |
| 
 | |
| runTest "too many logs" \
 | |
| 	"ERROR: Expected log pattern 'statistics' found 2 time(s), instead of 1 time(s) !" \
 | |
| 	-p "logger -expect log \"statistics\" 1" -p stat -p stat
 | |
| 
 | |
| runTest "too many warnings" \
 | |
| 	"Warning: Found log message matching -W regex:
 | |
| Printing statistics.
 | |
| ERROR: Expected warning pattern 'statistics' found 2 time(s), instead of 1 time(s) !" \
 | |
| 	-p "logger -warn \"Printing statistics\"" \
 | |
| 	-p "logger -expect warning \"statistics\" 1" -p stat -p stat
 |