36 lines
		
	
	
	
		
			859 B
		
	
	
	
		
			Bash
		
	
	
	
	
	
			
		
		
	
	
			36 lines
		
	
	
	
		
			859 B
		
	
	
	
		
			Bash
		
	
	
	
	
	
source common.sh
 | 
						|
 | 
						|
clearStore
 | 
						|
 | 
						|
export IMPURE_VAR1=foo
 | 
						|
export IMPURE_VAR2=bar
 | 
						|
 | 
						|
echo 'testing good...'
 | 
						|
drvs=$($nixinstantiate fixed.nix -A good)
 | 
						|
echo $drvs
 | 
						|
$nixstore -r $drvs
 | 
						|
 | 
						|
echo 'testing good2...'
 | 
						|
drvs=$($nixinstantiate fixed.nix -A good2)
 | 
						|
echo $drvs
 | 
						|
$nixstore -r $drvs
 | 
						|
 | 
						|
echo 'testing bad...'
 | 
						|
drvs=$($nixinstantiate fixed.nix -A bad)
 | 
						|
echo $drvs
 | 
						|
if $nixstore -r $drvs; then false; fi
 | 
						|
 | 
						|
echo 'testing reallyBad...'
 | 
						|
if $nixinstantiate fixed.nix -A reallyBad; then false; fi
 | 
						|
 | 
						|
# While we're at it, check attribute selection a bit more.
 | 
						|
echo 'testing attribute selection...'
 | 
						|
test $($nixinstantiate fixed.nix -A good.1 | wc -l) = 1
 | 
						|
 | 
						|
# Test parallel builds of derivations that produce the same output.
 | 
						|
# Only one should run at the same time.
 | 
						|
echo 'testing parallelSame...'
 | 
						|
clearStore
 | 
						|
drvs=$($nixinstantiate fixed.nix -A parallelSame)
 | 
						|
echo $drvs
 | 
						|
$nixstore -r $drvs -j2
 |