aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/binary_test.rb
diff options
context:
space:
mode:
Diffstat (limited to 'activerecord/test/binary_test.rb')
-rw-r--r--activerecord/test/binary_test.rb37
1 files changed, 37 insertions, 0 deletions
diff --git a/activerecord/test/binary_test.rb b/activerecord/test/binary_test.rb
new file mode 100644
index 0000000000..b63fbbaede
--- /dev/null
+++ b/activerecord/test/binary_test.rb
@@ -0,0 +1,37 @@
+require 'abstract_unit'
+require 'fixtures/binary'
+
+class BinaryTest < Test::Unit::TestCase
+ def setup
+ @data = create_data_fixture
+ end
+
+ def test_load_save
+ bin = Binary.new
+ bin.data = @data
+
+ assert bin.data == @data,
+ "Assigned data differs from file data"
+
+ bin.save
+
+ assert bin.data == @data,
+ "Assigned data differs from file data after save"
+
+ db_bin = Binary.find(bin.id)
+
+ assert db_bin.data == bin.data,
+ "Loaded binary data differes from memory version"
+
+ assert db_bin.data == File.new(File.dirname(__FILE__)+"/fixtures/associations.png","rb").read,
+ "Loaded binary data differes from file version"
+ end
+
+ private
+
+ def create_data_fixture
+ Binary.connection.execute("DELETE FROM binaries")
+ File.new(File.dirname(__FILE__)+"/fixtures/associations.png","rb").read
+ end
+
+end \ No newline at end of file