From c8d164412d924e8412bc26a653397edba53693fd Mon Sep 17 00:00:00 2001
From: Markus Reiter <me@reitermark.us>
Date: Wed, 8 Feb 2017 07:58:02 +0100
Subject: [PATCH] Convert `Hbc::UrlChecker` test to spec.

---
 .../cask/spec/cask/url_checker_spec.rb        | 44 ++++++++++++++++
 .../cask/test/cask/url_checker_test.rb        | 51 -------------------
 2 files changed, 44 insertions(+), 51 deletions(-)
 create mode 100644 Library/Homebrew/cask/spec/cask/url_checker_spec.rb
 delete mode 100644 Library/Homebrew/cask/test/cask/url_checker_test.rb

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 0000000000..3b46bc587e
--- /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
diff --git a/Library/Homebrew/cask/test/cask/url_checker_test.rb b/Library/Homebrew/cask/test/cask/url_checker_test.rb
deleted file mode 100644
index afd4532ddd..0000000000
--- a/Library/Homebrew/cask/test/cask/url_checker_test.rb
+++ /dev/null
@@ -1,51 +0,0 @@
-require "test_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) }
-    let(:with_stubbed_fetcher) {
-      lambda { |&block|
-        Hbc::Fetcher.stub(:head, response) do
-          checker.run
-          instance_eval(&block)
-        end
-      }
-    }
-
-    describe "with an empty response" do
-      let(:response) { "" }
-
-      it "adds an error" do
-        with_stubbed_fetcher.call do
-          expect(checker.errors).must_include("timeout while requesting #{cask.url}")
-        end
-      end
-    end
-
-    describe "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
-        with_stubbed_fetcher.call do
-          expect(checker.errors).must_be_empty
-          expect(checker.response_status).must_equal("HTTP/1.1 200 OK")
-          expect(checker.headers).must_equal(
-            "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
-end
-- 
GitLab