mirror of
				https://gitlab.freedesktop.org/wayland/wayland.git
				synced 2025-11-03 09:01:42 -05:00 
			
		
		
		
	
		
			
	
	
		
			52 lines
		
	
	
	
		
			1.3 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
		
		
			
		
	
	
			52 lines
		
	
	
	
		
			1.3 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
| 
								 | 
							
								#!/bin/sh
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								echo "srcdir: $srcdir"
							 | 
						||
| 
								 | 
							
								echo "scanner: $WAYLAND_SCANNER"
							 | 
						||
| 
								 | 
							
								echo "test_data_dir: $TEST_DATA_DIR"
							 | 
						||
| 
								 | 
							
								echo "test_output_dir: $TEST_OUTPUT_DIR"
							 | 
						||
| 
								 | 
							
								echo "pwd: $PWD"
							 | 
						||
| 
								 | 
							
								echo "sed: $SED"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								RETCODE=0
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								hard_fail() {
							 | 
						||
| 
								 | 
							
									echo "$@" "ERROR"
							 | 
						||
| 
								 | 
							
									exit 99
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								fail() {
							 | 
						||
| 
								 | 
							
									echo "$@" "FAIL"
							 | 
						||
| 
								 | 
							
									RETCODE=1
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								mkdir -p "$TEST_OUTPUT_DIR" || hard_fail "setup"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								generate_and_compare() {
							 | 
						||
| 
								 | 
							
									echo
							 | 
						||
| 
								 | 
							
									echo "Testing $1 generation: $2 -> $3"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									"$WAYLAND_SCANNER" $1 < "$TEST_DATA_DIR/$2" > "$TEST_OUTPUT_DIR/$3" || \
							 | 
						||
| 
								 | 
							
										hard_fail "$2 -> $3"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									"$SED" -i -e 's/Generated by wayland-scanner [0-9.]*/SCANNER TEST/' \
							 | 
						||
| 
								 | 
							
										"$TEST_OUTPUT_DIR/$3" || hard_fail "$2 -> $3"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									diff -q "$TEST_DATA_DIR/$3" "$TEST_OUTPUT_DIR/$3" && \
							 | 
						||
| 
								 | 
							
										echo "$2 -> $3 PASS" || \
							 | 
						||
| 
								 | 
							
										fail "$2 -> $3"
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								generate_and_compare "code" "example.xml" "example-code.c"
							 | 
						||
| 
								 | 
							
								generate_and_compare "client-header" "example.xml" "example-client.h"
							 | 
						||
| 
								 | 
							
								generate_and_compare "server-header" "example.xml" "example-server.h"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								generate_and_compare "code" "small.xml" "small-code.c"
							 | 
						||
| 
								 | 
							
								generate_and_compare "client-header" "small.xml" "small-client.h"
							 | 
						||
| 
								 | 
							
								generate_and_compare "server-header" "small.xml" "small-server.h"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								generate_and_compare "-c code" "small.xml" "small-code-core.c"
							 | 
						||
| 
								 | 
							
								generate_and_compare "-c client-header" "small.xml" "small-client-core.h"
							 | 
						||
| 
								 | 
							
								generate_and_compare "-c server-header" "small.xml" "small-server-core.h"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								exit $RETCODE
							 |