simple_navigation_renderers 0.0.3 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: c00cff95a1185a8b873b98134a0bb6b19d0fac1a
4
- data.tar.gz: ebd99ce35657e86dd9afba9860b96eaf37416624
3
+ metadata.gz: 616b1a87c82cdb976a28aadc839c4be6546a8e78
4
+ data.tar.gz: 70eac40e4239df1041b6dc9bc97d32960e8627ca
5
5
  SHA512:
6
- metadata.gz: bb1fa84e2e7239206b7682aabd95b5ef57084f762328e9a4ffeffa34ec71dd6cc6de723feb999698ccc2a0729dad2eaa302f3395b801b1981ba99510ada3d71d
7
- data.tar.gz: 01014f95772c346e50baa52069606e8a4a6d934aec7f87694ba70e2463f3f9f52b3218f0b99812ee5799fa1391dea8c6569ea729ad5f2890206b98b7cef7bf84
6
+ metadata.gz: e3f18bdd23db2dcbed7641834dd75da7f2ba9c2816de206a624d2017667925c542f15bef4227a958d649ff11de95582e47d92524785c7224b65d28e28a1371df
7
+ data.tar.gz: 29ce774d04e11f5e303d0059de7af07aede50ff521b0a283695ad646097364b2518cbe3a0dd7ab5bad9051b51b09a405eafca9c8efc5e41d91adfe06623cc29d
data/CHANGELOG.md CHANGED
@@ -1,3 +1,9 @@
1
+ ## v1.0.0
2
+
3
+ * separate 'divider' Bootstrap element
4
+ * add 'navbar-text' Bootstrap (2 and 3) element
5
+
6
+
1
7
  ## v0.0.3
2
8
 
3
9
  * change README
