test/stripe/file_test.rb in stripe-4.12.0 vs test/stripe/file_test.rb in stripe-4.13.0

- old
+ new

@@ -29,11 +29,12 @@ end should "be creatable with a File" do file = Stripe::File.create( purpose: "dispute_evidence", - file: ::File.new(__FILE__) + file: ::File.new(__FILE__), + file_link_data: { create: true } ) assert_requested :post, "#{Stripe.uploads_base}/v1/files" assert file.is_a?(Stripe::File) end @@ -42,22 +43,45 @@ tempfile.write("Hello world") tempfile.rewind file = Stripe::File.create( purpose: "dispute_evidence", - file: tempfile + file: tempfile, + file_link_data: { create: true } ) assert_requested :post, "#{Stripe.uploads_base}/v1/files" assert file.is_a?(Stripe::File) end should "be creatable with Faraday::UploadIO" do file = Stripe::File.create( purpose: "dispute_evidence", - file: Faraday::UploadIO.new(::File.new(__FILE__), nil) + file: Faraday::UploadIO.new(::File.new(__FILE__), nil), + file_link_data: { create: true } ) assert_requested :post, "#{Stripe.uploads_base}/v1/files" assert file.is_a?(Stripe::File) + end + + should "be creatable with a string" do + file = Stripe::File.create( + purpose: "dispute_evidence", + file: "my-file-contents", + file_link_data: { create: true } + ) + assert_requested :post, "#{Stripe.uploads_base}/v1/files" + assert file.is_a?(Stripe::File) + end + + should "raise given a file object that doesn't respond to #read" do + e = assert_raises(ArgumentError) do + Stripe::File.create( + purpose: "dispute_evidence", + file: Object.new, + file_link_data: { create: true } + ) + end + assert_equal "file must respond to `#read`", e.message end end should "be deserializable when `object=file`" do file = Stripe::Util.convert_to_stripe_object({ object: "file" }, {})