Sha256: 0639a9780cc0b098b81e2326d2688a71c165d61ca7d91c37f4f4c24765319777
Contents?: true
Size: 1.19 KB
Versions: 14
Compression:
Stored size: 1.19 KB
Contents
require 'spec_helper' shared_examples_for 'a correct datetime object' do it { should be_instance_of(DateTime) } its(:year) { should == year } its(:month) { should == month } its(:day) { should == day } its(:hour) { should == hour } its(:min) { should == min } its(:sec) { should == sec } end describe Coercer::String, '.to_datetime' do subject { object.to_datetime(string) } let(:object) { described_class.new } context 'with a valid date string' do let(:year) { 2011 } let(:month) { 7 } let(:day) { 22 } context 'not including time part' do let(:string) { "July, #{day}th, #{year}" } let(:hour) { 0 } let(:min) { 0 } let(:sec) { 0 } it_should_behave_like 'a correct datetime object' end context 'including time part' do let(:string) { "July, #{day}, #{year}, #{hour}:#{min}:#{sec}" } let(:hour) { 13 } let(:min) { 44 } let(:sec) { 50 } it_should_behave_like 'a correct datetime object' end end context 'with an invalid date time string' do let(:string) { 'non-datetime' } specify { expect { subject }.to raise_error(UnsupportedCoercion) } end end
Version data entries
14 entries across 12 versions & 4 rubygems