spec/permit_params_spec.rb in sinatra-my-params-0.0.5 vs spec/permit_params_spec.rb in sinatra-my-params-0.0.6
- old
+ new
@@ -4,10 +4,14 @@
require "rack/test"
include PermitParams
describe "exceptions" do
+ before do
+ class TestClass; end
+ end
+
it "should raise error when at least one param is invalid" do
input = { param_1: "a" }
expect{
permitted_params(input, { param_1: Integer }, true)
}.to raise_error(InvalidParameterError, "'a' is not a valid Integer")
@@ -87,9 +91,18 @@
bol: Boolean,
array: Array,
hsh: Hash
}
)
+ end
+
+ it "returns the paramter without casting if Any" do
+ input = { param_1: "1" }
+ output = { param_1: "1" }
+ expect(output).to eq permitted_params(input, { param_1: Any })
+
+ input = { param_1: TestClass.new }
+ expect(input).to eq permitted_params(input, { param_1: Any })
end
it "should remove a string when a pemitted is integer" do
input = { param_1: "a string" }
output = {}