mirror of
				https://github.com/RGBCube/serenity
				synced 2025-10-31 10:12:45 +00:00 
			
		
		
		
	 7e75a16e6f
			
		
	
	
		7e75a16e6f
		
	
	
	
	
		
			
			This can also be tripped when the change was simply not being committed, avoid confusing the author by simply mentioning that.
		
			
				
	
	
		
			25 lines
		
	
	
	
		
			795 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable file
		
	
	
	
	
			
		
		
	
	
			25 lines
		
	
	
	
		
			795 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable file
		
	
	
	
	
| #!/usr/bin/env bash
 | |
| 
 | |
| set -eo pipefail
 | |
| 
 | |
| script_path=$(cd -P -- "$(dirname -- "$0")" && pwd -P)
 | |
| cd "${script_path}/.."
 | |
| 
 | |
| MISSING_FILES=n
 | |
| 
 | |
| while IFS= read -r FILENAME; do
 | |
|     # Simply search whether the CMakeLists.txt *ever* mention the test files.
 | |
|     if ! grep -qP "${FILENAME}" Tests/AK/CMakeLists.txt ; then
 | |
|         echo "Tests/AK/CMakeLists.txt is either missing the test file ${FILENAME} or is not in the commit's staged changes"
 | |
|         MISSING_FILES=y
 | |
|     fi
 | |
| done < <(
 | |
|     git ls-files 'Tests/AK/Test*.cpp' | xargs -i basename {}
 | |
| )
 | |
| 
 | |
| if [ "n" != "${MISSING_FILES}" ] ; then
 | |
|     echo "Some files are missing from the Tests/AK/CMakeLists.txt."
 | |
|     echo "If a new test file is being added, ensure it is in the CMakeLists.txt."
 | |
|     echo "This ensures the new tests are always run."
 | |
|     exit 1
 | |
| fi
 |