Sha256: 51bc698f4c3d0899aa4424eaaa5d91ff7bc5f1e6c87a12537e38288b121573c0
Contents?: true
Size: 1.86 KB
Versions: 1
Compression:
Stored size: 1.86 KB
Contents
require 'spec_helper' module Roqua module CoreApi module Models describe ActiveVirtus do class Foo < ActiveVirtus attribute :datetime, DateTime attribute :date, Date end subject { Foo.new } describe 'Date' do it 'can be set by date(i1) params' do subject.attributes = { 'date(1i)' => '1999', 'date(2i)' => '12', 'date(3i)' => '8'} expect(subject.date).to eq Date.new(1999, 12, 8) expect(subject.errors).to be_empty end it 'sets an error if the date is invalid' do subject.attributes = { 'date(1i)' => '1999', 'date(2i)' => '12', 'date(3i)' => '32'} expect(subject.errors[:date][0]).to match 'Niet een bestaande datum' end it 'can create new with date(i1) params' do foo = Foo.new('date(1i)' => '1999', 'date(2i)' => '12', 'date(3i)' => '8') expect(foo.date).to eq Date.new(1999, 12, 8) expect(foo.errors).to be_empty end it 'allows for a date not to be set' do foo = Foo.new expect(foo.date).to be_nil expect(foo.errors).to be_empty end it 'sets date to nil if date params are empty strings' do foo = Foo.new('date(1i)' => '', 'date(2i)' => '', 'date(3i)' => '') expect(foo.date).to be_nil expect(foo.errors).to be_empty end end describe 'DateTime' do it 'can be set by datetime(i1) params' do subject.attributes = { 'datetime(1i)' => '1999', 'datetime(2i)' => '12', 'datetime(3i)' => '8', 'datetime(4i)' => '22', 'datetime(5i)' => '23', 'datetime(6i)' => '24'} expect(subject.datetime).to eq DateTime.new(1999, 12, 8, 22, 23, 24) end end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
roqua-core-api-0.1.0 | spec/lib/roqua/core_api/models/active_virtus_spec.rb |