108 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			Gherkin
		
	
	
	
	
	
			
		
		
	
	
			108 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			Gherkin
		
	
	
	
	
	
| Feature: cache_restore
 | |
|   Scenario: print version (-V flag)
 | |
|     When I run cache_restore with -V
 | |
|     Then it should pass with version
 | |
| 
 | |
|   Scenario: print version (--version flag)
 | |
|     When I run cache_restore with --version
 | |
|     Then it should pass with version
 | |
| 
 | |
|   Scenario: print help (-h)
 | |
|     When I run cache_restore with -h
 | |
|     Then it should pass
 | |
|     And the output should contain exactly:
 | |
| 
 | |
|     """
 | |
|     Usage: cache_restore [options]
 | |
|     Options:
 | |
|       {-h|--help}
 | |
|       {-i|--input} <input xml file>
 | |
|       {-o|--output} <output device or file>
 | |
|       {-q|--quiet}
 | |
|       {-V|--version}
 | |
| 
 | |
|       {--debug-override-metadata-version} <integer>
 | |
|       {--omit-clean-shutdown}
 | |
| 
 | |
|     """
 | |
| 
 | |
|   Scenario: print help (--help)
 | |
|     When I run cache_restore with -h
 | |
|     Then it should pass
 | |
|     And the output should contain exactly:
 | |
| 
 | |
|     """
 | |
|     Usage: cache_restore [options]
 | |
|     Options:
 | |
|       {-h|--help}
 | |
|       {-i|--input} <input xml file>
 | |
|       {-o|--output} <output device or file>
 | |
|       {-q|--quiet}
 | |
|       {-V|--version}
 | |
| 
 | |
|       {--debug-override-metadata-version} <integer>
 | |
|       {--omit-clean-shutdown}
 | |
| 
 | |
|     """
 | |
| 
 | |
|   Scenario: missing input file
 | |
|     Given the dev file metadata.bin
 | |
|     When I run cache_restore with -o metadata.bin
 | |
|     Then it should fail with:
 | |
|     """
 | |
|     No input file provided.
 | |
|     """
 | |
| 
 | |
|   Scenario: input file not found
 | |
|     Given the dev file metadata.bin
 | |
|     When I run cache_restore with -i foo.xml -o metadata.bin
 | |
|     Then it should fail
 | |
| 
 | |
|   Scenario: missing output file
 | |
|     When I run cache_restore with -i metadata.xml
 | |
|     Then it should fail with:
 | |
|     """
 | |
|     No output file provided.
 | |
|     """
 | |
| 
 | |
|   Scenario: successfully restores a valid xml file
 | |
|     Given a small xml file
 | |
|     And an empty dev file
 | |
|     When I run cache_restore with -i metadata.xml -o metadata.bin
 | |
|     Then it should pass
 | |
| 
 | |
|   Scenario: accepts --debug-override-metadata-version
 | |
|     Given a small xml file
 | |
|     And an empty dev file
 | |
|     When I run cache_restore with -i metadata.xml -o metadata.bin --debug-override-metadata-version 10298
 | |
|     Then it should pass
 | |
| 
 | |
|   Scenario: accepts --omit-clean-shutdown
 | |
|     Given a small xml file
 | |
|     And an empty dev file
 | |
|     When I run cache_restore with -i metadata.xml -o metadata.bin --omit-clean-shutdown
 | |
|     Then it should pass
 | |
| 
 | |
|   Scenario: --quiet is accepted
 | |
|     Given valid cache metadata
 | |
|     When I run cache_restore with -i metadata.xml -o metadata.bin --quiet
 | |
|     Then it should pass
 | |
|     And the output should contain exactly:
 | |
|     """
 | |
|     """
 | |
| 
 | |
|   Scenario: -q is accepted
 | |
|     Given valid cache metadata
 | |
|     When I run cache_restore with -i metadata.xml -o metadata.bin -q
 | |
|     Then it should pass
 | |
|     And the output should contain exactly:
 | |
|     """
 | |
|     """
 | |
| 
 | |
|   Scenario: dump/restore is a noop
 | |
|     Given valid cache metadata
 | |
|     When I cache dump
 | |
|     And I cache restore
 | |
|     And I cache dump
 | |
|     Then dumps 1 and 2 should be identical
 |