booties 0.0.1 → 0.0.2

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.
@@ -1,13 +1,8 @@
1
1
  require 'test_helper'
2
2
 
3
3
  class HomeControllerTest < ActionController::TestCase
4
- test "should get show" do
5
- get :show
6
- assert_response :success
7
- end
8
-
9
4
  test 'page renders breadcrumbs' do
10
- get :show
5
+ get :breadcrumbs
11
6
 
12
7
  assert_select 'ol.breadcrumb' do
13
8
  assert_select 'li', 'Foo'
@@ -16,10 +11,60 @@ class HomeControllerTest < ActionController::TestCase
16
11
  end
17
12
 
18
13
  test 'page renders flags' do
19
- get :show
14
+ get :flag
20
15
 
21
16
  assert_select 'span.label.label-default', 'foo'
22
17
  assert_select 'span.label.label-primary', 'bar'
23
18
  assert_select 'span#baz.label.label-danger', 'baz'
24
19
  end
20
+
21
+ test 'page renders badges' do
22
+ get :badge
23
+
24
+ assert_select 'span.badge', 'foo'
25
+ assert_select 'span.badge.foo', 'bar'
26
+ assert_select 'span.badge#foo', 'bar'
27
+ end
28
+
29
+ test 'page renders a modal' do
30
+ get :modal
31
+
32
+ assert_select 'div.modal.fade#confirm' do
33
+ assert_select 'div.modal-dialog' do
34
+ assert_select 'div.modal-content' do
35
+ assert_select 'div.modal-header' do
36
+ assert_select 'button[class="close"][data-dismiss="modal"][type="button"]' do
37
+ assert_select 'span[class="glyphicon glyphicon-remove"]'
38
+ end
39
+ assert_select 'h4.modal-title', 'Modal header'
40
+ end
41
+ assert_select 'div.modal-body' do
42
+ assert_select 'p', 'Modal body'
43
+ end
44
+ assert_select 'div.modal-footer' do
45
+ assert_select 'button[class="btn btn-default"][data-dismiss="modal"][type="button"]', 'Dismiss'
46
+ assert_select 'a[class="btn btn-primary"][href="#"]', 'Confirm'
47
+ end
48
+ end
49
+ end
50
+ end
51
+ end
52
+
53
+ test 'page renders a panel' do
54
+ get :panel
55
+
56
+ assert_select 'div.panel.panel-default' do
57
+ assert_select 'div.panel-heading' do
58
+ assert_select 'h3.panel-title', 'Panel title'
59
+ end
60
+ assert_select 'div.panel-body', 'Panel body'
61
+ assert_select 'div.panel-footer', 'Panel footer'
62
+ end
63
+
64
+ assert_select 'div.panel.panel-info' do
65
+ assert_select 'div.panel-heading', 'Panel heading'
66
+ assert_select 'div.panel-body', 'Panel body'
67
+ assert_select 'div.panel-footer', 'Panel footer'
68
+ end
69
+ end
25
70
  end
@@ -1,4 +1,5 @@
1
1
  require 'test_helper'
2
+ require 'minitest/mock'
2
3
 
3
4
  module Booties
4
5
  class ApplicationHelperTest < ActionView::TestCase
@@ -31,5 +32,59 @@ module Booties
31
32
  expected = '<span class="label label-default foo">content</span>'
32
33
  assert_equal expected, flag('content', class: 'foo')
33
34
  end
35
+
36
+ test '#badge renders span tag with badge class' do
37
+ expected = '<span class="badge">content</span>'
38
+ assert_equal expected, badge('content')
39
+ end
40
+
41
+ test '#badge passes miscellaneous options through to #content_tag' do
42
+ expected = '<span class="badge" id="foo">content</span>'
43
+ assert_equal expected, badge('content', id: 'foo')
44
+ end
45
+
46
+ test '#badge merges optional classes with badge class' do
47
+ expected = '<span class="badge foo">content</span>'
48
+ assert_equal expected, badge('content', class: 'foo')
49
+ end
50
+
51
+ test '#modal instantiates a new Modal and calls render' do
52
+ modal_class = Minitest::Mock.new
53
+ modal_instance = Minitest::Mock.new
54
+
55
+ modal_class.expect :new, modal_instance, [self, id: 'foo', fade: true]
56
+ modal_instance.expect :render, true
57
+
58
+ modal 'foo', with: modal_class
59
+
60
+ modal_class.verify
61
+ modal_instance.verify
62
+ end
63
+
64
+ test '#panel instantiates a new Panel and calls render' do
65
+ panel_class = Minitest::Mock.new
66
+ panel_instance = Minitest::Mock.new
67
+
68
+ panel_class.expect :new, panel_instance, [self, {}]
69
+ panel_instance.expect :render, true
70
+
71
+ panel with: panel_class
72
+
73
+ panel_class.verify
74
+ panel_instance.verify
75
+ end
76
+
77
+ test '#panel instantiates a new Panel with the given context' do
78
+ panel_class = Minitest::Mock.new
79
+ panel_instance = Minitest::Mock.new
80
+
81
+ panel_class.expect :new, panel_instance, [self, { context: :primary }]
82
+ panel_instance.expect :render, true
83
+
84
+ panel context: :primary, with: panel_class
85
+
86
+ panel_class.verify
87
+ panel_instance.verify
88
+ end
34
89
  end
35
90
  end
