File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 55
66 let ( :data ) { { "foo[bar]" => "test" } }
77
8- it "raises ArgumentError when given a non-Hash top-level value" do
8+ it "raises ArgumentError when given a non-Enumerable top-level value" do
99 expect { described_class . new ( 42 ) } . to raise_error ( HTTP ::FormData ::Error )
1010 end
1111
12+ it "raises ArgumentError when default encoder receives a non-Hash top-level value" do
13+ expect { described_class . encoder . call ( 42 ) } . to raise_error ( ArgumentError , /value must be a Hash/ )
14+ end
15+
1216 it "supports any Enumerables of pairs" do
1317 form_data = described_class . new ( [ %w[ foo bar ] , [ "foo" , %w[ baz moo ] ] ] )
1418
9599 it "switches form encoder implementation" do
96100 expect ( form_data . to_s ) . to eq ( '{"foo[bar]":"test"}' )
97101 end
102+
103+ it "raises ArgumentError when implementation does not respond to #call" do
104+ expect { described_class . encoder = "not callable" } . to raise_error ( ArgumentError )
105+ end
98106 end
99107
100108 context "with custom instance level encoder" do
Original file line number Diff line number Diff line change 1515
1616SimpleCov . start do
1717 add_filter "/spec/"
18- minimum_coverage 100
18+ enable_coverage :branch
19+ minimum_coverage :line => 100 , :branch => 100
1920end
You can’t perform that action at this time.
0 commit comments