Sha256: fcdda7c9617e22ad1296de0ec402b6a87ff23211dfe1484a2a5934034e3e3d94

Contents?: true

Size: 1019 Bytes

Versions: 2

Compression:

Stored size: 1019 Bytes

Contents

require 'spec_helper'

describe MenuItem do

  it "should create valid menu item" do
    MenuItem.create!(:name=>"item",:url=>"/")
  end

  describe "positioning items" do
      
    let(:menu){Menu.create!(:name=>"new menu")}

    it "should append" do
      root=MenuItem.create!
      item=MenuItem.create!(:name=>"child",:url=>"/")
      root.append(item)
      item.reload
      item.parent.should == root
    end

  end

  describe "getting by possitions" do

    let(:menu){Menu.create!(:name=>"menu")}
    let(:item){MenuItem.create!(:name=>"child",:url=>"/")}

    it "should find children" do
      menu.append(item)
      menu.root.children.should have(1).item
      menu.root.children.first == item
    end

    it "should find parent" do
      menu.append(item)
      item.reload
      item.parent.should == menu.root
    end

    it "should find root for any item" do
      menu.append(item)
      item.reload
      item.root.should == menu.root
      menu.root.root.should == menu.root
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
lolita-menu-0.0.8 spec/models/menu_item_spec.rb
lolita-menu-0.0.6 spec/models/menu_item_spec.rb