Sha256: d5cb2f7323e09950cc0b4d393bffebd598808b5a61c25df562c56eca415b6e6d

Contents?: true

Size: 903 Bytes

Versions: 16

Compression:

Stored size: 903 Bytes

Contents

require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')

describe "Dynamoid::Validations" do
  before do
    @document = Class.new do
      include Dynamoid::Document

      def self.name
        'Document'
      end
    end
  end

  it 'validates presence of' do
    @document.field :name
    @document.validates_presence_of :name
    doc = @document.new
    doc.save.should be_false
    doc.new_record.should be_true
    doc.name = 'secret'
    doc.save.should_not be_false
    doc.errors.should be_empty
  end

  it 'raises document not found' do
    @document.field :name
    @document.validates_presence_of :name
    doc = @document.new
    expect { doc.save! }.to raise_error(Dynamoid::Errors::DocumentNotValid)

    expect { @document.create! }.to raise_error(Dynamoid::Errors::DocumentNotValid)

    doc = @document.create!(:name => 'test')
    doc.errors.should be_empty
  end
end

Version data entries

16 entries across 16 versions & 3 rubygems

Version Path
dynamoid-moda-0.7.2 spec/dynamoid/validations_spec.rb
dynamoid-moda-0.7.1 spec/dynamoid/validations_spec.rb
dynamoid-0.7.1 spec/dynamoid/validations_spec.rb
dynamoid-0.7.0 spec/dynamoid/validations_spec.rb
dynamoid-0.6.1 spec/dynamoid/validations_spec.rb
dynamoid-0.6.0 spec/dynamoid/validations_spec.rb
adept_dynamoid-0.6.0 spec/dynamoid/validations_spec.rb
adept_dynamoid-0.5.0.8 spec/dynamoid/validations_spec.rb
adept_dynamoid-0.5.0.7 spec/dynamoid/validations_spec.rb
adept_dynamoid-0.5.0.6 spec/dynamoid/validations_spec.rb
dynamoid-0.5.0 spec/dynamoid/validations_spec.rb
dynamoid-0.4.1 spec/dynamoid/validations_spec.rb
dynamoid-0.4.0 spec/dynamoid/validations_spec.rb
dynamoid-0.3.2 spec/dynamoid/validations_spec.rb
dynamoid-0.3.1 spec/dynamoid/validations_spec.rb
dynamoid-0.3.0 spec/dynamoid/validations_spec.rb