Sha256: aa61f58ed9fd26eba7084308ec68fb2680253f5d99c2ec18f9152dd7616c8bad

Contents?: true

Size: 1.48 KB

Versions: 4

Compression:

Stored size: 1.48 KB

Contents

require File.join(File.dirname(__FILE__), 'test_helper')
require 'xebec'

class NavBarHelperTest < Test::Unit::TestCase
  
  context 'NavBarHelper#nav_bar' do
    
    setup do
      @helper = new_nav_bar_helper
    end
    
    should 'return a NavBar proxy' do
      assert @helper.nav_bar.kind_of?(Xebec::NavBarProxy)
    end
    
    should 'return a NavBar with the given name' do
      assert_equal :snacks, @helper.nav_bar(:snacks).name
    end
    
    should 'return the same NavBar for repeated calls with the same name' do
      snacks = @helper.nav_bar(:snacks)
      assert_equal snacks, @helper.nav_bar(:snacks)
    end
    
    should "evaluate a block in the helper's scope" do
      @helper.expects(:zoink!)
      @helper.nav_bar do
        zoink!
      end
    end
    
    should "yield the NavBar proxy to the given block" do
      bar = @helper.nav_bar
      bar.expects :zoink!
      @helper.nav_bar do |nb|
        nb.zoink!
      end
    end
    
  end
  
  context 'NavBarHelper#nav_bar_unless_empty' do
    setup do
      @helper = new_nav_bar_helper
      @bar = @helper.nav_bar(:pets)
    end
    
    context 'with an empty navigation bar' do
      should 'return an empty String' do
        assert @helper.nav_bar_unless_empty(:pets).blank?
      end
    end
    
    context 'with a non-empty navigation bar' do
      setup { @bar.nav_item :cats, '/cats' }
      should 'return a navigation bar' do
        assert !@helper.nav_bar_unless_empty(:pets).blank?
      end
    end
  end
  
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
xebec-1.2.1 test/nav_bar_helper_test.rb
xebec-1.2.0 test/nav_bar_helper_test.rb
xebec-1.1.0 test/nav_bar_helper_test.rb
xebec-1.0.0 test/nav_bar_helper_test.rb