Sha256: 33b1bc4ad3d289577e683e7963e46d042690cd8e512e9455206714c1e007426c

Contents?: true

Size: 1.44 KB

Versions: 14

Compression:

Stored size: 1.44 KB

Contents

# encoding: utf-8

require 'spec_helper'

describe Nav do
  before :each do
    @item = stub('Nav::Item', :url => '/new-item', :name => "New item")
    @item_2 = stub('Nav::Item', :url => '/new-item-2', :name => 'New item 2')
    
    [@item, @item_2].each do |i| 
      i.stub(:attrs).and_return({:url => i.url, :name => i.name})
      i.stub(:active=) do |arg|
        i.stub(:active).and_return(arg)
      end
    end
    
    @items = [@item, @item_2]
  end

  describe ".select" do
    context "when request arg not given" do
      before :each do
        Nav.request = '/new-item'
        Nav.select(@items)
      end
      
      it "select item if its url eql Nav.request" do
        @item.active.should be_true
      end
      
      it "doesn't select item if its url not eql Nav.request" do
        @item_2.active.should be_false
      end
    end
    
    context "when request arg given" do
      before :each do
        Nav.select(@items, '/new-item-2')
      end
              
      it "select item if its url eql request arg" do
        @item_2.active.should be_true
      end
      
      it "doesn't select item if its url not eql request arg" do
        @item.active.should be_false
      end
    end
  end
 
  describe ".find" do
    it "return found items" do
      Nav.find(@items, {:name => "New item 2"}).should == [@item_2]
    end
    
    it "return [] if no found" do
      Nav.find(@items, {:name => "There is no"}).should be_empty
    end
  end
end

Version data entries

14 entries across 14 versions & 2 rubygems

Version Path
constructor-core-0.3.2 spec/lib/nav_lib_spec.rb
constructor-core-0.3.1 spec/lib/nav_lib_spec.rb
constructor-core-0.3.0 spec/lib/nav_lib_spec.rb
constructor-core-0.2.14 spec/lib/nav_lib_spec.rb
constructor-core-0.2.12 spec/lib/nav_lib_spec.rb
constructor-core-0.2.11 spec/lib/nav_lib_spec.rb
constructor-core-0.2.10 spec/lib/nav_lib_spec.rb
constructor-core-0.2.9 spec/lib/nav_lib_spec.rb
constructor-core-0.2.8 spec/lib/nav_lib_spec.rb
constructor-core-0.2.6 spec/lib/nav_lib_spec.rb
constructor-core-0.2.5 spec/lib/nav_lib_spec.rb
constructor-core-0.2.4 spec/lib/nav_lib_spec.rb
constructor-core-0.2.1 spec/lib/nav_lib_spec.rb
constructor-cms-0.2.1 core/spec/lib/nav_lib_spec.rb