@@ -0,0 +1,36 @@
1
+ class StubView
2
+ def button_tag(content, options = nil, &block)
3
+ content_tag :button, content, options, &block
4
+ end
5
+
6
+ def capture(*args, &block)
7
+ block.call *args
8
+ end
9
+
10
+ def content_tag(tag, content, options = nil, &block)
11
+ options, content = content, capture(&block) if options.nil?
12
+ "<#{tag} #{attributes options}>#{content}</#{tag}>"
13
+ end
14
+
15
+ def raw(content)
16
+ content
17
+ end
18
+
19
+ def translate(*args)
20
+ I18n.translate *args
21
+ end
22
+ alias t translate
23
+
24
+ private
25
+
26
+ def attributes(prefix = nil, **attrs)
27
+ prefix = "#{prefix}-" if prefix
28
+ attrs.map { |key, value|
29
+ if Hash === value
30
+ attributes key, value
31
+ else
32
+ "#{prefix}#{key}=\"#{Array(value).compact.join(' ')}\""
33
+ end
34
+ }.join ' '
35
+ end
36
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: booties
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - John Parker
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-07-13 00:00:00.000000000 Z
11
+ date: 2015-07-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -97,9 +97,13 @@ files:
97
97
  - config/routes.rb
98
98
  - lib/booties.rb
99
99
  - lib/booties/engine.rb
100
+ - lib/booties/modal.rb
101
+ - lib/booties/panel.rb
100
102
  - lib/booties/version.rb
103
+ - lib/booties_test.rb
101
104
  - lib/tasks/booties_tasks.rake
102
- - test/booties_test.rb
105
+ - test/booties/modal_test.rb
106
+ - test/booties/panel_test.rb
103
107
  - test/dummy/README.rdoc
104
108
  - test/dummy/Rakefile
105
109
  - test/dummy/app/assets/javascripts/application.js
@@ -110,7 +114,11 @@ files:
110
114
  - test/dummy/app/controllers/home_controller.rb
111
115
  - test/dummy/app/helpers/application_helper.rb
112
116
  - test/dummy/app/helpers/home_helper.rb
113
- - test/dummy/app/views/home/show.html.erb
117
+ - test/dummy/app/views/home/badge.html.erb
118
+ - test/dummy/app/views/home/breadcrumbs.html.erb
119
+ - test/dummy/app/views/home/flag.html.erb
120
+ - test/dummy/app/views/home/modal.html.erb
121
+ - test/dummy/app/views/home/panel.html.erb
114
122
  - test/dummy/app/views/layouts/application.html.erb
115
123
  - test/dummy/bin/bundle
116
124
  - test/dummy/bin/rails
@@ -131,6 +139,7 @@ files:
131
139
  - test/dummy/config/initializers/mime_types.rb
132
140
  - test/dummy/config/initializers/session_store.rb
133
141
  - test/dummy/config/initializers/wrap_parameters.rb
142
+ - test/dummy/config/locales/booties.yml
134
143
  - test/dummy/config/locales/en.yml
135
144
  - test/dummy/config/routes.rb
136
145
  - test/dummy/config/secrets.yml
@@ -143,6 +152,7 @@ files:
143
152
  - test/dummy/test/controllers/home_controller_test.rb
144
153
  - test/helpers/booties/application_helper_test.rb
145
154
  - test/integration/navigation_test.rb
155
+ - test/stub_view.rb
146
156
  - test/test_helper.rb
147
157
  homepage: https://github.com/jparker/booties
148
158
  licenses:
@@ -169,7 +179,8 @@ signing_key:
169
179
  specification_version: 4
170
180
  summary: Rails view helpers for Twitter Bootstrap.
171
181
  test_files:
172
- - test/booties_test.rb
182
+ - test/booties/modal_test.rb
183
+ - test/booties/panel_test.rb
173
184
  - test/dummy/app/assets/javascripts/application.js
174
185
  - test/dummy/app/assets/javascripts/home.js
175
186
  - test/dummy/app/assets/stylesheets/application.css
@@ -178,7 +189,11 @@ test_files:
178
189
  - test/dummy/app/controllers/home_controller.rb
179
190
  - test/dummy/app/helpers/application_helper.rb
180
191
  - test/dummy/app/helpers/home_helper.rb
181
- - test/dummy/app/views/home/show.html.erb
192
+ - test/dummy/app/views/home/badge.html.erb
193
+ - test/dummy/app/views/home/breadcrumbs.html.erb
194
+ - test/dummy/app/views/home/flag.html.erb
195
+ - test/dummy/app/views/home/modal.html.erb
196
+ - test/dummy/app/views/home/panel.html.erb
182
197
  - test/dummy/app/views/layouts/application.html.erb
183
198
  - test/dummy/bin/bundle
184
199
  - test/dummy/bin/rails
@@ -198,6 +213,7 @@ test_files:
198
213
  - test/dummy/config/initializers/mime_types.rb
199
214
  - test/dummy/config/initializers/session_store.rb
200
215
  - test/dummy/config/initializers/wrap_parameters.rb
216
+ - test/dummy/config/locales/booties.yml
201
217
  - test/dummy/config/locales/en.yml
202
218
  - test/dummy/config/routes.rb
203
219
  - test/dummy/config/secrets.yml
@@ -213,4 +229,5 @@ test_files:
213
229
  - test/dummy/test/controllers/home_controller_test.rb
214
230
  - test/helpers/booties/application_helper_test.rb
215
231
  - test/integration/navigation_test.rb
232
+ - test/stub_view.rb
216
233
  - test/test_helper.rb
@@ -1,7 +0,0 @@
1
- require 'test_helper'
2
-
3
- class BootiesTest < ActiveSupport::TestCase
4
- test "truth" do
5
- assert_kind_of Module, Booties
6
- end
7
- end