capybara_minitest_spec 1.0.0 → 1.0.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 2afcd081680564a3493009ed655fe67207cc1319
4
+ data.tar.gz: 2488130d4e3f241050c48625cbaa17dfc3d3a641
5
+ SHA512:
6
+ metadata.gz: 5f72f1f8020db7109a1c92b4defb4699425c1672c12bb80bfce35b964c55b98cd11c579ad60c49914b7f7bdd4af7b74e7335c8a94fe407e4fea839e3bca2704d
7
+ data.tar.gz: 091ceb109163a9d3da810f2c62857209d3cfcb08ddc6dba25007763253439bf11582cb897dfe8fb502422ba6af7048a72f0838892f078cf161afc38718da4639
data/.rvmrc CHANGED
@@ -1 +1 @@
1
- rvm use --create ruby-1.9.3-p327@capybara_minispec
1
+ rvm --create ruby-2.0.0-p0@capybara_minispec
data/.travis.yml CHANGED
@@ -1,4 +1,4 @@
1
1
  language: ruby
2
2
  rvm:
3
- - 1.9.2
4
3
  - 1.9.3
4
+ - 2.0.0
data/LICENSE.txt ADDED
@@ -0,0 +1,22 @@
1
+ Copyright (c) 2013 Jared Ning
2
+
3
+ MIT License
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining
6
+ a copy of this software and associated documentation files (the
7
+ "Software"), to deal in the Software without restriction, including
8
+ without limitation the rights to use, copy, modify, merge, publish,
9
+ distribute, sublicense, and/or sell copies of the Software, and to
10
+ permit persons to whom the Software is furnished to do so, subject to
11
+ the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be
14
+ included in all copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
20
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/README.md CHANGED
@@ -37,6 +37,9 @@ assert_page_has_content?('<h1>Content</h1>', 'No such Text')
37
37
  # fails with 'expected there to be text "No such Text" in "Content"'
38
38
  ```
39
39
 
40
+ You can see all the available matchers [here] (https://github.com/jnicklas/capybara/blob/master/lib/capybara/rspec/matchers.rb#L104).
41
+ CapybaraMiniTestSpec iterates through those "have_x" methods and creates corresponding MiniTest assertions/expectations.
42
+
40
43
  ## Install
41
44
 
42
45
  ```ruby
@@ -48,7 +51,9 @@ NOTE: If after installing the Capybara gem, Nokogiri isn't installed, it's a kno
48
51
 
49
52
  ## Compatibility
50
53
 
51
- In theory, this should work with Capybara >= 2. At the time of this writing, it was tested with Capybara 2.0.1.
54
+ In theory, this should work with Capybara >= 2. The latest version it was tested with was Capybara 2.1.0.
55
+
56
+ For Capybara < 2 support, use a version of this gem < 1.0.
52
57
 
53
58
  ## Testing
54
59
 
@@ -10,6 +10,7 @@ Gem::Specification.new do |s|
10
10
  s.homepage = "https://github.com/ordinaryzelig/capybara_minitest_spec"
11
11
  s.summary = %q{Capybara + MiniTest::Spec}
12
12
  s.description = %q{Use Capybara matchers with MiniTest. Specifically, it defines MiniTest::Spec expectations like page.must_have_content('content').}
13
+ s.license = "MIT"
13
14
 
14
15
  s.rubyforge_project = "capybara_minitest_spec"
15
16
 
@@ -1,3 +1,3 @@
1
1
  module CapybaraMiniTestSpec
2
- VERSION = '1.0.0'
2
+ VERSION = '1.0.1'
3
3
  end
@@ -1,11 +1,35 @@
1
+ # Copied from 'capybara/spec/rspec/matchers_spec.rb' and changed to use minitest.
2
+ # https://gist.github.com/4297afa19edd44885248
1
3
  require_relative 'helper'
2
4
 
