49 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Ruby
		
	
	
	
	
	
		
		
			
		
	
	
			49 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Ruby
		
	
	
	
	
	
| 
								 | 
							
								# frozen_string_literal: true
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								require "bottle_publisher"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								describe BottlePublisher do
							 | 
						||
| 
								 | 
							
								  subject(:bottle_publisher) {
							 | 
						||
| 
								 | 
							
								    described_class.new(
							 | 
						||
| 
								 | 
							
								      CoreTap.instance, ["#{CoreTap.instance.name}/hello.rb"], "homebrew", false, false
							 | 
						||
| 
								 | 
							
								    )
							 | 
						||
| 
								 | 
							
								  }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  let(:tap) { CoreTap.new }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  describe "publish_and_check_bottles" do
							 | 
						||
| 
								 | 
							
								    it "fails if HOMEBREW_DISABLE_LOAD_FORMULA is set to 1" do
							 | 
						||
| 
								 | 
							
								      ENV["HOMEBREW_DISABLE_LOAD_FORMULA"] = "1"
							 | 
						||
| 
								 | 
							
								      expect { bottle_publisher.publish_and_check_bottles }
							 | 
						||
| 
								 | 
							
								        .to raise_error("Need to load formulae to publish them!")
							 | 
						||
| 
								 | 
							
								    end
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    it "returns nil because HOMEBREW_BINTRAY_USER and HOMEBREW_BINTRAY_KEY are not set" do
							 | 
						||
| 
								 | 
							
								      ENV["HOMEBREW_BINTRAY_USER"] = nil
							 | 
						||
| 
								 | 
							
								      ENV["HOMEBREW_BINTRAY_KEY"] = nil
							 | 
						||
| 
								 | 
							
								      expect(bottle_publisher.publish_and_check_bottles)
							 | 
						||
| 
								 | 
							
								        .to eq nil
							 | 
						||
| 
								 | 
							
								    end
							 | 
						||
| 
								 | 
							
								  end
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  describe "verify_bintray_published" do
							 | 
						||
| 
								 | 
							
								    it "returns nil if no formula has been defined" do
							 | 
						||
| 
								 | 
							
								      expect(bottle_publisher.verify_bintray_published([]))
							 | 
						||
| 
								 | 
							
								        .to eq nil
							 | 
						||
| 
								 | 
							
								    end
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    it "fails if HOMEBREW_DISABLE_LOAD_FORMULA is set to 1" do
							 | 
						||
| 
								 | 
							
								      ENV["HOMEBREW_DISABLE_LOAD_FORMULA"] = "1"
							 | 
						||
| 
								 | 
							
								      stub_formula_loader(formula("foo") { url "foo-1.0" })
							 | 
						||
| 
								 | 
							
								      expect { bottle_publisher.verify_bintray_published(["foo"]) }
							 | 
						||
| 
								 | 
							
								        .to raise_error("Need to load formulae to verify their publication!")
							 | 
						||
| 
								 | 
							
								    end
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    it "checks if a bottle has been published" do
							 | 
						||
| 
								 | 
							
								      stub_formula_loader(formula("foo") { url "foo-1.0" })
							 | 
						||
| 
								 | 
							
								      expect { bottle_publisher.verify_bintray_published(["foo"]) }
							 | 
						||
| 
								 | 
							
								        .to output("Warning: Cannot publish bottle: Failed reading info for formula foo\n").to_stderr
							 | 
						||
| 
								 | 
							
								    end
							 | 
						||
| 
								 | 
							
								  end
							 | 
						||
| 
								 | 
							
								end
							 |