diff options
Diffstat (limited to 'activerecord/test/binary_test.rb')
-rw-r--r-- | activerecord/test/binary_test.rb | 49 |
1 files changed, 22 insertions, 27 deletions
diff --git a/activerecord/test/binary_test.rb b/activerecord/test/binary_test.rb index 3e35f1754f..6ab272fe25 100644 --- a/activerecord/test/binary_test.rb +++ b/activerecord/test/binary_test.rb @@ -1,37 +1,32 @@ require 'abstract_unit' -require 'fixtures/binary' -class BinaryTest < Test::Unit::TestCase - BINARY_FIXTURE_PATH = File.dirname(__FILE__) + '/fixtures/flowers.jpg' +# Without using prepared statements, it makes no sense to test +# BLOB data with SQL Server, because the length of a statement is +# limited to 8KB. +# +# Without using prepared statements, it makes no sense to test +# BLOB data with DB2 or Firebird, because the length of a statement +# is limited to 32KB. +unless current_adapter?(:SQLServerAdapter, :SybaseAdapter, :DB2Adapter, :FirebirdAdapter) + require 'fixtures/binary' - def setup - Binary.connection.execute 'DELETE FROM binaries' - @data = File.read(BINARY_FIXTURE_PATH).freeze - end - - def test_truth - assert true - end + class BinaryTest < Test::Unit::TestCase + FIXTURES = %w(flowers.jpg example.log) - # Without using prepared statements, it makes no sense to test - # BLOB data with SQL Server, because the length of a statement is - # limited to 8KB. - # - # Without using prepared statements, it makes no sense to test - # BLOB data with DB2 or Firebird, because the length of a statement - # is limited to 32KB. - unless current_adapter?(:SQLServerAdapter, :SybaseAdapter, :DB2Adapter, :FirebirdAdapter) def test_load_save - bin = Binary.new - bin.data = @data + Binary.delete_all + + FIXTURES.each do |filename| + data = File.read("#{File.dirname(__FILE__)}/fixtures/#{filename}").freeze + + bin = Binary.new(:data => data) + assert_equal data, bin.data, 'Newly assigned data differs from original' - assert @data == bin.data, 'Newly assigned data differs from original' - - bin.save - assert @data == bin.data, 'Data differs from original after save' + bin.save! + assert_equal data, bin.data, 'Data differs from original after save' - db_bin = Binary.find(bin.id) - assert @data == db_bin.data, 'Reloaded data differs from original' + assert_equal data, bin.reload.data, 'Reloaded data differs from original' + end end end end |