3
- # Setup Rack test app.
4
- require_relative 'test_app/test_app'
5
- Capybara.app = TestApp
5
+ # Bridge some gaps between RSpec and MiniTest.
6
+ class Minitest::Test
7
+ class << self
8
+ alias_method :context, :describe
9
+ end
10
+ alias_method :expect, :proc
11
+ end
6
12
 
13
+ module MiniTest::Assertions
14
+ # Yield, rescue, compare exception's message.
15
+ def assert_fails_with_message(exception_message)
16
+ yield
17
+ rescue Exception => exception
18
+ exception_raised = true
19
+ assert_match exception_message, exception.message
20
+ ensure
21
+ assert exception_raised, 'expected exception to be raised'
22
+ end
23
+ Proc.infect_an_assertion :assert_fails_with_message, :must_fail_with_message
24
+ end
25
+
26
+ # There is a capybara/spec/spec_helper, but the following lines seeem to be enough.
27
+ # Also, capybara/spec/spec_helper requires rspec.
28
+ require 'capybara/spec/test_app'
29
+ Capybara.default_selector = :xpath
30
+ Capybara.app = TestApp
7
31
 
8
- describe CapybaraMiniTestSpec do
32
+ describe Capybara::RSpecMatchers do
9
33
  include Capybara::DSL
10
34
  include Capybara::RSpecMatchers
11
35
 
@@ -23,7 +47,7 @@ describe CapybaraMiniTestSpec do
23
47
  it "fails if has_css? returns false" do
24
48
  expect do
25
49
  "<h1>Text</h1>".must_have_css('h2')
26
- end.must_raise_with_message(/expected to find css "h2" but there were no matches/)
50
+ end.must_fail_with_message(/expected to find css "h2" but there were no matches/)
27
51
  end
28
52
 
29
53
  it "passes if matched node count equals expected count" do
@@ -32,9 +56,28 @@ describe CapybaraMiniTestSpec do
32
56
 
33
57
  it "fails if matched node count does not equal expected count" do
34
58
  expect do
35
- "<h1>Text</h1>".must_have_css('h1', :count => 2)
36
- end.must_raise_with_message(/expected css "h1" to be found 2 times/)
59
+ "<h1>Text</h1>".must_have_css('h1', count: 2)
60
+ end.must_fail_with_message("expected to find css \"h1\" 2 times, found 1 match: \"Text\"")
61
+ end
62
+
63
+ it "fails if matched node count is less than expected minimum count" do
64
+ expect do
65
+ "<h1>Text</h1>".must_have_css('p', minimum: 1)
66
+ end.must_fail_with_message("expected to find css \"p\" at least 1 time but there were no matches")
67
+ end
68
+
69
+ it "fails if matched node count is more than expected maximum count" do
70
+ expect do
71
+ "<h1>Text</h1><h1>Text</h1><h1>Text</h1>".must_have_css('h1', maximum: 2)
72
+ end.must_fail_with_message('expected to find css "h1" at most 2 times, found 3 matches: "Text", "Text", "Text"')
73
+ end
74
+
75
+ it "fails if matched node count does not belong to expected range" do
76
+ expect do
77
+ "<h1>Text</h1>".must_have_css('h1', between: 2..3)
78
+ end.must_fail_with_message("expected to find css \"h1\" between 2 and 3 times, found 1 match: \"Text\"")
37
79
  end
80
+
38
81
  end
39
82
 
40
83
  context "with should_not" do
@@ -45,7 +88,7 @@ describe CapybaraMiniTestSpec do
45
88
  it "fails if has_no_css? returns false" do
46
89
  expect do
47
90
  "<h1>Text</h1>".wont_have_css('h1')
48
- end.must_raise_with_message(/expected not to find css "h1"/)
91
+ end.must_fail_with_message(/expected not to find css "h1"/)
49
92
  end
50
93
 
51
94
  it "passes if matched node count does not equal expected count" do
@@ -55,7 +98,7 @@ describe CapybaraMiniTestSpec do
55
98
  it "fails if matched node count equals expected count" do
56
99
  expect do
57
100
  "<h1>Text</h1>".wont_have_css('h1', :count => 1)
