Sha256: c02bec3c18de1a9992ab21077327c27e67fa30aecf06f33818cb591a74c23927

Contents?: true

Size: 886 Bytes

Versions: 3

Compression:

Stored size: 886 Bytes

Contents

require 'spec_helper'
require 'billd/parser'

describe Billd::Parser do
	let(:build1) { mock 'Build' }
	let(:build2) { mock 'Build' }
	let(:build3) { mock 'Build' }
	let(:uri) { '//build/status' }
	let(:status1) { '<Project name="project1"/>' }
	let(:status2) { '<Project name="project2"/>' }
	let(:status3) { '<Project name="project3"/>' }
	let(:statuses) { "<Projects>#{status1}#{status2}#{status3}</Projects>" }
	let(:stream) { mock 'File', :read => statuses }

	subject { Billd::Parser.parse(uri) }

	before { Kernel.should_receive(:open).with(uri).and_return(stream) }
	before { Billd::Build.should_receive(:new).with(status1).and_return(build1) }
	before { Billd::Build.should_receive(:new).with(status2).and_return(build2) }
	before { Billd::Build.should_receive(:new).with(status3).and_return(build3) }

	its(:size) { should == 3 }
	it { should == [build1, build2, build3] }
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
billd-0.0.3 spec/billd/parser_spec.rb
billd-0.0.2 spec/billd/parser_spec.rb
billd-0.0.1 spec/billd/parser_spec.rb