Sha256: 5590d570a8691e12d0953e6a7b571743ebbf443a79b444b683475ef57c31342b

Contents?: true

Size: 950 Bytes

Versions: 1

Compression:

Stored size: 950 Bytes

Contents

require File.expand_path(File.join(File.dirname(__FILE__), '../test_helper'))

class EncoderTest < ActiveSupport::TestCase
  
  test "setting an attribute using a constant persists the encoding" do
    task = ::Task.new
    task.status = Task::Status::New
    task.save
    
    db_task = ::Task.first
    assert db_task.status == 'N'
  end

  test "setting an attribute using a description persists the correct encoding" do
    task = ::Task.new
    task.status = 'New'
    task.save
    
    db_task = ::Task.first
    assert db_task.status == 'N'
    assert db_task.status.decode == 'New'
  end
  
  test "setting an attribute using mass assignment should encode a decoded value" do
    task = ::Task.new({ :status => 'New' })
    assert task.status == 'N'
  end
  
  test "setting an attribute using mass assignment should ignore a value" do
    task = ::Task.new({ :status => 'Nothing Matches This' })
    assert task.status == nil
  end
  
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
encoder-0.0.2 test/functional/encoder_test.rb