58 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Ruby
		
	
	
	
	
	
			
		
		
	
	
			58 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Ruby
		
	
	
	
	
	
| describe Hbc::CLI::Cat, :cask do
 | |
|   describe "given a basic Cask" do
 | |
|     let(:expected_output) {
 | |
|       <<-EOS.undent
 | |
|         cask 'basic-cask' do
 | |
|           version '1.2.3'
 | |
|           sha256 '8c62a2b791cf5f0da6066a0a4b6e85f62949cd60975da062df44adf887f4370b'
 | |
| 
 | |
|           url 'http://example.com/TestCask.dmg'
 | |
|           homepage 'http://example.com/'
 | |
| 
 | |
|           app 'TestCask.app'
 | |
|         end
 | |
|       EOS
 | |
|     }
 | |
| 
 | |
|     it "displays the Cask file content about the specified Cask" do
 | |
|       expect {
 | |
|         Hbc::CLI::Cat.run("basic-cask")
 | |
|       }.to output(expected_output).to_stdout
 | |
|     end
 | |
| 
 | |
|     it "throws away additional Cask arguments and uses the first" do
 | |
|       expect {
 | |
|         Hbc::CLI::Cat.run("basic-cask", "local-caffeine")
 | |
|       }.to output(expected_output).to_stdout
 | |
|     end
 | |
| 
 | |
|     it "throws away stray options" do
 | |
|       expect {
 | |
|         Hbc::CLI::Cat.run("--notavalidoption", "basic-cask")
 | |
|       }.to output(expected_output).to_stdout
 | |
|     end
 | |
|   end
 | |
| 
 | |
|   it "raises an exception when the Cask does not exist" do
 | |
|     expect {
 | |
|       Hbc::CLI::Cat.run("notacask")
 | |
|     }.to raise_error(Hbc::CaskUnavailableError)
 | |
|   end
 | |
| 
 | |
|   describe "when no Cask is specified" do
 | |
|     it "raises an exception" do
 | |
|       expect {
 | |
|         Hbc::CLI::Cat.run
 | |
|       }.to raise_error(Hbc::CaskUnspecifiedError)
 | |
|     end
 | |
|   end
 | |
| 
 | |
|   describe "when no Cask is specified, but an invalid option" do
 | |
|     it "raises an exception" do
 | |
|       expect {
 | |
|         Hbc::CLI::Cat.run("--notavalidoption")
 | |
|       }.to raise_error(Hbc::CaskUnspecifiedError)
 | |
|     end
 | |
|   end
 | |
| end
 | 
