From aa44509be9206c6b269f5c8d76d9b57561cfb520 Mon Sep 17 00:00:00 2001 From: Mike McQuaid Date: Wed, 27 Mar 2019 11:49:56 +0000 Subject: [PATCH 1/3] Test dev-cmd `*_args` methods Also, add a few missing invocations. --- Library/Homebrew/dev-cmd/prof.rb | 2 ++ Library/Homebrew/dev-cmd/test.rb | 5 ++++- .../test/cmd/shared_examples/args_parse.rb | 17 +++++++++++++++++ Library/Homebrew/test/dev-cmd/audit_spec.rb | 5 +++++ Library/Homebrew/test/dev-cmd/bottle_spec.rb | 18 ++++++++++++++---- Library/Homebrew/test/dev-cmd/create_spec.rb | 6 ++++++ Library/Homebrew/test/dev-cmd/edit_spec.rb | 6 ++++++ Library/Homebrew/test/dev-cmd/extract_spec.rb | 6 ++++++ Library/Homebrew/test/dev-cmd/formula_spec.rb | 6 ++++++ Library/Homebrew/test/dev-cmd/irb_spec.rb | 6 ++++++ Library/Homebrew/test/dev-cmd/linkage_spec.rb | 6 ++++++ Library/Homebrew/test/dev-cmd/pull_spec.rb | 6 ++++++ Library/Homebrew/test/dev-cmd/ruby_spec.rb | 6 ++++++ Library/Homebrew/test/dev-cmd/tap-new_spec.rb | 6 ++++++ Library/Homebrew/test/dev-cmd/tap_spec.rb | 6 ++++++ Library/Homebrew/test/dev-cmd/test_spec.rb | 6 ++++++ Library/Homebrew/test/spec_helper.rb | 1 - 17 files changed, 108 insertions(+), 6 deletions(-) create mode 100644 Library/Homebrew/test/cmd/shared_examples/args_parse.rb diff --git a/Library/Homebrew/dev-cmd/prof.rb b/Library/Homebrew/dev-cmd/prof.rb index ce703ac9f9..80b8ae2f8d 100644 --- a/Library/Homebrew/dev-cmd/prof.rb +++ b/Library/Homebrew/dev-cmd/prof.rb @@ -14,6 +14,8 @@ module Homebrew end def prof + prof_args.parse + Homebrew.install_gem_setup_path! "ruby-prof" FileUtils.mkdir_p "prof" brew_rb = (HOMEBREW_LIBRARY_PATH/"brew.rb").resolved_path diff --git a/Library/Homebrew/dev-cmd/test.rb b/Library/Homebrew/dev-cmd/test.rb index 0cf2b8f445..8ddc98c494 100644 --- a/Library/Homebrew/dev-cmd/test.rb +++ b/Library/Homebrew/dev-cmd/test.rb @@ -1,5 +1,4 @@ require "extend/ENV" -require "formula_assertions" require "sandbox" require "timeout" require "cli_parser" @@ -31,8 +30,12 @@ module Homebrew end def test + test_args.parse + raise FormulaUnspecifiedError if ARGV.named.empty? + require "formula_assertions" + ARGV.resolved_formulae.each do |f| # Cannot test uninstalled formulae unless f.installed? diff --git a/Library/Homebrew/test/cmd/shared_examples/args_parse.rb b/Library/Homebrew/test/cmd/shared_examples/args_parse.rb new file mode 100644 index 0000000000..b95b5eb9b5 --- /dev/null +++ b/Library/Homebrew/test/cmd/shared_examples/args_parse.rb @@ -0,0 +1,17 @@ +shared_examples "parseable arguments" do + subject(:method_name) do |example| + example.metadata[:example_group][:parent_example_group][:description] + .gsub(/^Homebrew\./, "") + end + + let(:command_name) do + method_name.gsub(/_args$/, "").tr("_", "-") + end + + it "can parse arguments" do + require "dev-cmd/#{command_name}" unless require? "cmd/#{command_name}" + + expect { Homebrew.send(method_name).parse({}) } + .not_to raise_error + end +end diff --git a/Library/Homebrew/test/dev-cmd/audit_spec.rb b/Library/Homebrew/test/dev-cmd/audit_spec.rb index daf5cf6d0e..c8fd7b000e 100644 --- a/Library/Homebrew/test/dev-cmd/audit_spec.rb +++ b/Library/Homebrew/test/dev-cmd/audit_spec.rb @@ -1,5 +1,10 @@ require "dev-cmd/audit" require "formulary" +require "cmd/shared_examples/args_parse" + +describe "Homebrew.audit_args" do + it_behaves_like "parseable arguments" +end module Count def self.increment diff --git a/Library/Homebrew/test/dev-cmd/bottle_spec.rb b/Library/Homebrew/test/dev-cmd/bottle_spec.rb index 135eb507d1..4180796ea1 100644 --- a/Library/Homebrew/test/dev-cmd/bottle_spec.rb +++ b/Library/Homebrew/test/dev-cmd/bottle_spec.rb @@ -1,3 +1,9 @@ +require "cmd/shared_examples/args_parse" + +describe "Homebrew.bottle_args" do + it_behaves_like "parseable arguments" +end + describe "brew bottle", :integration_test do it "builds a bottle for the given Formula" do # create stub patchelf @@ -21,9 +27,13 @@ describe "brew bottle", :integration_test do FileUtils.ln_s "not-exist", "symlink" end - expect { brew "bottle", "--no-rebuild", "testball" } - .to output(/testball--0\.1.*\.bottle\.tar\.gz/).to_stdout - .and not_to_output.to_stderr - .and be_a_success + begin + expect { brew "bottle", "--no-rebuild", "testball" } + .to output(/testball--0\.1.*\.bottle\.tar\.gz/).to_stdout + .and not_to_output.to_stderr + .and be_a_success + ensure + FileUtils.rm_f Dir.glob("testball--0.1*.bottle.tar.gz") + end end end diff --git a/Library/Homebrew/test/dev-cmd/create_spec.rb b/Library/Homebrew/test/dev-cmd/create_spec.rb index 7c85a9f7d1..37d119c039 100644 --- a/Library/Homebrew/test/dev-cmd/create_spec.rb +++ b/Library/Homebrew/test/dev-cmd/create_spec.rb @@ -1,3 +1,9 @@ +require "cmd/shared_examples/args_parse" + +describe "Homebrew.create_args" do + it_behaves_like "parseable arguments" +end + describe "brew create", :integration_test do let(:url) { "file://#{TEST_FIXTURE_DIR}/tarballs/testball-0.1.tbz" } let(:formula_file) { CoreTap.new.formula_dir/"testball.rb" } diff --git a/Library/Homebrew/test/dev-cmd/edit_spec.rb b/Library/Homebrew/test/dev-cmd/edit_spec.rb index 3f557fcdf5..da9f7af210 100644 --- a/Library/Homebrew/test/dev-cmd/edit_spec.rb +++ b/Library/Homebrew/test/dev-cmd/edit_spec.rb @@ -1,3 +1,9 @@ +require "cmd/shared_examples/args_parse" + +describe "Homebrew.edit_args" do + it_behaves_like "parseable arguments" +end + describe "brew edit", :integration_test do it "opens a given Formula in an editor" do HOMEBREW_REPOSITORY.cd do diff --git a/Library/Homebrew/test/dev-cmd/extract_spec.rb b/Library/Homebrew/test/dev-cmd/extract_spec.rb index fe19034f0c..abff3d6d20 100644 --- a/Library/Homebrew/test/dev-cmd/extract_spec.rb +++ b/Library/Homebrew/test/dev-cmd/extract_spec.rb @@ -1,3 +1,9 @@ +require "cmd/shared_examples/args_parse" + +describe "Homebrew.extract_args" do + it_behaves_like "parseable arguments" +end + describe "brew extract", :integration_test do it "retrieves the specified version of formula, defaulting to most recent" do path = Tap::TAP_DIRECTORY/"homebrew/homebrew-foo" diff --git a/Library/Homebrew/test/dev-cmd/formula_spec.rb b/Library/Homebrew/test/dev-cmd/formula_spec.rb index cc5b3e9e84..f64817194c 100644 --- a/Library/Homebrew/test/dev-cmd/formula_spec.rb +++ b/Library/Homebrew/test/dev-cmd/formula_spec.rb @@ -1,3 +1,9 @@ +require "cmd/shared_examples/args_parse" + +describe "Homebrew.formula_args" do + it_behaves_like "parseable arguments" +end + describe "brew formula", :integration_test do it "prints a given Formula's path" do formula_file = setup_test_formula "testball" diff --git a/Library/Homebrew/test/dev-cmd/irb_spec.rb b/Library/Homebrew/test/dev-cmd/irb_spec.rb index 99522394bf..291bdc161a 100644 --- a/Library/Homebrew/test/dev-cmd/irb_spec.rb +++ b/Library/Homebrew/test/dev-cmd/irb_spec.rb @@ -1,3 +1,9 @@ +require "cmd/shared_examples/args_parse" + +describe "Homebrew.irb_args" do + it_behaves_like "parseable arguments" +end + describe "brew irb", :integration_test do it "starts an interactive Homebrew shell session" do setup_test_formula "testball" diff --git a/Library/Homebrew/test/dev-cmd/linkage_spec.rb b/Library/Homebrew/test/dev-cmd/linkage_spec.rb index b0e55104ec..7a0ffa5980 100644 --- a/Library/Homebrew/test/dev-cmd/linkage_spec.rb +++ b/Library/Homebrew/test/dev-cmd/linkage_spec.rb @@ -1,3 +1,9 @@ +require "cmd/shared_examples/args_parse" + +describe "Homebrew.linkage_args" do + it_behaves_like "parseable arguments" +end + describe "brew linkage", :integration_test do before do setup_test_formula "testball" diff --git a/Library/Homebrew/test/dev-cmd/pull_spec.rb b/Library/Homebrew/test/dev-cmd/pull_spec.rb index a13ead381d..aaf11e71f6 100644 --- a/Library/Homebrew/test/dev-cmd/pull_spec.rb +++ b/Library/Homebrew/test/dev-cmd/pull_spec.rb @@ -1,3 +1,9 @@ +require "cmd/shared_examples/args_parse" + +describe "Homebrew.pull_args" do + it_behaves_like "parseable arguments" +end + describe "brew pull", :integration_test do it "fetches a patch from a GitHub commit or pull request and applies it", :needs_network do CoreTap.instance.path.cd do diff --git a/Library/Homebrew/test/dev-cmd/ruby_spec.rb b/Library/Homebrew/test/dev-cmd/ruby_spec.rb index a6179eb3b2..0f65d6888a 100644 --- a/Library/Homebrew/test/dev-cmd/ruby_spec.rb +++ b/Library/Homebrew/test/dev-cmd/ruby_spec.rb @@ -1,3 +1,9 @@ +require "cmd/shared_examples/args_parse" + +describe "Homebrew.ruby_args" do + it_behaves_like "parseable arguments" +end + describe "brew ruby", :integration_test do it "executes ruby code with Homebrew's libraries loaded" do expect { brew "ruby", "-e", "exit 0" } diff --git a/Library/Homebrew/test/dev-cmd/tap-new_spec.rb b/Library/Homebrew/test/dev-cmd/tap-new_spec.rb index 4da0fb025e..868650c7a4 100644 --- a/Library/Homebrew/test/dev-cmd/tap-new_spec.rb +++ b/Library/Homebrew/test/dev-cmd/tap-new_spec.rb @@ -1,3 +1,9 @@ +require "cmd/shared_examples/args_parse" + +describe "Homebrew.tap_new_args" do + it_behaves_like "parseable arguments" +end + describe "brew tap-new", :integration_test do it "initializes a new Tap with a ReadMe file" do expect { brew "tap-new", "homebrew/foo", "--verbose" } diff --git a/Library/Homebrew/test/dev-cmd/tap_spec.rb b/Library/Homebrew/test/dev-cmd/tap_spec.rb index 509d63bbc9..86fd6e0398 100644 --- a/Library/Homebrew/test/dev-cmd/tap_spec.rb +++ b/Library/Homebrew/test/dev-cmd/tap_spec.rb @@ -1,3 +1,9 @@ +require "cmd/shared_examples/args_parse" + +describe "Homebrew.tap_args" do + it_behaves_like "parseable arguments" +end + describe "brew tap", :integration_test do it "taps a given Tap" do path = Tap::TAP_DIRECTORY/"homebrew/homebrew-foo" diff --git a/Library/Homebrew/test/dev-cmd/test_spec.rb b/Library/Homebrew/test/dev-cmd/test_spec.rb index 46d51b0be9..8d6bb479ce 100644 --- a/Library/Homebrew/test/dev-cmd/test_spec.rb +++ b/Library/Homebrew/test/dev-cmd/test_spec.rb @@ -1,3 +1,9 @@ +require "cmd/shared_examples/args_parse" + +describe "Homebrew.test_args" do + it_behaves_like "parseable arguments" +end + describe "brew test", :integration_test do it "tests a given Formula" do install_test_formula "testball", <<~'RUBY' diff --git a/Library/Homebrew/test/spec_helper.rb b/Library/Homebrew/test/spec_helper.rb index e9b8fa6adb..70b2b3d711 100644 --- a/Library/Homebrew/test/spec_helper.rb +++ b/Library/Homebrew/test/spec_helper.rb @@ -191,7 +191,6 @@ RSpec.configure do |config| CoreTap.instance.alias_dir, CoreTap.instance.path/"formula_renames.json", *Pathname.glob("#{HOMEBREW_CELLAR}/*/"), - *Pathname.glob("testball*.bottle.tar.gz"), ] files_after_test = find_files From 1e5cfcc028b7d6073717fd84e3ae5caab033300b Mon Sep 17 00:00:00 2001 From: Mike McQuaid Date: Tue, 26 Mar 2019 09:49:13 +0000 Subject: [PATCH 2/3] Separate tap tests into separate, correct files. --- Library/Homebrew/test/cmd/tap-info_spec.rb | 21 +++++ Library/Homebrew/test/cmd/tap_spec.rb | 16 ++++ Library/Homebrew/test/cmd/untap_spec.rb | 16 ++++ Library/Homebrew/test/dev-cmd/tap_spec.rb | 79 ------------------- .../spec/shared_context/integration_test.rb | 13 +++ 5 files changed, 66 insertions(+), 79 deletions(-) create mode 100644 Library/Homebrew/test/cmd/tap-info_spec.rb create mode 100644 Library/Homebrew/test/cmd/tap_spec.rb create mode 100644 Library/Homebrew/test/cmd/untap_spec.rb delete mode 100644 Library/Homebrew/test/dev-cmd/tap_spec.rb diff --git a/Library/Homebrew/test/cmd/tap-info_spec.rb b/Library/Homebrew/test/cmd/tap-info_spec.rb new file mode 100644 index 0000000000..63be08da46 --- /dev/null +++ b/Library/Homebrew/test/cmd/tap-info_spec.rb @@ -0,0 +1,21 @@ +require "cmd/shared_examples/args_parse" + +describe "Homebrew.tap_info_args" do + it_behaves_like "parseable arguments" +end + +describe "brew tap-info", :integration_test do + it "gets information for a given Tap" do + setup_test_tap + + expect { brew "tap-info", "homebrew/foo" } + .to output(%r{https://github\.com/Homebrew/homebrew-foo}).to_stdout + .and not_to_output.to_stderr + .and be_a_success + + expect { brew "tap-info", "--json=v1", "--installed" } + .to output(%r{https://github\.com/Homebrew/homebrew-foo}).to_stdout + .and not_to_output.to_stderr + .and be_a_success + end +end diff --git a/Library/Homebrew/test/cmd/tap_spec.rb b/Library/Homebrew/test/cmd/tap_spec.rb new file mode 100644 index 0000000000..d635c903be --- /dev/null +++ b/Library/Homebrew/test/cmd/tap_spec.rb @@ -0,0 +1,16 @@ +require "cmd/shared_examples/args_parse" + +describe "Homebrew.tap_args" do + it_behaves_like "parseable arguments" +end + +describe "brew tap", :integration_test do + it "taps a given Tap" do + path = setup_test_tap + + expect { brew "tap", "--force-auto-update", "--full", "homebrew/bar", path/".git" } + .to output(/Tapped/).to_stdout + .and output(/Cloning/).to_stderr + .and be_a_success + end +end diff --git a/Library/Homebrew/test/cmd/untap_spec.rb b/Library/Homebrew/test/cmd/untap_spec.rb new file mode 100644 index 0000000000..caef63c58b --- /dev/null +++ b/Library/Homebrew/test/cmd/untap_spec.rb @@ -0,0 +1,16 @@ +require "cmd/shared_examples/args_parse" + +describe "Homebrew.untap_args" do + it_behaves_like "parseable arguments" +end + +describe "brew untap", :integration_test do + it "untaps a given Tap" do + setup_test_tap + + expect { brew "untap", "homebrew/foo" } + .to output(/Untapped/).to_stdout + .and not_to_output.to_stderr + .and be_a_success + end +end diff --git a/Library/Homebrew/test/dev-cmd/tap_spec.rb b/Library/Homebrew/test/dev-cmd/tap_spec.rb deleted file mode 100644 index 86fd6e0398..0000000000 --- a/Library/Homebrew/test/dev-cmd/tap_spec.rb +++ /dev/null @@ -1,79 +0,0 @@ -require "cmd/shared_examples/args_parse" - -describe "Homebrew.tap_args" do - it_behaves_like "parseable arguments" -end - -describe "brew tap", :integration_test do - it "taps a given Tap" do - path = Tap::TAP_DIRECTORY/"homebrew/homebrew-foo" - path.mkpath - path.cd do - system "git", "init" - system "git", "remote", "add", "origin", "https://github.com/Homebrew/homebrew-foo" - FileUtils.touch "readme" - system "git", "add", "--all" - system "git", "commit", "-m", "init" - end - - expect { brew "tap" } - .to output(%r{homebrew/foo}).to_stdout - .and not_to_output.to_stderr - .and be_a_success - - expect { brew "tap-info" } - .to output(/2 taps/).to_stdout - .and not_to_output.to_stderr - .and be_a_success - - expect { brew "tap-info", "homebrew/foo" } - .to output(%r{https://github\.com/Homebrew/homebrew-foo}).to_stdout - .and not_to_output.to_stderr - .and be_a_success - - expect { brew "tap-info", "--json=v1", "--installed" } - .to output(%r{https://github\.com/Homebrew/homebrew-foo}).to_stdout - .and not_to_output.to_stderr - .and be_a_success - - expect { brew "tap-pin", "homebrew/foo" } - .to output(%r{Pinned homebrew/foo}).to_stdout - .and not_to_output.to_stderr - .and be_a_success - - expect { brew "tap", "--list-pinned" } - .to output(%r{homebrew/foo}).to_stdout - .and not_to_output.to_stderr - .and be_a_success - - expect { brew "tap-unpin", "homebrew/foo" } - .to output(%r{Unpinned homebrew/foo}).to_stdout - .and not_to_output.to_stderr - .and be_a_success - - expect { brew "tap", "homebrew/bar", path/".git" } - .to output(/Tapped/).to_stdout - .and output(/Cloning/).to_stderr - .and be_a_success - - expect { brew "untap", "homebrew/bar" } - .to output(/Untapped/).to_stdout - .and not_to_output.to_stderr - .and be_a_success - - expect { brew "tap", "--force-auto-update", "homebrew/bar", path/".git" } - .to output(/Tapped/).to_stdout - .and output(/Cloning/).to_stderr - .and be_a_success - - expect { brew "untap", "homebrew/bar" } - .to output(/Untapped/).to_stdout - .and not_to_output.to_stderr - .and be_a_success - - expect { brew "tap", "homebrew/bar", path/".git", "-q", "--full" } - .to be_a_success - .and not_to_output.to_stdout - .and not_to_output.to_stderr - end -end diff --git a/Library/Homebrew/test/support/helper/spec/shared_context/integration_test.rb b/Library/Homebrew/test/support/helper/spec/shared_context/integration_test.rb index 1f6844b3d4..902204e1d8 100644 --- a/Library/Homebrew/test/support/helper/spec/shared_context/integration_test.rb +++ b/Library/Homebrew/test/support/helper/spec/shared_context/integration_test.rb @@ -184,6 +184,19 @@ RSpec.shared_context "integration test" do fi.finish end + def setup_test_tap + path = Tap::TAP_DIRECTORY/"homebrew/homebrew-foo" + path.mkpath + path.cd do + system "git", "init" + system "git", "remote", "add", "origin", "https://github.com/Homebrew/homebrew-foo" + FileUtils.touch "readme" + system "git", "add", "--all" + system "git", "commit", "-m", "init" + end + path + end + def setup_remote_tap(name) Tap.fetch(name).tap do |tap| next if tap.installed? From cc6c6afffbfefbd92cb9f6f677c9f6f93f3b8c5c Mon Sep 17 00:00:00 2001 From: Mike McQuaid Date: Wed, 27 Mar 2019 14:22:30 +0000 Subject: [PATCH 3/3] test/dev-cmd: add more parseable arguments tests. --- Library/Homebrew/test/dev-cmd/bump-formula-pr_spec.rb | 5 +++++ Library/Homebrew/test/dev-cmd/man_spec.rb | 5 +++++ Library/Homebrew/test/dev-cmd/mirror_spec.rb | 5 +++++ Library/Homebrew/test/dev-cmd/prof_spec.rb | 5 +++++ Library/Homebrew/test/dev-cmd/release-notes_spec.rb | 5 +++++ Library/Homebrew/test/dev-cmd/vendor-gems_spec.rb | 5 +++++ 6 files changed, 30 insertions(+) create mode 100644 Library/Homebrew/test/dev-cmd/bump-formula-pr_spec.rb create mode 100644 Library/Homebrew/test/dev-cmd/man_spec.rb create mode 100644 Library/Homebrew/test/dev-cmd/mirror_spec.rb create mode 100644 Library/Homebrew/test/dev-cmd/prof_spec.rb create mode 100644 Library/Homebrew/test/dev-cmd/release-notes_spec.rb create mode 100644 Library/Homebrew/test/dev-cmd/vendor-gems_spec.rb diff --git a/Library/Homebrew/test/dev-cmd/bump-formula-pr_spec.rb b/Library/Homebrew/test/dev-cmd/bump-formula-pr_spec.rb new file mode 100644 index 0000000000..1ca0a2e5b1 --- /dev/null +++ b/Library/Homebrew/test/dev-cmd/bump-formula-pr_spec.rb @@ -0,0 +1,5 @@ +require "cmd/shared_examples/args_parse" + +describe "Homebrew.bump_formula_pr_args" do + it_behaves_like "parseable arguments" +end diff --git a/Library/Homebrew/test/dev-cmd/man_spec.rb b/Library/Homebrew/test/dev-cmd/man_spec.rb new file mode 100644 index 0000000000..5cb905678f --- /dev/null +++ b/Library/Homebrew/test/dev-cmd/man_spec.rb @@ -0,0 +1,5 @@ +require "cmd/shared_examples/args_parse" + +describe "Homebrew.man_args" do + it_behaves_like "parseable arguments" +end diff --git a/Library/Homebrew/test/dev-cmd/mirror_spec.rb b/Library/Homebrew/test/dev-cmd/mirror_spec.rb new file mode 100644 index 0000000000..2c11572bfc --- /dev/null +++ b/Library/Homebrew/test/dev-cmd/mirror_spec.rb @@ -0,0 +1,5 @@ +require "cmd/shared_examples/args_parse" + +describe "Homebrew.mirror_args" do + it_behaves_like "parseable arguments" +end diff --git a/Library/Homebrew/test/dev-cmd/prof_spec.rb b/Library/Homebrew/test/dev-cmd/prof_spec.rb new file mode 100644 index 0000000000..a3c39b5c5a --- /dev/null +++ b/Library/Homebrew/test/dev-cmd/prof_spec.rb @@ -0,0 +1,5 @@ +require "cmd/shared_examples/args_parse" + +describe "Homebrew.prof_args" do + it_behaves_like "parseable arguments" +end diff --git a/Library/Homebrew/test/dev-cmd/release-notes_spec.rb b/Library/Homebrew/test/dev-cmd/release-notes_spec.rb new file mode 100644 index 0000000000..973e2b0aa3 --- /dev/null +++ b/Library/Homebrew/test/dev-cmd/release-notes_spec.rb @@ -0,0 +1,5 @@ +require "cmd/shared_examples/args_parse" + +describe "Homebrew.release_notes_args" do + it_behaves_like "parseable arguments" +end diff --git a/Library/Homebrew/test/dev-cmd/vendor-gems_spec.rb b/Library/Homebrew/test/dev-cmd/vendor-gems_spec.rb new file mode 100644 index 0000000000..3d75313397 --- /dev/null +++ b/Library/Homebrew/test/dev-cmd/vendor-gems_spec.rb @@ -0,0 +1,5 @@ +require "cmd/shared_examples/args_parse" + +describe "Homebrew.vendor_gems_args" do + it_behaves_like "parseable arguments" +end