From a23fa41a5674485600365985bea2a905e5e087df Mon Sep 17 00:00:00 2001 From: Victor Gama Date: Fri, 10 Feb 2023 16:25:08 -0300 Subject: Add optional type validation --- test/error_test.rb | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'test/error_test.rb') diff --git a/test/error_test.rb b/test/error_test.rb index d9c71ab..341fa75 100644 --- a/test/error_test.rb +++ b/test/error_test.rb @@ -63,3 +63,18 @@ describe Slop::MissingRequiredOption do opts.parse [] end end + +describe Slop::InvalidOptionValue do + it "raises when an option has an invalid value" do + opts = Slop::Options.new(validate_types: true) + opts.integer "-n", "--number", default: 10 + assert_raises(Slop::InvalidOptionValue) { opts.parse %w(-n foo) } + end + + it "does not raise when errors are suppressed" do + opts = Slop::Options.new(validate_types: true, suppress_errors: true) + opts.integer "-n", "--number", default: 10 + r = opts.parse %w(-n foo) + assert_equal(10, r[:n]) + end +end -- cgit v1.2.1