27 lines
		
	
	
		
			652 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			27 lines
		
	
	
		
			652 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
#!/bin/bash
 | 
						|
 | 
						|
# This script runs all package tests and merges the resulting coverage
 | 
						|
# profiles. Coverage is accounted per package under test.
 | 
						|
 | 
						|
set -e
 | 
						|
 | 
						|
if [ ! -f "build/env.sh" ]; then
 | 
						|
    echo "$0 must be run from the root of the repository."
 | 
						|
    exit 2
 | 
						|
fi
 | 
						|
 | 
						|
echo "mode: count" > profile.cov
 | 
						|
 | 
						|
for pkg in $(go list ./...); do
 | 
						|
    # drop the namespace prefix.
 | 
						|
    dir=${pkg##github.com/ethereum/go-ethereum/}
 | 
						|
    
 | 
						|
    if [[ $dir != "tests" ]]; then
 | 
						|
        go test -covermode=count -coverprofile=$dir/profile.tmp $pkg
 | 
						|
    fi
 | 
						|
    if [[ -f $dir/profile.tmp ]]; then
 | 
						|
        tail -n +2 $dir/profile.tmp >> profile.cov
 | 
						|
        rm $dir/profile.tmp
 | 
						|
    fi
 | 
						|
done
 |