aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases/types/serialize_test.rb
blob: e9423a5b9d45025d48c8f4d60657de27523ded0b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
require "cases/helper"

class SerializeTest < ActiveRecord::TestCase

  test "typecast" do
    serializer = ActiveRecord::Type::Serialize.new(column = nil, :serialize => Array)

    assert_equal [],    serializer.cast([].to_yaml)
    assert_equal ['1'], serializer.cast(['1'].to_yaml)
    assert_equal nil,   serializer.cast(nil.to_yaml)
  end

  test "cast as boolean" do
    serializer = ActiveRecord::Type::Serialize.new(column = nil, :serialize => Array)

    assert_equal true,  serializer.boolean(['1'].to_yaml)
    assert_equal false, serializer.boolean([].to_yaml)
  end

end