Sha256: 7d7af92d473a8cabf08b119033f486f264e34a4aab5c802c4aff64c56e0ef250
Contents?: true
Size: 1.58 KB
Versions: 2
Compression:
Stored size: 1.58 KB
Contents
require 'spec_helper' describe Microscope::InstanceMethod::DatetimeInstanceMethod do before do run_migration do create_table(:events, force: true) do |t| t.datetime :started_at, default: nil end end microscope 'Event' end describe '#started?' do context 'with positive result' do subject { Event.create(started_at: 2.months.ago) } it { should be_started } end context 'with negative result' do subject { Event.create(started_at: 1.month.from_now) } it { should_not be_started } end end describe '#started=' do before { subject.started = value } context 'with present argument' do subject { Event.create(started_at: 2.months.ago) } let(:value) { '0' } it { should_not be_started } end context 'with blank argument' do subject { Event.create } let(:value) { '1' } it { should be_started } end end describe '#not_started?' do context 'with negative result' do subject { Event.create(started_at: 2.months.ago) } it { should_not be_not_started } end context 'with positive result' do subject { Event.create(started_at: 1.month.from_now) } it { should be_not_started } end end describe '#start!' do let(:stubbed_date) { Time.parse('2020-03-18 08:00:00') } before { Time.stub(:now).and_return(stubbed_date) } let(:event) { Event.create(started_at: nil) } it { expect { event.start! }.to change { event.reload.started_at }.from(nil).to(stubbed_date) } it { expect(event).to respond_to(:start!) } end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
microscope-0.5.4 | spec/microscope/instance_method/datetime_instance_method_spec.rb |
microscope-0.5.3 | spec/microscope/instance_method/datetime_instance_method_spec.rb |