aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLouise Crow <louise.crow@gmail.com>2012-11-14 13:10:51 +0000
committerLouise Crow <louise.crow@gmail.com>2012-12-04 12:47:32 +0000
commit9af56ac5901790fb265a6492531eecbe5dd32f73 (patch)
treee0694195d9b1a54dd1765c9d22b1f0024de84d54
parent2ad6b55a528ac0f747b6804157ed08acb616a437 (diff)
Add option to load_file_fixture to specify that the file contents should just be loaded as binary.
-rw-r--r--spec/controllers/api_controller_spec.rb3
-rw-r--r--spec/spec_helper.rb9
2 files changed, 8 insertions, 4 deletions
diff --git a/spec/controllers/api_controller_spec.rb b/spec/controllers/api_controller_spec.rb
index 5e148a9f5..1c320f85c 100644
--- a/spec/controllers/api_controller_spec.rb
+++ b/spec/controllers/api_controller_spec.rb
@@ -258,9 +258,8 @@ describe ApiController, "when using the API" do
attachments = incoming_message.get_attachments_for_display
attachments.size.should == 1
attachment = attachments[0]
-
attachment.filename.should == "tfl.pdf"
- attachment.body.should == load_file_fixture("tfl.pdf")
+ attachment.body.should == load_file_fixture("tfl.pdf", as_binary=true)
end
it "should show information about a request" do
diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb
index d4dad591d..9621211f5 100644
--- a/spec/spec_helper.rb
+++ b/spec/spec_helper.rb
@@ -93,9 +93,14 @@ def file_fixture_name(file_name)
return File.join(Spec::Runner.configuration.fixture_path, "files", file_name)
end
-def load_file_fixture(file_name)
+def load_file_fixture(file_name, as_binary=false)
file_name = file_fixture_name(file_name)
- content = File.read(file_name)
+ content = File.open(file_name, 'r') do |file|
+ if as_binary
+ file.set_encoding(Encoding::BINARY) if file.respond_to?(:set_encoding)
+ end
+ file.read
+ end
return content
end