58
- end.must_raise_with_message(/expected not to find css "h1"/)
101
+ end.must_fail_with_message(/expected not to find css "h1"/)
59
102
  end
60
103
  end
61
104
  end
@@ -73,7 +116,7 @@ describe CapybaraMiniTestSpec do
73
116
  it "fails if has_css? returns false" do
74
117
  expect do
75
118
  page.must_have_css('h1#doesnotexist')
76
- end.must_raise_with_message(/expected to find css "h1#doesnotexist" but there were no matches/)
119
+ end.must_fail_with_message(/expected to find css "h1#doesnotexist" but there were no matches/)
77
120
  end
78
121
  end
79
122
 
@@ -85,7 +128,7 @@ describe CapybaraMiniTestSpec do
85
128
  it "fails if has_no_css? returns false" do
86
129
  expect do
87
130
  page.wont_have_css('h1')
88
- end.must_raise_with_message(/expected not to find css "h1"/)
131
+ end.must_fail_with_message(/expected not to find css "h1"/)
89
132
  end
90
133
  end
91
134
  end
@@ -105,7 +148,7 @@ describe CapybaraMiniTestSpec do
105
148
  it "fails if has_xpath? returns false" do
106
149
  expect do
107
150
  "<h1>Text</h1>".must_have_xpath('//h2')
108
- end.must_raise_with_message(%r(expected to find xpath "//h2" but there were no matches))
151
+ end.must_fail_with_message(%r(expected to find xpath "//h2" but there were no matches))
109
152
  end
110
153
  end
111
154
 
@@ -117,7 +160,7 @@ describe CapybaraMiniTestSpec do
117
160
  it "fails if has_no_xpath? returns false" do
118
161
  expect do
119
162
  "<h1>Text</h1>".wont_have_xpath('//h1')
120
- end.must_raise_with_message(%r(expected not to find xpath "//h1"))
163
+ end.must_fail_with_message(%r(expected not to find xpath "//h1"))
121
164
  end
122
165
  end
123
166
  end
@@ -135,7 +178,7 @@ describe CapybaraMiniTestSpec do
135
178
  it "fails if has_xpath? returns false" do
136
179
  expect do
137
180
  page.must_have_xpath("//h1[@id='doesnotexist']")
138
- end.must_raise_with_message(%r(expected to find xpath "//h1\[@id='doesnotexist'\]" but there were no matches))
181
+ end.must_fail_with_message(%r(expected to find xpath "//h1\[@id='doesnotexist'\]" but there were no matches))
139
182
  end
140
183
  end
141
184
 
@@ -147,7 +190,7 @@ describe CapybaraMiniTestSpec do
147
190
  it "fails if has_no_xpath? returns false" do
148
191
  expect do
149
192
  page.wont_have_xpath('//h1')
150
- end.must_raise_with_message(%r(expected not to find xpath "//h1"))
193
+ end.must_fail_with_message(%r(expected not to find xpath "//h1"))
151
194
  end
152
195
  end
153
196
  end
@@ -156,7 +199,7 @@ describe CapybaraMiniTestSpec do
156
199
  describe "have_selector matcher" do
157
200
  it "gives proper description" do
158
201
  matcher = have_selector('//h1')
159
- "<h1>Text</h1>".must_have_selector('//h1')
202
+ matcher.matches?("<h1>Text</h1>")
160
203
  matcher.description.must_equal "have xpath \"//h1\""
161
204
  end
162
205
 
@@ -169,7 +212,7 @@ describe CapybaraMiniTestSpec do
169
212
  it "fails if has_selector? returns false" do
170
213
  expect do
171
214
  "<h1>Text</h1>".must_have_selector('//h2')
172
- end.must_raise_with_message(%r(expected to find xpath "//h2" but there were no matches))
215
+ end.must_fail_with_message(%r(expected to find xpath "//h2" but there were no matches))
173
216
  end
174
217
  end
175
218
 
@@ -181,7 +224,7 @@ describe CapybaraMiniTestSpec do
181
224
  it "fails if has_no_selector? returns false" do
