Sha256: c3980ac4feef963551c41848f1799d9cb72850cd967f1d31f26fee4e43c458b2

Contents?: true

Size: 1.81 KB

Versions: 20

Compression:

Stored size: 1.81 KB

Contents

require File.join(File.dirname(__FILE__), %w[.. .. .. spec_helper])

describe SC::Target, 'expand_required_targets' do

  include SC::SpecHelpers

  it "should return all of targets required by a target in proper order" do
    @project = fixture_project(:real_world)
    target = @project.target_for :sproutcore
    required = target.expand_required_targets.map { |x| x.target_name }
    required.should eql([
      :"/sproutcore/costello", 
      :"/sproutcore/foundation", 
      :"/sproutcore/application", 
      :"/sproutcore/data_store", 
      :"/sproutcore/desktop"])
  end
  
  it "should still return a valid response even with a recursive project" do
    @project = fixture_project(:recursive_project)
    target = @project.target_for :sproutcore
    
    required = nil 
    lambda { required = target.expand_required_targets }.should_not raise_error
    
    required.map! { |x| x.target_name }
    required.should eql([:'/sproutcore/costello'])
  end
  
  it "should include test or debug required if passed as options" do
    @project = fixture_project(:real_world)
    target = @project.target_for :sproutcore
    target.config.debug_required = 'sproutcore/debug'
    target.config.test_required = 'sproutcore/qunit'
    
    debug_expected = @project.target_for 'sproutcore/debug'
    test_expected = @project.target_for 'sproutcore/qunit'
    
    target.expand_required_targets().should_not include(debug_expected)
    target.expand_required_targets(:debug => false ).should_not include(debug_expected)
    target.expand_required_targets(:debug => true).should include(debug_expected)

    target.expand_required_targets().should_not include(test_expected)
    target.expand_required_targets(:test => false ).should_not include(test_expected)
    target.expand_required_targets(:test => true).should include(test_expected)
  end
  
end

Version data entries

20 entries across 20 versions & 2 rubygems

Version Path
sproutit-sproutcore-1.0.0.20090407205609 spec/lib/models/target/expand_required_targets_spec.rb
sproutit-sproutcore-1.0.0.20090408130025 spec/lib/models/target/expand_required_targets_spec.rb
sproutit-sproutcore-1.0.0.20090416161445 spec/lib/models/target/expand_required_targets_spec.rb
sproutit-sproutcore-1.0.20090721145236 spec/lib/models/target/expand_required_targets_spec.rb
sproutcore-1.0.1046 spec/lib/models/target/expand_required_targets_spec.rb
sproutcore-1.0.1043 spec/lib/models/target/expand_required_targets_spec.rb
sproutcore-1.0.1042 spec/lib/models/target/expand_required_targets_spec.rb
sproutcore-1.0.1037 spec/lib/models/target/expand_required_targets_spec.rb
sproutcore-1.0.1035 spec/lib/models/target/expand_required_targets_spec.rb
sproutcore-1.0.1031 spec/lib/models/target/expand_required_targets_spec.rb
sproutcore-1.0.1030 spec/lib/models/target/expand_required_targets_spec.rb
sproutcore-1.0.1029 spec/lib/models/target/expand_required_targets_spec.rb
sproutcore-1.0.1027 spec/lib/models/target/expand_required_targets_spec.rb
sproutcore-1.0.1028 spec/lib/models/target/expand_required_targets_spec.rb
sproutcore-1.0.1026 spec/lib/models/target/expand_required_targets_spec.rb
sproutcore-1.0.1025 spec/lib/models/target/expand_required_targets_spec.rb
sproutcore-1.0.1024 spec/lib/models/target/expand_required_targets_spec.rb
sproutcore-1.0.1009 spec/lib/models/target/expand_required_targets_spec.rb
sproutcore-1.0.1008 spec/lib/models/target/expand_required_targets_spec.rb
sproutcore-1.0.1003 spec/lib/models/target/expand_required_targets_spec.rb