data/README.md CHANGED
@@ -5,7 +5,7 @@ For now, it is include renderers for:
5
5
  * [Bootstrap 2 navigation](http://getbootstrap.com/components/#navbar)
6
6
  * [Bootstrap 3 navigation](http://getbootstrap.com/2.3.2/components.html#navbar)
7
7
 
8
- With these renderers you will be able create **any bootstrap navigation elements**, such as: **submenus**, **dividers**, **headers**. As well as add **icons** to menu elements, such as: gliphicons, font-awesome icons, even custom icons. Also you have **split** option for main menu containing submenu.
8
+ With these renderers you will be able create **any bootstrap navigation elements**, such as: **submenu**, **navbar-text**, **divider**, **header**. As well as add **icons** to menu elements, such as: gliphicons, font-awesome icons, even custom icons. Also you have **split** option for main menu containing submenu.
9
9
 
10
10
  ## Installation
11
11
 
@@ -63,20 +63,23 @@ Lets look at the example:
63
63
  SimpleNavigation::Configuration.run do |navigation|
64
64
  navigation.renderer = SimpleNavigationRenderers::Bootstrap3
65
65
  navigation.items do |primary|
66
- primary.item :news, {icon: "fa fa-fw fa-bullhorn", text: "News"}, news_index_path, highlights_on: :subpath
67
- primary.item :concerts, "Concerts", concerts_path, highlights_on: :subpath
68
- primary.item :video, "Video", videos_path, highlights_on: :subpath
69
- primary.item :info, {icon: "fa fa-fw fa-book", title: "Info"}, info_index_path, divider: true, split: true, highlights_on: :subpath do |info_nav|
66
+ primary.item :news, {icon: "fa fa-fw fa-bullhorn", text: "News"}, news_index_path
67
+ primary.item :concerts, "Concerts", concerts_path
68
+ primary.item :video, "Video", videos_path
69
+ primary.item :divider_before_info, '#', divider: true
70
+ primary.item :info, {icon: "fa fa-fw fa-book", title: "Info"}, info_index_path, split: true do |info_nav|
70
71
  info_nav.item :main_info_page, "Main info page", info_path(:main_info_page)
71
72
  info_nav.item :about_info_page, "About", info_path(:about_info_page)
72
- info_nav.item :misc_info_pages, "Misc.", divider: true do |misc_page|
73
+ info_nav.item :misc_info_pages, "Misc." do |misc_page|
73
74
  misc_page.item :header_misc_pages, "Misc. Pages", header: true
74
75
  Info.all.each do |info_page|
75
76
  misc_page.item :"#{info_page.permalink}", info_page.title, info_path(info_page)
76
77
  end
77
78
  end
78
- info_nav.item :contact_info_page, "Contact", info_path(:contact_info_page), divider: true
79
+ info_nav.item :divider_before_contact_info_page, '#', divider: true
80
+ info_nav.item :contact_info_page, "Contact", info_path(:contact_info_page)
79
81
  end
82
+ primary.item :singed_in, "Signed in as Pavel Shpak", navbar_text: true
80
83
  end
81
84
  end
82
85
  ```
@@ -86,8 +89,9 @@ end
86
89
  Specific options used in the example:
87
90
 
88
91
  * `:split` - Use it to split first level item link with caret. If you add `split: true` option to item, then caret itself will toggle first level submenu and link will have standard behaviour, instead of toggle submenu. You can use `:split` only with first level items, for the rest it will not do anything.
89
- * `:divider` - Use it to add Bootstrap divider before item. if you add `divider: true` option to first level item, then it will first create addition li-tag with `divider-vertical` Bootstrap 2 class and after that create li-tag for item itself. (You can add `divider-vertical` class to Bootstrap 3 - see below) For the second level item and deeper it will create li-tag with class `divider` (the same in Bootstrap 2 and 3)
90
- * `:header` - Use it to add Bootstrap menu header. If you add `header: true` option to item, then all parameters, except `:name` and `:divider` option, will be ignored. You can use `:header` only with submenus, for the first level items it will not do anything.
92
+ * `:navbar_text` - Use it as `navbar_text: true` to add Bootstrap 'navbar-text'.
93
+ * `:divider` - Use it to add Bootstrap menu divider. if you add `divider: true` option to first level item, then it will create li-tag with `divider-vertical` Bootstrap 2 class. (You can add `divider-vertical` class to Bootstrap 3 - see below). For the second level item and deeper it will create li-tag with class `divider` (which exists in both, Bootstrap 2 and 3).
94
+ * `:header` - Use it as `header: true` to add Bootstrap menu header. You can use `:header` only with submenus, for the first level items it will not do anything.
91
95
  * `:name hash` - Use it in place of `:name` if you want. Hash can have three keys: `:text`, `:icon` and `:title`, which is only recognized. You can use it together or separatly, but at least one of `:text` and `:icon` parameters should be provided. For example:
92
96
  * `{text: "News", icon: "fa fa-fw fa-bullhorn"}` will create Font Awesome icon and add text after it (name of the item)
93
97
  * `{icon: "glyphicon glyphicon-book", title: "Info"}` will create Bootstrap icon with title without any text after it
@@ -124,13 +128,13 @@ Thus, above example will produce something like following code:
124
128
 
125
129
  ```html
126
130
  <ul class="nav navbar-nav">
127
- <li class="active simple-navigation-active-leaf" id="news">
131
+ <li id="news" class="active simple-navigation-active-leaf">
128
132
  <a href="/news_index_path"><span class="fa fa-fw fa-bullhorn"></span> News</a>
129
133
  </li>
130
134
  <li id="concerts"><a href="/concerts_path">Concerts</a></li>
131
135
  <li id="video"><a href="/videos_path">Video</a></li>
132
- <li class="divider-vertical"></li>
133
- <li class="dropdown-split-left" id="info">
136
+ <li id="divider_before_info" class="divider-vertical"></li>
137
+ <li id="info" class="dropdown-split-left">
134
138
  <a href="/info_index_path"><span class="fa fa-fw fa-book" title="Info"></span></a>
135
139
  </li>
136
140
  <li class="dropdown dropdown-split-right">
@@ -138,19 +142,19 @@ Thus, above example will produce something like following code:
138
142
  <ul class="pull-right dropdown-menu">
139
143
  <li id="main_info_page"><a href="/info/main_info_page">Main info page</a></li>
140
144
  <li id="about_info_page"><a href="/info/about_info_page">About</a></li>
141
- <li class="divider"></li>
142
- <li class="dropdown-submenu" id="misc_info_pages">
145
+ <li id="misc_info_pages" class="dropdown-submenu">
143
146
  <a href="#">Misc.</a>
144
147
  <ul class="dropdown-menu">
145
- <li class="dropdown-header">Misc. Pages</li>
148
+ <li id="header_misc_pages" class="dropdown-header">Misc. Pages</li>
146
149
  <li id="page1"><a href="/info/page1">Page1</a></li>
147
150
  <li id="page2"><a href="/info/page2">Page2</a></li>
148
151
  </ul>
149
152
  </li>
150
- <li class="divider"></li>
153
+ <li id="divider_before_contact_info_page" class="divider"></li>
151
154
  <li id="contact_info_page"><a href="/info/contact_info_page">Contact</a></li>
152
155
  </ul>
153
156
  </li>
157
+ <li id="singed_in"><p class="navbar-text">Signed in as Pavel Shpak</p></li>
154
158
  </ul>
155
159
  ```
156
160
 
@@ -3,65 +3,79 @@ module SimpleNavigationRenderers
3
3
  module Bootstrap
4
4
 
5
5
  def render( item_container )
6
- config_selected_class = SimpleNavigation.config.selected_class
7
- SimpleNavigation.config.selected_class = "active"
8
- @config_name_generator = SimpleNavigation.config.name_generator
9
- SimpleNavigation.config.name_generator = self.method(:name_generator)
10
-
11
- item_container.dom_class = [ item_container.dom_class,
12
- (item_container.level == 1) ? "nav#{(options[:bv] == 2) ? '' : ' navbar-nav'}" :
13
- "dropdown-menu" ].flatten.compact.join(' ')
14
-
15
- list_content = item_container.items.inject([]) do |list, item|
16
- li_options = item.html_options
17
-
18
- if li_options.delete(:divider)
19
- if (item_container.level != 1)
20
- list << content_tag(:li, '', {class: "divider"})
21
- else
22
- list << content_tag(:li, '', {class: "divider-vertical"})
23
- end
24
- end
25
-
26
- if li_options.delete(:header) && (item_container.level != 1)
27
- list << content_tag(:li, item.name, { class: ((options[:bv] == 2) ? "nav-header" : "dropdown-header") })
28
- else
29
-
6
+ if (skip_if_empty? && item_container.empty?)
7
+ ''
8
+ else
9
+ config_selected_class = SimpleNavigation.config.selected_class
10
+ SimpleNavigation.config.selected_class = "active"
11
+ @config_name_generator = SimpleNavigation.config.name_generator
12
+ SimpleNavigation.config.name_generator = self.method(:name_generator)
13
+
14
+ list_content = item_container.items.inject([]) do |list, item|
15
+ li_options = item.html_options
16
+
17
+ navbar_text = li_options.delete(:navbar_text)
18
+ navbar_divider = li_options.delete(:divider)
19
+ navbar_header = li_options.delete(:header)
30
20
  link_options = li_options.delete(:link) || {}
31
21
  split = li_options.delete(:split)
32
- li_content = if include_sub_navigation?(item)
33
- if item_container.level == 1
34
- if split
35
- main_li_options = li_options.dup
36
- main_li_options[:class] = [ main_li_options[:class], "dropdown-split-left" ].flatten.compact.join(' ')
37
- list << content_tag(:li, simple_link(item, link_options), main_li_options)
38
- li_options[:id] = nil
39
- item.sub_navigation.dom_class = [ item.sub_navigation.dom_class, "pull-right" ].flatten.compact.join(' ')
22
+
23
+ if navbar_text
24
+ list << li_text( item.name, li_options )
25
+ elsif navbar_divider
26
+ list << li_divider( item_container.level, li_options )
27
+ elsif navbar_header && (item_container.level != 1)
28
+ list << li_header( item.name, li_options )
29
+ else
30
+ li_content = if include_sub_navigation?(item)
31
+ if item_container.level == 1
32
+ if split
33
+ main_li_options = li_options.dup
34
+ main_li_options[:class] = [ main_li_options[:class], "dropdown-split-left" ].flatten.compact.join(' ')
35
+ list << content_tag(:li, simple_link(item, link_options), main_li_options)
36
+ li_options[:id] = nil
37
+ item.sub_navigation.dom_class = [ item.sub_navigation.dom_class, "pull-right" ].flatten.compact.join(' ')
38
+ end
39
+ li_options[:class] = [ li_options[:class], "dropdown", (split ? "dropdown-split-right" : nil) ].flatten.compact.join(' ')
40
+ dropdown_link(item, split, link_options) + render_sub_navigation_for(item)
41
+ else
42
+ li_options[:class] = [ li_options[:class], "dropdown-submenu"].flatten.compact.join(' ')
43
+ simple_link(item, link_options) + render_sub_navigation_for(item)
40
44
  end
41
- li_options[:class] = [ li_options[:class], "dropdown", (split ? "dropdown-split-right" : nil) ].flatten.compact.join(' ')
42
- dropdown_link(item, split, link_options) + render_sub_navigation_for(item)
43
45
  else
44
- li_options[:class] = [ li_options[:class], "dropdown-submenu"].flatten.compact.join(' ')
45
- simple_link(item, link_options) + render_sub_navigation_for(item)
46
+ simple_link(item, link_options)
46
47
  end
47
- else
48
- simple_link(item, link_options)
48
+ list << content_tag(:li, li_content, li_options)
49
49
  end
50
- list << content_tag(:li, li_content, li_options)
50
+ end.join
51
51
 
52
- end
53
- end.join
54
-
55
- SimpleNavigation.config.selected_class = config_selected_class
56
- SimpleNavigation.config.name_generator = @config_name_generator
52
+ SimpleNavigation.config.selected_class = config_selected_class
53
+ SimpleNavigation.config.name_generator = @config_name_generator
57
54
 
58
- (skip_if_empty? && item_container.empty?) ? '' :
55
+ item_container.dom_class = [ item_container.dom_class,
56
+ (item_container.level == 1) ? "nav#{(options[:bv] == 2) ? '' : ' navbar-nav'}" :
57
+ "dropdown-menu" ].flatten.compact.join(' ')
59
58
  content_tag(:ul, list_content, {id: item_container.dom_id, class: item_container.dom_class})
59
+ end
60
60
  end
61
61
 
62
62
 
63
63
  protected
64
64
 
65
+ def li_text( text, li_options )
66
+ content_tag(:li, content_tag(:p, text, {class: 'navbar-text'}), li_options)
67
+ end
68
+
69
+ def li_divider( level, li_options )
70
+ li_options[:class] = [ li_options[:class], ((level == 1) ? "divider-vertical" : "divider") ].flatten.compact.join(' ')
71
+ content_tag(:li, '', li_options)
72
+ end
73
+
74
+ def li_header( text, li_options )
75
+ li_options[:class] = [ li_options[:class], ((options[:bv] == 2) ? "nav-header" : "dropdown-header") ].flatten.compact.join(' ')
76
+ content_tag(:li, text, li_options)
77
+ end
78
+
65
79
  def simple_link( item, link_options )
66
80
  link_options[:method] ||= item.method
67
81
  link_to(item.name, (item.url || "#"), link_options)
@@ -1,3 +1,3 @@
1
1
  module SimpleNavigationRenderers
2
- VERSION = "0.0.3"
2
+ VERSION = "1.0.0"
3
3
  end
@@ -8,8 +8,8 @@ Gem::Specification.new do |spec|
8
8
  spec.version = SimpleNavigationRenderers::VERSION
9
9
  spec.authors = ["Pavel Shpak"]
10
10
  spec.email = ["shpakvel@gmail.com"]
11
- spec.description = %q{simple_navigation_renderers gem adds renderers for Bootstrap 2 and 3. With these renderers you will be able create any bootstrap navigation elements, such as: submenus, dividers, headers. As well as add icons to menu elements, such as: gliphicons, font-awesome icons, even custom icons. Also you have split option for main menu containing submenu. }
12
- spec.summary = %q{simple_navigation_renderers gem adds renderers for Bootstrap 2 and 3. With these renderers you will be able create any bootstrap navigation elements, such as: submenus, dividers, headers. As well as add icons to menu elements, such as: gliphicons, font-awesome icons, even custom icons. Also you have split option for main menu containing submenu. }
11
+ spec.description = %q{simple_navigation_renderers gem adds renderers for Bootstrap 2 and 3. With these renderers you will be able create any bootstrap navigation elements, such as: submenu, navbar-text, divider, header. As well as add icons to menu elements, such as: gliphicons, font-awesome icons, even custom icons. Also you have split option for main menu containing submenu. }
12
+ spec.summary = %q{simple_navigation_renderers gem adds renderers for Bootstrap 2 and 3. With these renderers you will be able create any bootstrap navigation elements, such as: submenu, navbar-text, divider, header. As well as add icons to menu elements, such as: gliphicons, font-awesome icons, even custom icons. Also you have split option for main menu containing submenu. }
13
13
  spec.homepage = "http://github.com/ShPakvel/simple_navigation_renderers"
14
14
  spec.license = "MIT"
15
15
 
@@ -5,12 +5,33 @@ describe SimpleNavigationRenderers::Bootstrap do
5
5
 
6
6
  describe '.render' do
7
7
 
8
+ # tested navigation content
9
+ def fill_in( primary )
10
+ primary.item :news, {icon: "fa fa-fw fa-bullhorn", text: "News"}, "news_index_path"
11
+ primary.item :concerts, "Concerts", "concerts_path", class: "to_check_header", header: true
12
+ primary.item :video, "Video", "videos_path", class: "to_check_split", split: true
13
+ primary.item :divider_before_info_index_path, '#', divider: true
14
+ primary.item :info, {icon: "fa fa-fw fa-book", title: "Info"}, "info_index_path", split: true do |info_nav|
15
+ info_nav.item :main_info_page, "Main info page", "main_info_page"
16
+ info_nav.item :about_info_page, "About", "about_info_page"
17
+ info_nav.item :divider_before_misc_info_pages, '#', divider: true
18
+ info_nav.item :misc_info_pages, "Misc.", "misc_info_pages", split: true do |misc_nav|
19
+ misc_nav.item :header_misc_pages, "Misc. Pages", class: "to_check_header2", header: true
20
+ misc_nav.item :page1, "Page1", "page1"
21
+ misc_nav.item :page2, "Page2", "page2"
22
+ end
23
+ info_nav.item :divider_before_contact_info_page, '#', divider: true
24
+ info_nav.item :contact_info_page, "Contact", "contact_info_page"
25
+ end
26
+ primary.item :singed_in, "Signed in as Pavel Shpak", class: "to_check_navbar_text", navbar_text: true
27
+ end
28
+
8
29
  # 'bv' is bootstrap version
9
30
  # 'stub_name' neads to check raising error when invalid 'Item name hash' provided
10
31
  def render_result( bv=3, stub_name=false )
11
32
  SimpleNavigation::Configuration.instance.renderer = (bv == 3) ? SimpleNavigationRenderers::Bootstrap3 : SimpleNavigationRenderers::Bootstrap2
12
33
 
13
- SimpleNavigation.stub(adapter: ( SimpleNavigation::Adapters::Rails.new( double(:context, view_context: ActionView::Base.new) )) )
34
+ SimpleNavigation.stub( adapter: (SimpleNavigation::Adapters::Rails.new(double(:context, view_context: ActionView::Base.new))) )
14
35
 
15
36
  SimpleNavigation::Item.any_instance.stub( selected?: false, selected_by_condition?: false )
16
37
  primary_navigation = SimpleNavigation::ItemContainer.new(1)
@@ -111,15 +132,32 @@ describe SimpleNavigationRenderers::Bootstrap do
111
132
 
112
133
 
113
134
 
135
+ context "when ':navbar_text' option provided" do
136
+ it "creates p-tag with class 'navbar-text' and item 'name' as a content instead of link-tag for the item (standard item)" do
137
+ HTML::Selector.new('ul > li.to_check_navbar_text > a').select(render_result).should have(0).entries
138
+ HTML::Selector.new('ul > li.to_check_navbar_text > a').select(render_result(2)).should have(0).entries
139
+ HTML::Selector.new('ul > li.to_check_navbar_text > p.navbar-text').select(render_result)[0].children[0].to_s.should == "Signed in as Pavel Shpak"
140
+ HTML::Selector.new('ul > li.to_check_navbar_text > p.navbar-text').select(render_result(2))[0].children[0].to_s.should == "Signed in as Pavel Shpak"
141
+ end
142
+ end
143
+
144
+
145
+
114
146
  context "when ':divider' option provided" do
147
+ it "does not create link-tag for the item (standard item)" do
148
+ HTML::Selector.new('ul > li.divider-vertical + li > a[href="divider_before_info_index_path"]').select(render_result).should have(0).entries
149
+ HTML::Selector.new('ul.dropdown-menu > li.divider + li > a[href="divider_before_misc_info_pages"]').select(render_result).should have(0).entries
150
+ HTML::Selector.new('ul.dropdown-menu > li.divider + li > a[href="divider_before_contact_info_page"]').select(render_result).should have(0).entries
151
+ end
152
+
115
153
  context "for the first level item" do
116
- it "adds li-tag with class 'divider-vertical' before normal li-tag" do
154
+ it "adds li-tag with class 'divider-vertical'" do
117
155
  HTML::Selector.new('ul > li.divider-vertical + li > a[href="info_index_path"]').select(render_result).should have(1).entries
118
156
  end
119
157
  end
120
158
 
121
159
  context "for the second level item and deeper" do
122
- it "adds li-tag with class 'divider' before normal li-tag" do
160
+ it "adds li-tag with class 'divider'" do
123
161
  HTML::Selector.new('ul.dropdown-menu > li.divider + li > a[href="misc_info_pages"]').select(render_result).should have(1).entries
124
162
  HTML::Selector.new('ul.dropdown-menu > li.divider + li > a[href="contact_info_page"]').select(render_result).should have(1).entries
125
163
  end
@@ -130,9 +168,9 @@ describe SimpleNavigationRenderers::Bootstrap do
130
168
 
131
169
  context "when ':header' option provided" do
132
170
  context "for the first level item" do
133
- it "does not set up 'dropdown-header' class on li-tag" do
171
+ it "does not set up 'dropdown-header' or 'nav-header' class on li-tag" do
134
172
  HTML::Selector.new('ul.nav.navbar-nav > li.to_check_header.dropdown-header').select(render_result).should have(0).entries
135
- HTML::Selector.new('ul.nav > li.to_check_header.dropdown-header').select(render_result(2)).should have(0).entries
173
+ HTML::Selector.new('ul.nav > li.to_check_header.nav-header').select(render_result(2)).should have(0).entries
136
174
  end
137
175
 
138
176
  it "creates link-tag for the item (standard item)" do
@@ -144,21 +182,21 @@ describe SimpleNavigationRenderers::Bootstrap do
144
182
  context "for the second level item and deeper" do
145
183
  context "for 'bootstrap3' renderer" do
146
184
  it "sets up 'dropdown-header' class on li-tag" do
147
- HTML::Selector.new('ul.dropdown-menu > li.dropdown-header').select(render_result).should have(1).entries
185
+ HTML::Selector.new('ul.dropdown-menu > li.to_check_header2.dropdown-header').select(render_result).should have(1).entries
148
186
  end
149
187
  end
150
188
 
151
189
  context "for 'bootstrap2' renderer" do
152
190
  it "sets up 'nav-header' class on li-tag" do
153
- HTML::Selector.new('ul.dropdown-menu > li.nav-header').select(render_result(2)).should have(1).entries
191
+ HTML::Selector.new('ul.dropdown-menu > li.to_check_header2.nav-header').select(render_result(2)).should have(1).entries
154
192
  end
155
193
  end
156
194
 
157
- it "does not create link-tag for the item (puts only item name as plain text)" do
158
- HTML::Selector.new('ul.dropdown-menu > li.dropdown-header > a').select(render_result).should have(0).entries
159
- HTML::Selector.new('ul.dropdown-menu > li.nav-header > a').select(render_result(2)).should have(0).entries
160
- HTML::Selector.new('ul.dropdown-menu > li.dropdown-header').select(render_result)[0].children[0].to_s.should == "Misc. Pages"
161
- HTML::Selector.new('ul.dropdown-menu > li.nav-header').select(render_result(2))[0].children[0].to_s.should == "Misc. Pages"
195
+ it "does not create link-tag for the item (standard item), but puts only item 'name'" do
196
+ HTML::Selector.new('ul.dropdown-menu > li.to_check_header2.dropdown-header > a').select(render_result).should have(0).entries
197
+ HTML::Selector.new('ul.dropdown-menu > li.to_check_header2.nav-header > a').select(render_result(2)).should have(0).entries
198
+ HTML::Selector.new('ul.dropdown-menu > li.to_check_header2.dropdown-header').select(render_result)[0].children[0].to_s.should == "Misc. Pages"
199
+ HTML::Selector.new('ul.dropdown-menu > li.to_check_header2.nav-header').select(render_result(2))[0].children[0].to_s.should == "Misc. Pages"
162
200
  end
163
201
  end
164
202
  end
@@ -1,11 +1,11 @@
1
1
  require "spec_helper"
2
2
 
3
3
  describe SimpleNavigationRenderers do
4
- it "register 'bootstrap2' renderer" do
4
+ it "registers 'bootstrap2' renderer" do
5
5
  SimpleNavigation.registered_renderers[:bootstrap2].should == SimpleNavigationRenderers::Bootstrap2
6
6
  end
7
7
 
8
- it "register 'bootstrap3' renderer" do
8
+ it "registers 'bootstrap3' renderer" do
9
9
  SimpleNavigation.registered_renderers[:bootstrap3].should == SimpleNavigationRenderers::Bootstrap3
10
10
  end
11
11
  end
data/spec/spec_helper.rb CHANGED
@@ -8,21 +8,4 @@ end unless defined? Rails
8
8
  RAILS_ROOT = './' unless defined?(RAILS_ROOT)
9
9
  RAILS_ENV = 'test' unless defined?(RAILS_ENV)
10
10
 
11
- require "simple_navigation_renderers"
12
-
13
- # helper method
14
- def fill_in( primary )
15
- primary.item :news, {icon: "fa fa-fw fa-bullhorn", text: "News"}, "news_index_path"
16
- primary.item :concerts, "Concerts", "concerts_path", class: "to_check_header", header: true
17
- primary.item :video, "Video", "videos_path", class: "to_check_split", split: true
18
- primary.item :info, {icon: "fa fa-fw fa-book", title: "Info"}, "info_index_path", divider: true, split: true do |info_nav|
19
- info_nav.item :main_info_page, "Main info page", "main_info_page"
20
- info_nav.item :about_info_page, "About", "about_info_page"
21
- info_nav.item :misc_info_pages, "Misc.", "misc_info_pages", divider: true, split: true do |misc_nav|
22
- misc_nav.item :header_misc_pages, "Misc. Pages", header: true
23
- misc_nav.item :page1, "Page1", "page1"
24
- misc_nav.item :page2, "Page2", "page2"
25
- end
26
- info_nav.item :contact_info_page, "Contact", "contact_info_page", divider: true
27
- end
28
- end
11
+ require "simple_navigation_renderers"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: simple_navigation_renderers
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Pavel Shpak
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-11-30 00:00:00.000000000 Z
11
+ date: 2014-03-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: simple-navigation
@@ -82,9 +82,9 @@ dependencies:
82
82
  version: '0'
83
83
  description: 'simple_navigation_renderers gem adds renderers for Bootstrap 2 and 3.
84
84
  With these renderers you will be able create any bootstrap navigation elements,
85
- such as: submenus, dividers, headers. As well as add icons to menu elements, such
86
- as: gliphicons, font-awesome icons, even custom icons. Also you have split option
87
- for main menu containing submenu. '
85
+ such as: submenu, navbar-text, divider, header. As well as add icons to menu elements,
86
+ such as: gliphicons, font-awesome icons, even custom icons. Also you have split
87
+ option for main menu containing submenu. '
88
88
  email:
89
89
  - shpakvel@gmail.com
90
90
  executables: []
@@ -139,9 +139,9 @@ signing_key:
139
139
  specification_version: 4
140
140
  summary: 'simple_navigation_renderers gem adds renderers for Bootstrap 2 and 3. With
141
141
  these renderers you will be able create any bootstrap navigation elements, such
142
- as: submenus, dividers, headers. As well as add icons to menu elements, such as:
143
- gliphicons, font-awesome icons, even custom icons. Also you have split option for
144
- main menu containing submenu.'
142
+ as: submenu, navbar-text, divider, header. As well as add icons to menu elements,
143
+ such as: gliphicons, font-awesome icons, even custom icons. Also you have split
144
+ option for main menu containing submenu.'
145
145
  test_files:
146
146
  - spec/lib/simple_navigation_renderers/bootstrap_spec.rb
147
147
  - spec/lib/simple_navigation_renderers/exceptions_spec.rb