182
225
  expect do
183
226
  "<h1>Text</h1>".wont_have_selector(:css, 'h1')
184
- end.must_raise_with_message(%r(expected not to find css "h1"))
227
+ end.must_fail_with_message(%r(expected not to find css "h1"))
185
228
  end
186
229
  end
187
230
  end
@@ -199,13 +242,13 @@ describe CapybaraMiniTestSpec do
199
242
  it "fails if has_selector? returns false" do
200
243
  expect do
201
244
  page.must_have_selector("//h1[@id='doesnotexist']")
202
- end.must_raise_with_message(%r(expected to find xpath "//h1\[@id='doesnotexist'\]" but there were no matches))
245
+ end.must_fail_with_message(%r(expected to find xpath "//h1\[@id='doesnotexist'\]" but there were no matches))
203
246
  end
204
247
 
205
248
  it "includes text in error message" do
206
249
  expect do
207
250
  page.must_have_selector("//h1", :text => 'wrong text')
208
- end.must_raise_with_message(%r(expected to find xpath "//h1" with text "wrong text" but there were no matches))
251
+ end.must_fail_with_message(%r(expected to find xpath "//h1" with text "wrong text" but there were no matches))
209
252
  end
210
253
  end
211
254
 
@@ -217,7 +260,7 @@ describe CapybaraMiniTestSpec do
217
260
  it "fails if has_no_selector? returns false" do
218
261
  expect do
219
262
  page.wont_have_selector(:css, 'h1', :text => 'test')
220
- end.must_raise_with_message(%r(expected not to find css "h1" with text "test"))
263
+ end.must_fail_with_message(%r(expected not to find css "h1" with text "test"))
221
264
  end
222
265
  end
223
266
  end
@@ -225,7 +268,7 @@ describe CapybaraMiniTestSpec do
225
268
 
226
269
  describe "have_content matcher" do
227
270
  it "gives proper description" do
228
- have_content('Text').description.must_equal "have text \"Text\""
271
+ have_content('Text').description.must_equal "text \"Text\""
229
272
  end
230
273
 
231
274
  context "on a string" do
@@ -241,7 +284,7 @@ describe CapybaraMiniTestSpec do
241
284
  it "fails if has_content? returns false" do
242
285
  expect do
243
286
  "<h1>Text</h1>".must_have_content('No such Text')
244
- end.must_raise_with_message(/expected there to be text "No such Text" in "Text"/)
287
+ end.must_fail_with_message(/expected to find text "No such Text" in "Text"/)
245
288
  end
246
289
  end
247
290
 
@@ -257,7 +300,7 @@ describe CapybaraMiniTestSpec do
257
300
  it "fails if has_no_content? returns false" do
258
301
  expect do
259
302
  "<h1>Text</h1>".wont_have_content('Text')
260
- end.must_raise_with_message(/expected there not to be text "Text" in "Text"/)
303
+ end.must_fail_with_message(/expected not to find text "Text" in "Text"/)
261
304
  end
262
305
  end
263
306
  end
@@ -279,7 +322,7 @@ describe CapybaraMiniTestSpec do
279
322
  it "fails if has_content? returns false" do
280
323
  expect do
281
324
  page.must_have_content('No such Text')
282
- end.must_raise_with_message(/expected there to be text "No such Text" in "(.*)This is a test(.*)"/)
325
+ end.must_fail_with_message(/expected to find text "No such Text" in "(.*)This is a test(.*)"/)
283
326
  end
284
327
 
285
328
  context "with default selector CSS" do
@@ -287,7 +330,7 @@ describe CapybaraMiniTestSpec do
287
330
  it "fails if has_content? returns false" do
288
331
  expect do
289
332
  page.must_have_content('No such Text')
290
- end.must_raise_with_message(/expected there to be text "No such Text" in "(.*)This is a test(.*)"/)
333
+ end.must_fail_with_message(/expected to find text "No such Text" in "(.*)This is a test(.*)"/)
291
334
  end
