From 2826aa4c7f9b6d8c9ebac30c084160e10365ef55 Mon Sep 17 00:00:00 2001
From: Markus Reiter <me@reitermark.us>
Date: Sat, 25 Feb 2017 20:28:38 +0100
Subject: [PATCH] Convert BuildOptions test to spec.

---
 Library/Homebrew/test/build_options_spec.rb | 52 +++++++++++++++++++++
 Library/Homebrew/test/build_options_test.rb | 50 --------------------
 Library/Homebrew/test/tab_spec.rb           | 10 ++--
 3 files changed, 57 insertions(+), 55 deletions(-)
 create mode 100644 Library/Homebrew/test/build_options_spec.rb
 delete mode 100644 Library/Homebrew/test/build_options_test.rb

diff --git a/Library/Homebrew/test/build_options_spec.rb b/Library/Homebrew/test/build_options_spec.rb
new file mode 100644
index 0000000000..5acc12f30a
--- /dev/null
+++ b/Library/Homebrew/test/build_options_spec.rb
@@ -0,0 +1,52 @@
+require "build_options"
+require "options"
+
+RSpec::Matchers.alias_matcher :be_built_with, :be_with
+RSpec::Matchers.alias_matcher :be_built_without, :be_without
+
+describe BuildOptions do
+  subject { described_class.new(args, opts) }
+  let(:bad_build) { described_class.new(bad_args, opts) }
+  let(:args) { Options.create(%w[--with-foo --with-bar --without-qux]) }
+  let(:opts) { Options.create(%w[--with-foo --with-bar --without-baz --without-qux]) }
+  let(:bad_args) { Options.create(%w[--with-foo --with-bar --without-bas --without-qux --without-abc]) }
+
+  specify "#include?" do
+    expect(subject).to include("with-foo")
+    expect(subject).not_to include("with-qux")
+    expect(subject).not_to include("--with-foo")
+  end
+
+  specify "#with?" do
+    expect(subject).to be_built_with("foo")
+    expect(subject).to be_built_with("bar")
+    expect(subject).to be_built_with("baz")
+  end
+
+  specify "#without?" do
+    expect(subject).to be_built_without("qux")
+    expect(subject).to be_built_without("xyz")
+  end
+
+  specify "#used_options" do
+    expect(subject.used_options).to include("--with-foo")
+    expect(subject.used_options).to include("--with-bar")
+  end
+
+  specify "#unused_options" do
+    expect(subject.unused_options).to include("--without-baz")
+  end
+
+  specify "#invalid_options" do
+    expect(subject.invalid_options).to be_empty
+    expect(bad_build.invalid_options).to include("--without-bas")
+    expect(bad_build.invalid_options).to include("--without-abc")
+    expect(bad_build.invalid_options).not_to include("--with-foo")
+    expect(bad_build.invalid_options).not_to include("--with-baz")
+  end
+
+  specify "#invalid_option_names" do
+    expect(subject.invalid_option_names).to be_empty
+    expect(bad_build.invalid_option_names).to eq(%w[--without-abc --without-bas])
+  end
+end
diff --git a/Library/Homebrew/test/build_options_test.rb b/Library/Homebrew/test/build_options_test.rb
deleted file mode 100644
index 05e7ccd947..0000000000
--- a/Library/Homebrew/test/build_options_test.rb
+++ /dev/null
@@ -1,50 +0,0 @@
-require "testing_env"
-require "build_options"
-require "options"
-
-class BuildOptionsTests < Homebrew::TestCase
-  def setup
-    super
-    args = Options.create(%w[--with-foo --with-bar --without-qux])
-    opts = Options.create(%w[--with-foo --with-bar --without-baz --without-qux])
-    @build = BuildOptions.new(args, opts)
-    bad_args = Options.create(%w[--with-foo --with-bar --without-bas --without-qux --without-abc])
-    @bad_build = BuildOptions.new(bad_args, opts)
-  end
-
-  def test_include
-    assert_includes @build, "with-foo"
-    refute_includes @build, "with-qux"
-    refute_includes @build, "--with-foo"
-  end
-
-  def test_with_without
-    assert @build.with?("foo")
-    assert @build.with?("bar")
-    assert @build.with?("baz")
-    assert @build.without?("qux")
-    assert @build.without?("xyz")
-  end
-
-  def test_used_options
-    assert_includes @build.used_options, "--with-foo"
-    assert_includes @build.used_options, "--with-bar"
-  end
-
-  def test_unused_options
-    assert_includes @build.unused_options, "--without-baz"
-  end
-
-  def test_invalid_options
-    assert_empty @build.invalid_options
-    assert_includes @bad_build.invalid_options, "--without-bas"
-    assert_includes @bad_build.invalid_options, "--without-abc"
-    refute_includes @bad_build.invalid_options, "--with-foo"
-    refute_includes @bad_build.invalid_options, "--with-baz"
-  end
-
-  def test_invalid_option_names
-    assert_empty @build.invalid_option_names
-    assert_equal @bad_build.invalid_option_names, %w[--without-abc --without-bas]
-  end
-end
diff --git a/Library/Homebrew/test/tab_spec.rb b/Library/Homebrew/test/tab_spec.rb
index 32a06a6815..01dbeb67cc 100644
--- a/Library/Homebrew/test/tab_spec.rb
+++ b/Library/Homebrew/test/tab_spec.rb
@@ -1,7 +1,7 @@
 require "tab"
 require "formula"
 
-RSpec::Matchers.alias_matcher :have_option_with, :be_with
+RSpec::Matchers.alias_matcher :be_built_with, :be_with
 
 describe Tab do
   matcher :be_poured_from_bottle do
@@ -80,10 +80,10 @@ describe Tab do
   end
 
   specify "#with?" do
-    expect(subject).to have_option_with("foo")
-    expect(subject).to have_option_with("qux")
-    expect(subject).not_to have_option_with("bar")
-    expect(subject).not_to have_option_with("baz")
+    expect(subject).to be_built_with("foo")
+    expect(subject).to be_built_with("qux")
+    expect(subject).not_to be_built_with("bar")
+    expect(subject).not_to be_built_with("baz")
   end
 
   specify "#universal?" do
-- 
GitLab