spec/karousel_spec.rb in karousel-0.9.14 vs spec/karousel_spec.rb in karousel-0.9.15
- old
+ new
@@ -1,49 +1,64 @@
-require_relative 'spec_helper'
+# frozen_string_literal: true
-describe "Karousel" do
- before(:all) do
- @karousel = Karousel.new(ClientJobDummy, 20, 0)
- end
+describe Karousel do
+ subject { Karousel.new(ClientJobDummy, 20, 0) }
before(:each) do
ClientJobDummy.reset
end
- it 'should have version' do
- Karousel.version.should =~ /^[\d]+\.[\d]+\.[\d]+$/
+ describe '.version' do
+ it 'has version' do
+ expect(Karousel.version).to match(/^[\d]+\.[\d]+\.[\d]+$/)
+ end
end
-
- it "should initiate" do
- k = Karousel.new(ClientJobDummy, 20, 0)
- k.class.should == Karousel
+
+ describe '.new' do
+ it 'initiates' do
+ expect(subject).to be_kind_of Karousel
+ end
end
- it "should have size" do
- @karousel.size.should == 20
- @karousel.seats.size.should == 0
- @karousel.time_interval.should == 0
+ describe '#size' do
+ it 'has size' do
+ expect(subject.size).to eq 20
+ end
end
-
- it "should run with block" do
- karousel = Karousel.new(ClientJobDummy, 20, 0)
- count = 0
- karousel.run do
- count += 1
- if count < 10
- karousel.seats[1].class.should == Karousel::Job
- karousel.seats[1].client_job.class.should == ClientJobDummy
- end
+
+ describe '#time_interval' do
+ it 'has time_interval accessor' do
+ expect(subject.time_interval).to eq 0
end
end
- it "should be able to get loaded with jobs" do
- @karousel.seats.size.should == 0
- @karousel.populate
- @karousel.seats.size.should == 20
- @karousel.seats[0].class == Karousel::Job
- @karousel.seats[0].status.should == Karousel::STATUS[:init]
+ describe '#seats' do
+ it 'has seats' do
+ expect(subject.seats).to be_kind_of Array
+ expect(subject.seats.size).to eq 0
+ end
end
+ describe '#run' do
+ it 'should run with block' do
+ count = 0
+ subject.run do
+ count += 1
+ if count < 10
+ expect(subject.seats[1]).to be_kind_of Karousel::Job
+ expect(subject.seats[1].client_job)
+ .to be_kind_of ClientJobDummy
+ end
+ end
+ end
+ end
-
+ describe '#populate' do
+ it 'loads jobs on karousel' do
+ expect(subject.seats.size).to eq 0
+ subject.populate
+ expect(subject.seats.size).to eq 20
+ expect(subject.seats[0]).to be_kind_of Karousel::Job
+ expect(subject.seats[0].status).to eq Karousel::STATUS[:init]
+ end
+ end
end