292
335
  after { Capybara.default_selector = :xpath }
293
336
  end
@@ -301,7 +344,7 @@ describe CapybaraMiniTestSpec do
301
344
  it "fails if has_no_content? returns false" do
302
345
  expect do
303
346
  page.wont_have_content('This is a test')
304
- end.must_raise_with_message(/expected there not to be text "This is a test"/)
347
+ end.must_fail_with_message(/expected not to find text "This is a test"/)
305
348
  end
306
349
  end
307
350
  end
@@ -309,7 +352,7 @@ describe CapybaraMiniTestSpec do
309
352
 
310
353
  describe "have_text matcher" do
311
354
  it "gives proper description" do
312
- have_text('Text').description.must_equal "have text \"Text\""
355
+ have_text('Text').description.must_equal "text \"Text\""
313
356
  end
314
357
 
315
358
  context "on a string" do
@@ -325,13 +368,37 @@ describe CapybaraMiniTestSpec do
325
368
  it "fails if has_text? returns false" do
326
369
  expect do
327
370
  "<h1>Text</h1>".must_have_text('No such Text')
328
- end.must_raise_with_message(/expected there to be text "No such Text" in "Text"/)
371
+ end.must_fail_with_message(/expected to find text "No such Text" in "Text"/)
372
+ end
373
+
374
+ it "casts Fixnum to string" do
375
+ expect do
376
+ "<h1>Text</h1>".must_have_text(3)
377
+ end.must_fail_with_message(/expected to find text "3" in "Text"/)
378
+ end
379
+
380
+ it "fails if matched text count does not equal to expected count" do
381
+ expect do
382
+ "<h1>Text</h1>".must_have_text('Text', count: 2)
383
+ end.must_fail_with_message(/expected to find text "Text" 2 times in "Text"/)
384
+ end
385
+
386
+ it "fails if matched text count is less than expected minimum count" do
387
+ expect do
388
+ "<h1>Text</h1>".must_have_text('Lorem', minimum: 1)
389
+ end.must_fail_with_message(/expected to find text "Lorem" at least 1 time in "Text"/)
390
+ end
391
+
392
+ it "fails if matched text count is more than expected maximum count" do
393
+ expect do
394
+ "<h1>Text TextText</h1>".must_have_text('Text', maximum: 2)
395
+ end.must_fail_with_message(/expected to find text "Text" at most 2 times in "Text TextText"/)
329
396
  end
330
397
 
331
- it "casts has_text? argument to string" do
398
+ it "fails if matched text count does not belong to expected range" do
332
399
  expect do
333
- "<h1>Text</h1>".must_have_text(:cast_me)
334
- end.must_raise_with_message(/expected there to be text "cast_me" in "Text"/)
400
+ "<h1>Text</h1>".must_have_text('Text', between: 2..3)
401
+ end.must_fail_with_message(/expected to find text "Text" between 2 and 3 times in "Text"/)
335
402
  end
336
403
  end
337
404
 
@@ -347,7 +414,7 @@ describe CapybaraMiniTestSpec do
347
414
  it "fails if has_no_text? returns false" do
348
415
  expect do
349
416
  "<h1>Text</h1>".wont_have_text('Text')
350
- end.must_raise_with_message(/expected there not to be text "Text" in "Text"/)
417
+ end.must_fail_with_message(/expected not to find text "Text" in "Text"/)
351
418
  end
352
419
  end
353
420
  end
@@ -366,10 +433,19 @@ describe CapybaraMiniTestSpec do
366
433
  page.must_have_text(/test/)
367
434
  end
368
435
 
436
+ it "can check for all text" do
437
+ page.must_have_text(:all, 'Some of this text is hidden!')
438
+ end
439
+
440
+ it "can check for visible text" do
441
+ page.must_have_text(:visible, 'Some of this text is')
442
+ page.wont_have_text(:visible, 'Some of this text is hidden!')
443
+ end
444
+
369
445
  it "fails if has_text? returns false" do
370
446
  expect do
371
447
  page.must_have_text('No such Text')
