tests: Add (failing) tests for reported --dry-run issues.
This commit is contained in:
		
							parent
							
								
									f201b7733e
								
							
						
					
					
						commit
						3780435a0e
					
				
					 2 changed files with 50 additions and 0 deletions
				
			
		
							
								
								
									
										49
									
								
								tests/build-dry.sh
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										49
									
								
								tests/build-dry.sh
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,49 @@
 | 
				
			||||||
 | 
					source common.sh
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					###################################################
 | 
				
			||||||
 | 
					# Check that --dry-run isn't confused with read-only mode
 | 
				
			||||||
 | 
					# https://github.com/NixOS/nix/issues/1795
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					clearStore
 | 
				
			||||||
 | 
					clearCache
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Ensure this builds successfully first
 | 
				
			||||||
 | 
					nix build -f dependencies.nix
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					clearStore
 | 
				
			||||||
 | 
					clearCache
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Try --dry-run using old command first
 | 
				
			||||||
 | 
					nix-build dependencies.nix --dry-run 2>&1 | grep "will be built"
 | 
				
			||||||
 | 
					# Now new command:
 | 
				
			||||||
 | 
					nix build -f dependencies.nix --dry-run 2>&1 | grep "will be built"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					clearStore
 | 
				
			||||||
 | 
					clearCache
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Try --dry-run using new command first
 | 
				
			||||||
 | 
					nix build -f dependencies.nix --dry-run 2>&1 | grep "will be built"
 | 
				
			||||||
 | 
					# Now old command:
 | 
				
			||||||
 | 
					nix-build dependencies.nix --dry-run 2>&1 | grep "will be built"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					###################################################
 | 
				
			||||||
 | 
					# Check --dry-run doesn't create links with --dry-run
 | 
				
			||||||
 | 
					# https://github.com/NixOS/nix/issues/1849
 | 
				
			||||||
 | 
					clearStore
 | 
				
			||||||
 | 
					clearCache
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					RESULT=$TEST_ROOT/result-link
 | 
				
			||||||
 | 
					rm -f $RESULT
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					nix-build dependencies.nix -o $RESULT --dry-run
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[ ! -h $RESULT ]] || fail "nix-build --dry-run created output link"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					nix build -f dependencies.nix -o $RESULT --dry-run
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[ ! -h $RESULT ]] || fail "nix build --dry-run created output link"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					nix build -f dependencies.nix -o $RESULT
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[ -h $RESULT ]]
 | 
				
			||||||
| 
						 | 
					@ -13,6 +13,7 @@ nix_tests = \
 | 
				
			||||||
  check-reqs.sh pass-as-file.sh tarball.sh restricted.sh \
 | 
					  check-reqs.sh pass-as-file.sh tarball.sh restricted.sh \
 | 
				
			||||||
  placeholders.sh nix-shell.sh \
 | 
					  placeholders.sh nix-shell.sh \
 | 
				
			||||||
  linux-sandbox.sh \
 | 
					  linux-sandbox.sh \
 | 
				
			||||||
 | 
					  build-dry.sh \
 | 
				
			||||||
  build-remote.sh \
 | 
					  build-remote.sh \
 | 
				
			||||||
  nar-access.sh \
 | 
					  nar-access.sh \
 | 
				
			||||||
  structured-attrs.sh \
 | 
					  structured-attrs.sh \
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue