Sha256: a476a1286c31ed8820bc28a122f7f5c5d743fe6ae72e160548379e2fa45427f5
Contents?: true
Size: 1.88 KB
Versions: 2
Compression:
Stored size: 1.88 KB
Contents
require 'spec_helper' require 'extreme_feedback_device/jenkins' describe ExtremeFeedbackDevice::Jenkins do context ".user" do it "responds to user" do subject.should be_respond_to "user" end it "responds to user=" do subject.should be_respond_to "user=" end end context ".token" do it "responds to token" do subject.should be_respond_to "token" end it "responds to token=" do subject.should be_respond_to "token=" end end context ".base_url" do it "responds to base_url" do subject.should be_respond_to "base_url" end it "responds to base_url=" do subject.should be_respond_to "base_url=" end end context ".full_url" do it "joins parts correctly" do subject.base_url = "http://localhost/" subject.full_url.should eql "http://localhost/api/json?tree=jobs[name,color,healthReport[score]]" end end context ".full_uri" do it "returns an URI" do subject.base_url = "http://localhost/" subject.full_uri.should be_a URI end end context ".jobs" do context "without mocked JSON" do it "returns nil if host isn't available" do subject.base_url = "http://this-host-isnt-available/" subject.jobs.should be_nil end end context "with mocked JSON" do let(:response) { '''{"jobs":[ {"name":"Project X - Master","color":"blue","healthReport":[{"score":80}]}, {"name":"Project X - Production","color":"blue","healthReport":[{"score":60}]}, {"name":"Project Y - Master","color":"blue","healthReport":[{"score":100}]}, {"name":"Project Y - Production","color":"blue","healthReport":[{"score":40}]} ]}''' } before(:each) do subject.stub(:get_json).and_return(response) end it "returns exactly four jobs" do subject.jobs.should have(4).items end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
extreme_feedback_device-0.0.4 | spec/lib/extreme_feedback_device/jenkins_spec.rb |
extreme_feedback_device-0.0.3 | spec/lib/extreme_feedback_device/jenkins_spec.rb |