372
- end.must_raise_with_message(/expected there to be text "No such Text" in "(.*)This is a test(.*)"/)
448
+ end.must_fail_with_message(/expected to find text "No such Text" in "(.*)This is a test(.*)"/)
373
449
  end
374
450
 
375
451
  context "with default selector CSS" do
@@ -377,7 +453,7 @@ describe CapybaraMiniTestSpec do
377
453
  it "fails if has_text? returns false" do
378
454
  expect do
379
455
  page.must_have_text('No such Text')
380
- end.must_raise_with_message(/expected there to be text "No such Text" in "(.*)This is a test(.*)"/)
456
+ end.must_fail_with_message(/expected to find text "No such Text" in "(.*)This is a test(.*)"/)
381
457
  end
382
458
  after { Capybara.default_selector = :xpath }
383
459
  end
@@ -391,7 +467,7 @@ describe CapybaraMiniTestSpec do
391
467
  it "fails if has_no_text? returns false" do
392
468
  expect do
393
469
  page.wont_have_text('This is a test')
394
- end.must_raise_with_message(/expected there not to be text "This is a test"/)
470
+ end.must_fail_with_message(/expected not to find text "This is a test"/)
395
471
  end
396
472
  end
397
473
  end
@@ -411,7 +487,43 @@ describe CapybaraMiniTestSpec do
411
487
  it "fails if there is no such button" do
412
488
  expect do
413
489
  html.must_have_link('No such Link')
414
- end.must_raise_with_message(/expected to find link "No such Link"/)
490
+ end.must_fail_with_message(/expected to find link "No such Link"/)
491
+ end
492
+ end
493
+
494
+ describe "have_title matcher" do
495
+ it "gives proper description" do
496
+ have_title('Just a title').description.must_equal "have title \"Just a title\""
497
+ end
498
+
499
+ context "on a string" do
500
+ let(:html) { '<title>Just a title</title>' }
501
+
502
+ it "passes if there is such a title" do
503
+ html.must_have_title('Just a title')
504
+ end
505
+
506
+ it "fails if there is no such title" do
507
+ expect do
508
+ html.must_have_title('No such title')
509
+ end.must_fail_with_message(/expected there to be title "No such title"/)
510
+ end
511
+ end
512
+
513
+ context "on a page or node" do
514
+ before do
515
+ visit('/with_js')
516
+ end
517
+
518
+ it "passes if there is such a title" do
519
+ page.must_have_title('with_js')
520
+ end
521
+
522
+ it "fails if there is no such title" do
523
+ expect do
524
+ page.must_have_title('No such title')
525
+ end.must_fail_with_message(/expected there to be title "No such title"/)
526
+ end
415
527
  end
416
528
  end
417
529
 
@@ -429,7 +541,7 @@ describe CapybaraMiniTestSpec do
429
541
  it "fails if there is no such button" do
430
542
  expect do
431
543
  html.must_have_button('No such Button')
432
- end.must_raise_with_message(/expected to find button "No such Button"/)
544
+ end.must_fail_with_message(/expected to find button "No such Button"/)
433
545
  end
434
546
  end
435
547
 
@@ -447,7 +559,7 @@ describe CapybaraMiniTestSpec do
447
559
  it "fails if there is no such field" do
448
560
  expect do
449
561
  html.must_have_field('No such Field')
450
- end.must_raise_with_message(/expected to find field "No such Field"/)
562
+ end.must_fail_with_message(/expected to find field "No such Field"/)
451
563
  end
452
564
  end
453
565
 
@@ -469,13 +581,13 @@ describe CapybaraMiniTestSpec do
469
581
  it "fails if there is such a field but it is not checked" do
470
582
  expect do
471
583
  html.must_have_checked_field('unchecked field')
472
- end.must_raise_with_message(/expected to find field "unchecked field"/)
584
+ end.must_fail_with_message(/expected to find field "unchecked field"/)
473
585
  end
474
586
 
475
587
  it "fails if there is no such field" do
476
588
  expect do
