aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Homebrew/cask/spec
diff options
context:
space:
mode:
authorMarkus Reiter2017-02-08 07:58:02 +0100
committerMarkus Reiter2017-02-10 17:19:19 +0100
commitc8d164412d924e8412bc26a653397edba53693fd (patch)
tree3d4cd8550373c077a961720f37bd894c85862510 /Library/Homebrew/cask/spec
parentfe0b68a5ad76bc3a91518f54a97bdd7a9144eda5 (diff)
downloadbrew-c8d164412d924e8412bc26a653397edba53693fd.tar.bz2
Convert `Hbc::UrlChecker` test to spec.
Diffstat (limited to 'Library/Homebrew/cask/spec')
-rw-r--r--Library/Homebrew/cask/spec/cask/url_checker_spec.rb44
1 files changed, 44 insertions, 0 deletions
diff --git a/Library/Homebrew/cask/spec/cask/url_checker_spec.rb b/Library/Homebrew/cask/spec/cask/url_checker_spec.rb
new file mode 100644
index 000000000..3b46bc587
--- /dev/null
+++ b/Library/Homebrew/cask/spec/cask/url_checker_spec.rb
@@ -0,0 +1,44 @@
+require "spec_helper"
+
+describe Hbc::UrlChecker do
+ describe "request processing" do
+ let(:cask) { Hbc::CaskLoader.load_from_file(TEST_FIXTURE_DIR/"cask/Casks/basic-cask.rb") }
+ let(:checker) { Hbc::UrlChecker.new(cask) }
+
+ before(:each) do
+ allow(Hbc::Fetcher).to receive(:head).and_return(response)
+ checker.run
+ end
+
+ context "with an empty response" do
+ let(:response) { "" }
+
+ it "adds an error" do
+ expect(checker.errors).to include("timeout while requesting #{cask.url}")
+ end
+ end
+
+ context "with a valid http response" do
+ let(:response) {
+ <<-EOS.undent
+ HTTP/1.1 200 OK
+ Content-Type: application/x-apple-diskimage
+ ETag: "b4208f3e84967be4b078ecaa03fba941"
+ Content-Length: 23726161
+ Last-Modified: Sun, 12 Aug 2012 21:17:21 GMT
+ EOS
+ }
+
+ it "properly populates the response code and headers" do
+ expect(checker.errors).to be_empty
+ expect(checker.response_status).to eq("HTTP/1.1 200 OK")
+ expect(checker.headers).to eq(
+ "Content-Type" => "application/x-apple-diskimage",
+ "ETag" => '"b4208f3e84967be4b078ecaa03fba941"',
+ "Content-Length" => "23726161",
+ "Last-Modified" => "Sun, 12 Aug 2012 21:17:21 GMT"
+ )
+ end
+ end
+ end
+end