Sha256: a0635bd69532eb9057415b5975627e622100ce0b819e66b062b572d249c18114

Contents?: true

Size: 1.18 KB

Versions: 1

Compression:

Stored size: 1.18 KB

Contents

require File.join(File.dirname(__FILE__), "spec_helper.rb")

describe Smoke do
  before do
    @source_a = TestSource.source :a
    @source_b = TestSource.source :b
    @source_c = TestSource.source :c
  end
  
  describe "joining" do
    before do
      @joined = Smoke.join(:a, :b)
    end
    
    it "should contain items from sources a and b" do
      @joined.output.size.should == (@source_a.output.size + @source_b.output.size)
    end
    
    it "should accept a block" do
      lambda { Smoke.join(:a, :b, Proc.new {}) }.should_not raise_error
    end
    
    it "should allow sorting" do
      Smoke.join(:a, :b).should respond_to(:sort)
    end
    
    it "should allow renaming" do
      Smoke.join(:a, :b).should respond_to(:rename)
    end
    
    it "should allow changes to output" do
      Smoke.join(:a, :b).should respond_to(:output)
    end
  end
  
  describe "active sources" do
    it "should allow access to sources via an array accessor" do
      Smoke[:a].should be_an_instance_of(Smoke::Origin)
    end
    
    it "should be able to be renamed" do
      Smoke.rename(:a => :b)
      Smoke[:a].should be_nil
      Smoke[:b].should be_an_instance_of(Smoke::Origin)
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
benschwarz-smoke-0.3.4 spec/smoke_spec.rb