477
589
  html.must_have_checked_field('no such field')
478
- end.must_raise_with_message(/expected to find field "no such field"/)
590
+ end.must_fail_with_message(/expected to find field "no such field"/)
479
591
  end
480
592
  end
481
593
 
@@ -483,7 +595,7 @@ describe CapybaraMiniTestSpec do
483
595
  it "fails if there is such a field and it is checked" do
484
596
  expect do
485
597
  html.wont_have_checked_field('it is checked')
486
- end.must_raise_with_message(/expected not to find field "it is checked"/)
598
+ end.must_fail_with_message(/expected not to find field "it is checked"/)
487
599
  end
488
600
 
489
601
  it "passes if there is such a field but it is not checked" do
@@ -514,13 +626,13 @@ describe CapybaraMiniTestSpec do
514
626
  it "fails if there is such a field but it is checked" do
515
627
  expect do
516
628
  html.must_have_unchecked_field('it is checked')
517
- end.must_raise_with_message(/expected to find field "it is checked"/)
629
+ end.must_fail_with_message(/expected to find field "it is checked"/)
518
630
  end
519
631
 
520
632
  it "fails if there is no such field" do
521
633
  expect do
522
634
  html.must_have_unchecked_field('no such field')
523
- end.must_raise_with_message(/expected to find field "no such field"/)
635
+ end.must_fail_with_message(/expected to find field "no such field"/)
524
636
  end
525
637
  end
526
638
 
@@ -528,7 +640,7 @@ describe CapybaraMiniTestSpec do
528
640
  it "fails if there is such a field and it is not checked" do
529
641
  expect do
530
642
  html.wont_have_unchecked_field('unchecked field')
531
- end.must_raise_with_message(/expected not to find field "unchecked field"/)
643
+ end.must_fail_with_message(/expected not to find field "unchecked field"/)
532
644
  end
533
645
 
534
646
  it "passes if there is such a field but it is checked" do
@@ -555,7 +667,7 @@ describe CapybaraMiniTestSpec do
555
667
  it "fails if there is no such select" do
556
668
  expect do
557
669
  html.must_have_select('No such Select box')
558
- end.must_raise_with_message(/expected to find select box "No such Select box"/)
670
+ end.must_fail_with_message(/expected to find select box "No such Select box"/)
559
671
  end
560
672
  end
561
673
 
@@ -573,8 +685,7 @@ describe CapybaraMiniTestSpec do
573
685
  it "fails if there is no such select" do
574
686
  expect do
575
687
  html.must_have_table('No such Table')
576
- end.must_raise_with_message(/expected to find table "No such Table"/)
688
+ end.must_fail_with_message(/expected to find table "No such Table"/)
577
689
  end
578
690
  end
579
691
  end
580
-
data/spec/helper.rb CHANGED
@@ -1,39 +1,7 @@
1
1
  require 'bundler/setup'
2
2
 
3
3
  require 'minitest/autorun'
4
+ require 'minitest/pride'
4
5
  require 'awesome_print'
5
6
 
6
- require 'capybara/dsl'
7
7
  require 'capybara_minitest_spec'
8
-
9
- # Make all specs a subclass of MiniTest::Spec.
10
- MiniTest::Spec.register_spec_type //, MiniTest::Spec
11
-
12
- # Bridge some gaps between RSpec and MiniTest.
13
- class MiniTest::Spec
14
-
15
- class << self
16
- alias_method :context, :describe
17
- end
18
-
19
- alias_method :expect, :proc
20
-
21
- end
22
-
23
- module MiniTest::Assertions
24
-
25
- # Yield, rescue, compare exception's message.
26
- def assert_raises_with_message(exception_message)
27
- yield
28
- rescue Exception => exception
29
- exception_raised = true
30
- assert_match exception_message, exception.message
31
- ensure
32
- assert exception_raised, 'expected exception to be raised'
33
- end
34
-
35
- end
36
-
37
- module MiniTest::Expectations
38
- infect_an_assertion :assert_raises_with_message, :must_raise_with_message
39
- end