54 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			54 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/bin/bash -e
 | |
| #
 | |
| # Run all coreos-cloudinit tests
 | |
| #   ./test
 | |
| #   ./test -v
 | |
| #
 | |
| # Run tests for one package
 | |
| #   PKG=initialize ./test
 | |
| #
 | |
| 
 | |
| # Invoke ./cover for HTML output
 | |
| COVER=${COVER:-"-cover"}
 | |
| 
 | |
| source ./build
 | |
| 
 | |
| declare -a TESTPKGS=(initialize
 | |
|                      system
 | |
|                      datasource
 | |
|                      datasource/configdrive
 | |
|                      datasource/file
 | |
|                      datasource/metadata
 | |
|                      datasource/metadata/cloudsigma
 | |
|                      datasource/metadata/digitalocean
 | |
|                      datasource/metadata/ec2
 | |
|                      datasource/proc_cmdline
 | |
|                      datasource/url
 | |
|                      pkg
 | |
|                      network)
 | |
| 
 | |
| if [ -z "$PKG" ]; then
 | |
| 	GOFMTPATH="${TESTPKGS[*]} coreos-cloudinit.go"
 | |
| 	# prepend repo path to each package
 | |
| 	TESTPKGS="${TESTPKGS[*]/#/${REPO_PATH}/} ./"
 | |
| else
 | |
| 	GOFMTPATH="$TESTPKGS"
 | |
| 	# strip out slashes and dots from PKG=./foo/
 | |
| 	TESTPKGS=${PKG//\//}
 | |
| 	TESTPKGS=${TESTPKGS//./}
 | |
| 	TESTPKGS=${TESTPKGS/#/${REPO_PATH}/}
 | |
| fi
 | |
| 
 | |
| echo "Running tests..."
 | |
| go test -i ${TESTPKGS}
 | |
| go test ${COVER} $@ ${TESTPKGS}
 | |
| 
 | |
| echo "Checking gofmt..."
 | |
| fmtRes=$(gofmt -l $GOFMTPATH)
 | |
| if [ -n "$fmtRes" ]; then
 | |
| 	echo "$fmtRes"
 | |
| 	exit 1
 | |
| fi
 | |
| 
 | |
| echo "Success"
 |