# >>>>>>>>>>>>>>>>>>>> Testing Options.new <<<<<<<<<<<<<<<<<<<<
- test "Biopieces#parse with all cast keys don't raise" do
- argv = []
- casts = [{:long=>"foo", :short=>"f", :type=>"int", :mandatory=>false, :default=>nil, :allowed=>nil, :disallowed=>nil}]
- assert_nothing_raised(CastError) { @bp.parse(argv, casts, SCRIPT_PATH) }
- end
+ def test_Biopieces_parse_with_all_cast_keys_dont_raise
+ argv = []
+ casts = [{:long=>"foo", :short=>"f", :type=>"int", :mandatory=>false, :default=>nil, :allowed=>nil, :disallowed=>nil}]
+ assert_nothing_raised(CastError) { @bp.parse(argv, casts, SCRIPT_PATH) }
+ end
- test "Biopieces#parse with illegal long cast values raises" do
+ def test_Biopieces_parse_with_illegal_long_cast_values_raises
[nil, true, false, 1, 0, "a"].each do |long|
argv = []
casts = [{:long=>long, :short=>"f", :type=>"int", :mandatory=>false, :default=>nil, :allowed=>nil, :disallowed=>nil}]
end
end
- test "Biopieces#parse with legal long cast values don't raise" do
+ def test_Biopieces_parse_with_legal_long_cast_values_dont_raise
["foo", "!!", "0123"].each do |long|
argv = []
casts = [{:long=>long, :short=>"f", :type=>"int", :mandatory=>false, :default=>nil, :allowed=>nil, :disallowed=>nil}]
end
end
- test "Biopieces#parse with illegal short cast values raises" do
+ def test_Biopieces_parse_with_illegal_short_cast_values_raises
[nil, true, false, "foo"].each do |short|
argv = []
casts = [{:long=>"foo", :short=>short, :type=>"int", :mandatory=>false, :default=>nil, :allowed=>nil, :disallowed=>nil}]
end
end
- test "Biopieces#parse with legal short cast values don't raise" do
+ def test_Biopieces_parse_with_legal_short_cast_values_dont_raise
["!", "1", "a"].each do |short|
argv = []
casts = [{:long=>"foo", :short=>short, :type=>"int", :mandatory=>false, :default=>nil, :allowed=>nil, :disallowed=>nil}]
end
end
- test "Biopieces#parse with illegal type cast values raises" do
+ def test_Biopieces_parse_with_illegal_type_cast_values_raises
[nil, true, false, "foo", 12, 0].each do |type|
argv = []
casts = [{:long=>"foo", :short=>"f", :type=>type, :mandatory=>false, :default=>nil, :allowed=>nil, :disallowed=>nil}]
end
end
- test "Biopieces#parse with legal type cast values don't raise" do
+ def test_Biopieces_parse_with_legal_type_cast_values_dont_raise
TYPES.each do |type|
argv = []
casts = [{:long=>"foo", :short=>"f", :type=>type, :mandatory=>false, :default=>nil, :allowed=>nil, :disallowed=>nil}]
end
end
- test "Biopieces#parse with illegal mandatory cast values raises" do
+ def test_Biopieces_parse_with_illegal_mandatory_cast_values_raises
["yes", 12, 0, nil].each do |mandatory|
argv = []
casts = [{:long=>"foo", :short=>"f", :type=>"int", :mandatory=>mandatory, :default=>nil, :allowed=>nil, :disallowed=>nil}]
end
end
- test "Biopieces#parse with legal mandatory cast values don't raise" do
+ def test_Biopieces_parse_with_legal_mandatory_cast_values_dont_raise
[true, false].each do |mandatory|
argv = [ "--foo", "1" ]
casts = [{:long=>"foo", :short=>"f", :type=>"int", :mandatory=>mandatory, :default=>nil, :allowed=>nil, :disallowed=>nil}]
end
end
- test "Biopieces#parse with illegal default cast values raises" do
+ def test_Biopieces_parse_with_illegal_default_cast_values_raises
[true, false, [], {}].each do |default|
argv = []
casts = [{:long=>"foo", :short=>"f", :type=>"int", :mandatory=>false, :default=>default, :allowed=>nil, :disallowed=>nil}]
end
end
- test "Biopieces#parse with legal default cast values don't raise" do
+ def test_Biopieces_parse_with_legal_default_cast_values_dont_raise
[nil, 0, 1, -1].each do |default|
argv = []
casts = [{:long=>"foo", :short=>"f", :type=>"int", :mandatory=>false, :default=>default, :allowed=>nil, :disallowed=>nil}]
end
end
- test "Biopieces#parse with illegal allowed cast values raises" do
+ def test_Biopieces_parse_with_illegal_allowed_cast_values_raises
[true, false, {}, [], 0, 0.1].each do |allowed|
argv = []
casts = [{:long=>"foo", :short=>"f", :type=>"int", :mandatory=>false, :default=>nil, :allowed=>allowed, :disallowed=>nil}]
end
end
- test "Biopieces#parse with legal allowed cast values don't raise" do
+ def test_Biopieces_parse_with_legal_allowed_cast_values_dont_raise
["foo,bar,0",nil].each do |allowed|
argv = []
casts = [{:long=>"foo", :short=>"f", :type=>"int", :mandatory=>false, :default=>nil, :allowed=>allowed, :disallowed=>nil}]
end
end
- test "Biopieces#parse with illegal disallowed cast values raises" do
+ def test_Biopieces_parse_with_illegal_disallowed_cast_values_raises
[true, false, {}, [], 0, 0.1].each do |disallowed|
argv = []
casts = [{:long=>"foo", :short=>"f", :type=>"int", :mandatory=>false, :default=>nil, :allowed=>nil, :disallowed=>disallowed}]
end
end
- test "Biopieces#parse with legal disallowed cast values don't raise" do
+ def test_Biopieces_parse_with_legal_disallowed_cast_values_dont_raise
["foo,bar,0",nil].each do |disallowed|
argv = []
casts = [{:long=>"foo", :short=>"f", :type=>"int", :mandatory=>false, :default=>nil, :allowed=>nil, :disallowed=>disallowed}]
end
end
- test "Biopieces#parse with duplicate long cast values raises" do
+ def test_Biopieces_parse_with_duplicate_long_cast_values_raises
argv = []
casts = []
casts << {:long=>"foo", :short=>"f", :type=>"int", :mandatory=>false, :default=>nil, :allowed=>nil, :disallowed=>nil}
assert_raise(CastError) { @bp.parse(argv, casts, SCRIPT_PATH) }
end
- test "Biopieces#parse with duplicate short cast values raises" do
+ def test_Biopieces_parse_with_duplicate_short_cast_values_raises
argv = []
casts = []
casts << {:long=>"foo", :short=>"f", :type=>"int", :mandatory=>false, :default=>nil, :allowed=>nil, :disallowed=>nil}
assert_raise(CastError) { @bp.parse(argv, casts, SCRIPT_PATH) }
end
- test "Biopieces#parse without duplicate long and short cast values don't raise" do
+ def test_Biopieces_parse_without_duplicate_long_and_short_cast_values_dont_raise
argv = []
casts = []
casts << {:long=>"foo", :short=>"f", :type=>"int", :mandatory=>false, :default=>nil, :allowed=>nil, :disallowed=>nil}
# >>>>>>>>>>>>>>>>>>>> Testing Options.parse <<<<<<<<<<<<<<<<<<<<
- test "Biopieces#parse with empty argv and missing wiki file raises" do
+ def test_Biopieces_parse_with_empty_argv_and_missing_wiki_file_raises
argv = []
casts = []
- assert_raise() { @bp.parse(argv,casts, "foo") }
+ assert_raise(RuntimeError) { @bp.parse(argv,casts, "foo") }
end
- test "Biopieces#parse with empty argv and existing wiki file don't raise" do
+ def test_Biopieces_parse_with_empty_argv_and_existing_wiki_file_dont_raise
argv = []
casts = []
assert_nothing_raised { @bp.parse(argv, casts, SCRIPT_PATH) }
end
- test "Biopieces#parse with --help in argv and existing wiki output long usage" do
- argv = ["--help"]
- assert_nothing_raised { @bp.parse(argv,[],SCRIPT_PATH) }
- end
+ def test_Biopieces_parse_with_help_in_argv_and_existing_wiki_output_long_usage
+ argv = ["--help"]
+ assert_nothing_raised { @bp.parse(argv,[],SCRIPT_PATH) }
+ end
# # FIXME This one fails because any argument to a flag is ignored and the flag value is set to true. Should it raise?
-# test "Options.parse with type cast flag with an argument raises" do
+# test "Options.parse with type cast flag with an argument raises
# casts = [{:long=>"foo", :short=>"f", :type=>"flag", :mandatory=>false, :default=>nil, :allowed=>nil, :disallowed=>nil}]
# opt_parser = Options.new(casts)
# assert_raise(ArgumentError) { opt_parser.parse(["--foo", "bar"],SCRIPT_PATH) }
# end
- test "Biopieces#parse with --stream_in <arg> returns options['stream_in']=>[<arg>]" do
+ def test_Biopieces_parse_with_stream_in_argv_returns_correct_options
argv = ["--stream_in", DUMMY_FILE]
options = @bp.parse(argv,[],SCRIPT_PATH)
- assert_equal([DUMMY_FILE], options["stream_in"])
+ assert_equal([DUMMY_FILE], options[:stream_in])
end
- test "Biopieces#parse with -I <arg> returns options['stream_in']=>[<arg>]" do
+ def test_Biopieces_parse_with_I_argv_returns_correct_options
argv = ["-I", DUMMY_FILE]
casts = []
options = @bp.parse(argv, casts, SCRIPT_PATH)
- assert_equal([DUMMY_FILE], options["stream_in"])
+ assert_equal([DUMMY_FILE], options[:stream_in])
end
- test "Biopieces#parse use cast default value if no argument given" do
+ def test_Biopieces_parse_use_cast_default_value_if_no_argument_given
argv = ["-I", DUMMY_FILE]
casts = [{:long=>"foo", :short=>"f", :type=>"string", :mandatory=>false, :default=>"bar", :allowed=>nil, :disallowed=>nil}]
options = @bp.parse(argv, casts, SCRIPT_PATH)
- assert_equal(options["foo"], "bar")
+ assert_equal(options[:foo], "bar")
end
- test "Biopieces#parse don't use default value if argument given" do
+ def test_Biopieces_parse_dont_use_default_value_if_argument_given
argv = ["--foo", "bleh", "-I", DUMMY_FILE]
casts = [{:long=>"foo", :short=>"f", :type=>"string", :mandatory=>false, :default=>"bar", :allowed=>nil, :disallowed=>nil}]
options = @bp.parse(argv, casts, SCRIPT_PATH)
- assert_equal(options["foo"], "bleh")
+ assert_equal(options[:foo], "bleh")
end
- test "Biopieces#parse with mandatory cast and no argument raises" do
+ def test_Biopieces_parse_with_mandatory_cast_and_no_argument_raises
argv = ["-I", DUMMY_FILE]
casts = [{:long=>"foo", :short=>"f", :type=>"string", :mandatory=>true, :default=>nil, :allowed=>nil, :disallowed=>nil}]
assert_raise(ArgumentError) { @bp.parse(argv,casts,SCRIPT_PATH) }
end
- test "Biopieces#parse with mandatory cast and argument don't raise" do
+ def test_Biopieces_parse_with_mandatory_cast_and_argument_dont_raise
argv = ["--foo", "bar", "-I", DUMMY_FILE]
casts = [{:long=>"foo", :short=>"f", :type=>"string", :mandatory=>true, :default=>nil, :allowed=>nil, :disallowed=>nil}]
assert_nothing_raised(ArgumentError) { @bp.parse(argv,casts,SCRIPT_PATH) }
# end
# end
- test "Biopieces#parse with type cast int don't raise" do
+ def test_Biopieces_parse_with_type_cast_int_dont_raise
[0,-1,1,327649123746293746374276347824].each do |val|
argv = ["--foo", "#{val}", "-I", DUMMY_FILE]
casts = [{:long=>"foo", :short=>"f", :type=>"int", :mandatory=>false, :default=>nil, :allowed=>nil, :disallowed=>nil}]
# TODO similar test for uint as "test "Options.parse with type cast int and non-int value raises" do"
- test "Biopieces#parse with type cast uint don't raise" do
+ def test_Biopieces_parse_with_type_cast_uint_dont_raise
[0,1,327649123746293746374276347824].each do |val|
argv = ["--foo", "#{val}", "-I", DUMMY_FILE]
casts = [{:long=>"foo", :short=>"f", :type=>"uint", :mandatory=>false, :default=>nil, :allowed=>nil, :disallowed=>nil}]
end
end
- test "Biopieces#parse with file! cast and file don't exists raises" do
+ def test_Biopieces_parse_with_file_cast_and_file_dont_exists_raises
argv = ["--foo", "bleh", "-I", DUMMY_FILE]
casts = [{:long=>"foo", :short=>"f", :type=>"file!", :mandatory=>false, :default=>nil, :allowed=>nil, :disallowed=>nil}]
assert_raise(ArgumentError) { @bp.parse(argv, casts, SCRIPT_PATH) }
end
- test "Biopieces#parse with file! cast and existing file don't raise" do
+ def test_Biopieces_parse_with_file_cast_and_existing_file_dont_raise
argv = ["--foo", DUMMY_FILE, "-I", DUMMY_FILE]
casts = [{:long=>"foo", :short=>"f", :type=>"file!", :mandatory=>false, :default=>nil, :allowed=>nil, :disallowed=>nil}]
assert_nothing_raised(ArgumentError) { @bp.parse(argv, casts, SCRIPT_PATH) }
end
- test "Biopieces#parse with files! cast and a file don't exists raises" do
+ def test_Biopieces_parse_with_files_cast_and_a_file_dont_exists_raises
argv = ["--foo", DUMMY_FILE + ",bleh", "-I", DUMMY_FILE]
casts = [{:long=>"foo", :short=>"f", :type=>"files!", :mandatory=>false, :default=>nil, :allowed=>nil, :disallowed=>nil}]
assert_raise(ArgumentError) { @bp.parse(argv, casts, SCRIPT_PATH) }
end
- test "Biopieces#parse with files! cast and files exists don't raise" do
+ def test_Biopieces_parse_with_files_cast_and_files_exists_dont_raise
argv = ["--foo", DUMMY_FILE + "," + DUMMY_FILE, "-I", DUMMY_FILE]
casts = [{:long=>"foo", :short=>"f", :type=>"files!", :mandatory=>false, :default=>nil, :allowed=>nil, :disallowed=>nil}]
assert_nothing_raised(ArgumentError) { @bp.parse(argv, casts, SCRIPT_PATH) }
end
# TODO replace the absolute part below the file location with File.dirname(__FILE__)
- test "Biopieces#parse with glob argument expands correctly" do
+ def test_Biopieces_parse_with_glob_argument_expands_correctly
argv = ["--foo", "/Users/maasha/unit_test/foo*,/Users/maasha/unit_test/my_dir/*.fna", "-I", DUMMY_FILE]
casts = [{:long=>"foo", :short=>"f", :type=>"files!", :mandatory=>false, :default=>nil, :allowed=>nil, :disallowed=>nil}]
options = @bp.parse(argv, casts, SCRIPT_PATH)
- assert_equal(options["foo"], ["/Users/maasha/unit_test/foo.fna", "/Users/maasha/unit_test/my_dir/bar.fna"])
+ assert_equal(options[:foo], ["/Users/maasha/unit_test/foo.fna", "/Users/maasha/unit_test/my_dir/bar.fna"])
end
- test "Biopieces#parse with dir! cast and dir don't exists raises" do
+ def test_Biopieces_parse_with_dir_cast_and_dir_dont_exists_raises
argv = ["--foo", "bleh", "-I", DUMMY_FILE]
casts = [{:long=>"foo", :short=>"f", :type=>"dir!", :mandatory=>false, :default=>nil, :allowed=>nil, :disallowed=>nil}]
assert_raise(ArgumentError) { @bp.parse(argv, casts, SCRIPT_PATH) }
end
- test "Biopieces#parse with dir! cast and dir exists don't raise" do
+ def test_Biopieces_parse_with_dir_cast_and_dir_exists_dont_raise
argv = ["--foo", "/", "-I", DUMMY_FILE]
casts = [{:long=>"foo", :short=>"f", :type=>"dir!", :mandatory=>false, :default=>nil, :allowed=>nil, :disallowed=>nil}]
assert_nothing_raised(ArgumentError) { @bp.parse(argv, casts, SCRIPT_PATH) }
end
- test "Biopieces#parse with allowed cast and not allowed value raises" do
+ def test_Biopieces_parse_with_allowed_cast_and_not_allowed_value_raises
["bleh", "2", "3.3"].each do |val|
argv = ["--foo", "#{val}", "-I", DUMMY_FILE]
casts = [{:long=>"foo", :short=>"f", :type=>"string", :mandatory=>false, :default=>nil, :allowed=>"0,-1,0.0,1,bar", :disallowed=>nil}]
end
end
- test "Biopieces#parse with allowed cast and allowed values don't raise" do
+ def test_Biopieces_parse_with_allowed_cast_and_allowed_values_dont_raise
["0", "-1", "0.0", "1", "bar"].each do |val|
argv = ["--foo", "#{val}", "-I", DUMMY_FILE]
casts = [{:long=>"foo", :short=>"f", :type=>"string", :mandatory=>false, :default=>nil, :allowed=>"0,-1,0.0,1,bar", :disallowed=>nil}]
end
end
- test "Biopieces#parse with disallowed cast and disallowed value raises" do
+ def test_Biopieces_parse_with_disallowed_cast_and_disallowed_value_raises
["0", "-1", "0.0", "1", "bar"].each do |val|
argv = ["--foo", "#{val}", "-I", DUMMY_FILE]
casts = [{:long=>"foo", :short=>"f", :type=>"string", :mandatory=>false, :default=>nil, :allowed=>nil, :disallowed=>"0,-1,0.0,1,bar"}]
end
end
- test "Biopieces#parse with disallowed cast and allowed values don't raise" do
+ def test_Biopieces_parse_with_disallowed_cast_and_allowed_values_dont_raise
["bleh", "2", "3.3"].each do |val|
argv = ["--foo", "#{val}", "-I", DUMMY_FILE]
casts = [{:long=>"foo", :short=>"f", :type=>"string", :mandatory=>false, :default=>nil, :allowed=>nil, :disallowed=>"0,-1,0.0,1,bar"}]