assert 2.16.5 → 2.17.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (72) hide show
  1. checksums.yaml +7 -7
  2. data/Gemfile +3 -1
  3. data/README.md +20 -20
  4. data/assert.gemspec +5 -3
  5. data/bin/assert +4 -4
  6. data/lib/assert.rb +8 -8
  7. data/lib/assert/assert_runner.rb +7 -7
  8. data/lib/assert/assertions.rb +5 -5
  9. data/lib/assert/cli.rb +35 -35
  10. data/lib/assert/config.rb +8 -8
  11. data/lib/assert/config_helpers.rb +6 -6
  12. data/lib/assert/context.rb +17 -17
  13. data/lib/assert/context/test_dsl.rb +5 -5
  14. data/lib/assert/context_info.rb +2 -2
  15. data/lib/assert/default_runner.rb +1 -1
  16. data/lib/assert/default_suite.rb +1 -1
  17. data/lib/assert/default_view.rb +8 -8
  18. data/lib/assert/factory.rb +1 -1
  19. data/lib/assert/macro.rb +1 -1
  20. data/lib/assert/macros/methods.rb +1 -1
  21. data/lib/assert/result.rb +17 -17
  22. data/lib/assert/runner.rb +12 -8
  23. data/lib/assert/stub.rb +1 -1
  24. data/lib/assert/suite.rb +3 -3
  25. data/lib/assert/test.rb +11 -11
  26. data/lib/assert/utils.rb +8 -8
  27. data/lib/assert/version.rb +1 -1
  28. data/lib/assert/view.rb +19 -19
  29. data/lib/assert/view_helpers.rb +6 -6
  30. data/test/helper.rb +2 -11
  31. data/test/support/factory.rb +6 -6
  32. data/test/system/stub_tests.rb +204 -204
  33. data/test/system/test_tests.rb +13 -13
  34. data/test/unit/assert_tests.rb +9 -9
  35. data/test/unit/assertions/assert_block_tests.rb +2 -2
  36. data/test/unit/assertions/assert_empty_tests.rb +6 -6
  37. data/test/unit/assertions/assert_equal_tests.rb +5 -5
  38. data/test/unit/assertions/assert_file_exists_tests.rb +6 -6
  39. data/test/unit/assertions/assert_includes_tests.rb +7 -7
  40. data/test/unit/assertions/assert_instance_of_tests.rb +5 -5
  41. data/test/unit/assertions/assert_kind_of_tests.rb +5 -5
  42. data/test/unit/assertions/assert_match_tests.rb +5 -5
  43. data/test/unit/assertions/assert_nil_tests.rb +5 -5
  44. data/test/unit/assertions/assert_raises_tests.rb +2 -2
  45. data/test/unit/assertions/assert_respond_to_tests.rb +5 -5
  46. data/test/unit/assertions/assert_same_tests.rb +13 -13
  47. data/test/unit/assertions/assert_true_false_tests.rb +7 -7
  48. data/test/unit/assertions_tests.rb +2 -2
  49. data/test/unit/config_helpers_tests.rb +5 -5
  50. data/test/unit/config_tests.rb +12 -12
  51. data/test/unit/context/setup_dsl_tests.rb +7 -7
  52. data/test/unit/context/subject_dsl_tests.rb +3 -3
  53. data/test/unit/context/suite_dsl_tests.rb +3 -3
  54. data/test/unit/context/test_dsl_tests.rb +8 -8
  55. data/test/unit/context_info_tests.rb +6 -6
  56. data/test/unit/context_tests.rb +16 -16
  57. data/test/unit/default_runner_tests.rb +3 -3
  58. data/test/unit/default_suite_tests.rb +3 -3
  59. data/test/unit/factory_tests.rb +3 -3
  60. data/test/unit/file_line_tests.rb +12 -12
  61. data/test/unit/macro_tests.rb +2 -2
  62. data/test/unit/result_tests.rb +18 -18
  63. data/test/unit/runner_tests.rb +9 -9
  64. data/test/unit/suite_tests.rb +5 -5
  65. data/test/unit/test_tests.rb +19 -19
  66. data/test/unit/utils_tests.rb +18 -18
  67. data/test/unit/view_helpers_tests.rb +15 -15
  68. data/test/unit/view_tests.rb +11 -11
  69. data/tmp/.gitkeep +0 -0
  70. metadata +46 -44
  71. data/.assert.rb +0 -3
  72. data/.gitignore +0 -19
@@ -1,5 +1,5 @@
1
- require 'assert'
2
- require 'assert/macro'
1
+ require "assert"
2
+ require "assert/macro"
3
3
 
4
4
  class Assert::Macro
5
5
 
@@ -1,7 +1,7 @@
1
- require 'assert'
2
- require 'assert/result'
1
+ require "assert"
2
+ require "assert/result"
3
3
 
4
- require 'assert/file_line'
4
+ require "assert/file_line"
5
5
 
6
6
  module Assert::Result
7
7
 
@@ -70,7 +70,7 @@ module Assert::Result
70
70
 
71
71
  should "know its class-level type/name" do
72
72
  assert_equal :unknown, subject.class.type
73
- assert_equal '', subject.class.name
73
+ assert_equal "", subject.class.name
74
74
  end
75
75
 
76
76
  should "know how to build a result for a given test" do
@@ -105,13 +105,13 @@ module Assert::Result
105
105
  result = Base.new({})
106
106
 
107
107
  assert_equal :unknown, result.type
108
- assert_equal '', result.name
109
- assert_equal '', result.test_name
110
- assert_equal Assert::FileLine.parse(''), result.test_file_line
111
- assert_equal '', result.message
112
- assert_equal '', result.output
108
+ assert_equal "", result.name
109
+ assert_equal "", result.test_name
110
+ assert_equal Assert::FileLine.parse(""), result.test_file_line
111
+ assert_equal "", result.message
112
+ assert_equal "", result.output
113
113
  assert_equal Backtrace.new([]), result.backtrace
114
- assert_equal '', result.trace
114
+ assert_equal "", result.trace
115
115
  end
116
116
 
117
117
  should "know its test file line attrs" do
@@ -212,8 +212,8 @@ module Assert::Result
212
212
 
213
213
  assert_equal 3, str.split("\n").count
214
214
 
215
- Assert.stub(subject, :message){ '' }
216
- Assert.stub(subject, :trace){ '' }
215
+ Assert.stub(subject, :message){ "" }
216
+ Assert.stub(subject, :trace){ "" }
217
217
 
218
218
  assert_equal 1, subject.to_s.split("\n").count
219
219
  end
@@ -227,7 +227,7 @@ module Assert::Result
227
227
  end
228
228
 
229
229
  should "show only its class and message when inspected" do
230
- exp = "#<#{subject.class}:#{'0x0%x' % (subject.object_id << 1)} "\
230
+ exp = "#<#{subject.class}:#{"0x0%x" % (subject.object_id << 1)} "\
231
231
  "@message=#{subject.message.inspect} "\
232
232
  "@file_line=#{subject.file_line.to_s.inspect} "\
233
233
  "@test_file_line=#{subject.test_file_line.to_s.inspect}>"
@@ -246,7 +246,7 @@ module Assert::Result
246
246
  should "know its type/name" do
247
247
  assert_equal :pass, subject.type
248
248
  assert_equal :pass, subject.class.type
249
- assert_equal 'Pass', subject.class.name
249
+ assert_equal "Pass", subject.class.name
250
250
  end
251
251
 
252
252
  end
@@ -261,7 +261,7 @@ module Assert::Result
261
261
  should "know its type/name" do
262
262
  assert_equal :ignore, subject.type
263
263
  assert_equal :ignore, subject.class.type
264
- assert_equal 'Ignore', subject.class.name
264
+ assert_equal "Ignore", subject.class.name
265
265
  end
266
266
 
267
267
  end
@@ -298,7 +298,7 @@ module Assert::Result
298
298
  should "know its type/name" do
299
299
  assert_equal :fail, subject.type
300
300
  assert_equal :fail, subject.class.type
301
- assert_equal 'Fail', subject.class.name
301
+ assert_equal "Fail", subject.class.name
302
302
  end
303
303
 
304
304
  should "allow creating for a test with TestFailure exceptions" do
@@ -349,7 +349,7 @@ module Assert::Result
349
349
  should "know its type/name" do
350
350
  assert_equal :skip, subject.type
351
351
  assert_equal :skip, subject.class.type
352
- assert_equal 'Skip', subject.class.name
352
+ assert_equal "Skip", subject.class.name
353
353
  end
354
354
 
355
355
  should "allow creating for a test with TestSkipped exceptions" do
@@ -389,7 +389,7 @@ module Assert::Result
389
389
 
390
390
  should "know its class-level type/name" do
391
391
  assert_equal :error, subject.class.type
392
- assert_equal 'Error', subject.class.name
392
+ assert_equal "Error", subject.class.name
393
393
  end
394
394
 
395
395
  should "allow creating for a test with exceptions" do
@@ -1,11 +1,11 @@
1
- require 'assert'
2
- require 'assert/runner'
1
+ require "assert"
2
+ require "assert/runner"
3
3
 
4
- require 'stringio'
5
- require 'assert/config_helpers'
6
- require 'assert/default_suite'
7
- require 'assert/result'
8
- require 'assert/view'
4
+ require "stringio"
5
+ require "assert/config_helpers"
6
+ require "assert/default_suite"
7
+ require "assert/result"
8
+ require "assert/view"
9
9
 
10
10
  class Assert::Runner
11
11
 
@@ -113,7 +113,7 @@ class Assert::Runner
113
113
  "seeded with \"#{subject.runner_seed}\"\n"
114
114
  assert_includes exp, @view_output
115
115
 
116
- @view_output.gsub!(/./, '')
116
+ @view_output.gsub!(/./, "")
117
117
  @config.suite.clear_tests_to_run
118
118
  subject.run
119
119
  assert_not_includes exp, @view_output
@@ -143,7 +143,7 @@ class Assert::Runner
143
143
  @config.suite.clear_tests_to_run
144
144
  @config.suite.on_test(@test)
145
145
  @config.single_test @test.file_line.to_s
146
- @view_output.gsub!(/./, '')
146
+ @view_output.gsub!(/./, "")
147
147
  subject.run
148
148
 
149
149
  exp = "Running test: #{subject.single_test_file_line}, " \
@@ -1,9 +1,9 @@
1
- require 'assert'
2
- require 'assert/suite'
1
+ require "assert"
2
+ require "assert/suite"
3
3
 
4
- require 'assert/config_helpers'
5
- require 'assert/test'
6
- require 'test/support/inherited_stuff'
4
+ require "assert/config_helpers"
5
+ require "assert/test"
6
+ require "test/support/inherited_stuff"
7
7
 
8
8
  class Assert::Suite
9
9
 
@@ -1,9 +1,9 @@
1
- require 'assert'
2
- require 'assert/test'
1
+ require "assert"
2
+ require "assert/test"
3
3
 
4
- require 'assert/config'
5
- require 'assert/file_line'
6
- require 'assert/result'
4
+ require "assert/config"
5
+ require "assert/file_line"
6
+ require "assert/result"
7
7
 
8
8
  class Assert::Test
9
9
 
@@ -46,7 +46,7 @@ class Assert::Test
46
46
  end
47
47
 
48
48
  should "build tests for a method" do
49
- meth = 'a_test_method'
49
+ meth = "a_test_method"
50
50
  test = subject.for_method(meth, @context_info, @config)
51
51
 
52
52
  exp = Assert::FileLine.parse(@context_info.called_from)
@@ -108,9 +108,9 @@ class Assert::Test
108
108
  should "default its attrs" do
109
109
  test = Assert::Test.new
110
110
 
111
- assert_equal Assert::FileLine.parse(''), test.file_line
112
- assert_equal '', test.name
113
- assert_equal '', test.output
111
+ assert_equal Assert::FileLine.parse(""), test.file_line
112
+ assert_equal "", test.name
113
+ assert_equal "", test.output
114
114
  assert_equal 0, test.run_time
115
115
 
116
116
  assert_nil test.context_info
@@ -131,7 +131,7 @@ class Assert::Test
131
131
  attrs = [:name, :context_info].collect do |method|
132
132
  "@#{method}=#{subject.send(method).inspect}"
133
133
  end.join(" ")
134
- exp = "#<#{subject.class}:#{'0x0%x' % (subject.object_id << 1)} #{attrs}>"
134
+ exp = "#<#{subject.class}:#{"0x0%x" % (subject.object_id << 1)} #{attrs}>"
135
135
  assert_equal exp, subject.inspect
136
136
  end
137
137
 
@@ -224,9 +224,9 @@ class Assert::Test
224
224
 
225
225
  def assert_failed(test)
226
226
  with_backtrace(caller) do
227
- assert_equal 1, test_run_result_count, 'too many/few fail results'
227
+ assert_equal 1, test_run_result_count, "too many/few fail results"
228
228
  test_run_results.each do |result|
229
- assert_kind_of Assert::Result::Fail, result, 'not a fail result'
229
+ assert_kind_of Assert::Result::Fail, result, "not a fail result"
230
230
  end
231
231
  end
232
232
  end
@@ -263,9 +263,9 @@ class Assert::Test
263
263
 
264
264
  def assert_skipped(test)
265
265
  with_backtrace(caller) do
266
- assert_equal 1, test_run_result_count, 'too many/few skip results'
266
+ assert_equal 1, test_run_result_count, "too many/few skip results"
267
267
  test_run_results.each do |result|
268
- assert_kind_of Assert::Result::Skip, result, 'not a skip result'
268
+ assert_kind_of Assert::Result::Skip, result, "not a skip result"
269
269
  end
270
270
  end
271
271
  end
@@ -286,7 +286,7 @@ class Assert::Test
286
286
 
287
287
  should "capture errors in the context setup" do
288
288
  test = Factory.test("setup error test", @context_info){ }
289
- test.context_class.setup{ raise 'an error' }
289
+ test.context_class.setup{ raise "an error" }
290
290
  test.run(&test_run_callback)
291
291
 
292
292
  assert_errored(test)
@@ -294,7 +294,7 @@ class Assert::Test
294
294
 
295
295
  should "capture errors in the context teardown" do
296
296
  test = Factory.test("teardown error test", @context_info){ }
297
- test.context_class.teardown{ raise 'an error' }
297
+ test.context_class.teardown{ raise "an error" }
298
298
  test.run(&test_run_callback)
299
299
 
300
300
  assert_errored(test)
@@ -304,9 +304,9 @@ class Assert::Test
304
304
 
305
305
  def assert_errored(test)
306
306
  with_backtrace(caller) do
307
- assert_equal 1, test_run_result_count, 'too many/few error results'
307
+ assert_equal 1, test_run_result_count, "too many/few error results"
308
308
  test_run_results.each do |result|
309
- assert_kind_of Assert::Result::Error, result, 'not an error result'
309
+ assert_kind_of Assert::Result::Error, result, "not an error result"
310
310
  end
311
311
  end
312
312
  end
@@ -325,7 +325,7 @@ class Assert::Test
325
325
 
326
326
  should "raises signal exceptions in the context setup" do
327
327
  test = Factory.test("setup signal test", @context_info){ }
328
- test.context_class.setup{ raise SignalException, 'INT' }
328
+ test.context_class.setup{ raise SignalException, "INT" }
329
329
 
330
330
  assert_raises(SignalException){ test.run }
331
331
  end
@@ -1,8 +1,8 @@
1
- require 'assert'
2
- require 'assert/utils'
1
+ require "assert"
2
+ require "assert/utils"
3
3
 
4
- require 'tempfile'
5
- require 'assert/config'
4
+ require "tempfile"
5
+ require "assert/config"
6
6
 
7
7
  module Assert::Utils
8
8
 
@@ -10,7 +10,7 @@ module Assert::Utils
10
10
  desc "Assert::Utils"
11
11
  subject{ Assert::Utils }
12
12
  setup do
13
- @objs = [ 1, 'hi there', Hash.new, [:a, :b]]
13
+ @objs = [1, "hi there", Hash.new, [:a, :b]]
14
14
  end
15
15
 
16
16
  should have_imeths :show, :show_for_diff
@@ -25,7 +25,7 @@ module Assert::Utils
25
25
  setup do
26
26
  @pp_config = Assert::Config.new({
27
27
  :pp_objects => true,
28
- :pp_proc => Proc.new{ |input| 'herp derp' }
28
+ :pp_proc => Proc.new{ |input| "herp derp" }
29
29
  })
30
30
  end
31
31
 
@@ -66,8 +66,8 @@ module Assert::Utils
66
66
  desc "`tempfile`"
67
67
 
68
68
  should "require tempfile, open a tempfile, write the given content, and yield it" do
69
- subject.tempfile('a-name', 'some-content') do |tmpfile|
70
- assert_equal false, (require 'tempfile')
69
+ subject.tempfile("a-name", "some-content") do |tmpfile|
70
+ assert_equal false, (require "tempfile")
71
71
  assert tmpfile
72
72
  assert_kind_of Tempfile, tmpfile
73
73
 
@@ -82,12 +82,12 @@ module Assert::Utils
82
82
  desc "`stdlib_pp_proc`"
83
83
 
84
84
  should "build a pp proc that uses stdlib `PP.pp` to pretty print objects" do
85
- exp_obj_pps = @objs.map{ |o| PP.pp(o, '', 79).strip }
85
+ exp_obj_pps = @objs.map{ |o| PP.pp(o, "", 79).strip }
86
86
  act_obj_pps = @objs.map{ |o| subject.stdlib_pp_proc.call(o) }
87
87
  assert_equal exp_obj_pps, act_obj_pps
88
88
 
89
89
  cust_width = 1
90
- exp_obj_pps = @objs.map{ |o| PP.pp(o, '', cust_width).strip }
90
+ exp_obj_pps = @objs.map{ |o| PP.pp(o, "", cust_width).strip }
91
91
  act_obj_pps = @objs.map{ |o| subject.stdlib_pp_proc(cust_width).call(o) }
92
92
  assert_equal exp_obj_pps, act_obj_pps
93
93
  end
@@ -104,11 +104,11 @@ module Assert::Utils
104
104
  should "be true if either output has newlines or is bigger than 29 chars" do
105
105
  proc = subject.default_use_diff_proc
106
106
 
107
- assert_not proc.call('', '')
108
- assert proc.call(@longer, '')
109
- assert proc.call(@newlines, '')
110
- assert proc.call('', @longer)
111
- assert proc.call('', @newlines)
107
+ assert_not proc.call("", "")
108
+ assert proc.call(@longer, "")
109
+ assert proc.call(@newlines, "")
110
+ assert proc.call("", @longer)
111
+ assert proc.call("", @newlines)
112
112
  assert proc.call(@longer, @newlines)
113
113
  end
114
114
 
@@ -117,8 +117,8 @@ module Assert::Utils
117
117
  class SyscmdDiffProc < UnitTests
118
118
  desc "`syscmd_diff_proc`"
119
119
  setup do
120
- @diff_a_file = File.join(ROOT_PATH, 'test/support/diff_a.txt')
121
- @diff_b_file = File.join(ROOT_PATH, 'test/support/diff_b.txt')
120
+ @diff_a_file = File.join(ROOT_PATH, "test/support/diff_a.txt")
121
+ @diff_b_file = File.join(ROOT_PATH, "test/support/diff_b.txt")
122
122
 
123
123
  @diff_a = File.read(@diff_a_file)
124
124
  @diff_b = File.read(@diff_b_file)
@@ -134,7 +134,7 @@ module Assert::Utils
134
134
  end
135
135
 
136
136
  should "allow you to specify a custom syscmd" do
137
- cust_syscmd = 'diff'
137
+ cust_syscmd = "diff"
138
138
  exp_diff_out = `#{cust_syscmd} #{@diff_a_file} #{@diff_b_file}`.strip.tap do |out|
139
139
  out.sub!(/^\-\-\- .+/, "--- expected")
140
140
  out.sub!(/^\+\+\+ .+/, "+++ actual")
@@ -1,11 +1,11 @@
1
- require 'assert'
2
- require 'assert/view_helpers'
1
+ require "assert"
2
+ require "assert/view_helpers"
3
3
 
4
- require 'stringio'
5
- require 'assert/config'
6
- require 'assert/config_helpers'
7
- require 'assert/result'
8
- require 'assert/view'
4
+ require "stringio"
5
+ require "assert/config"
6
+ require "assert/config_helpers"
7
+ require "assert/result"
8
+ require "assert/view"
9
9
 
10
10
  module Assert::ViewHelpers
11
11
 
@@ -16,7 +16,7 @@ module Assert::ViewHelpers
16
16
  @helpers_class = Class.new do
17
17
  include Assert::ViewHelpers
18
18
 
19
- option 'test_opt', test_opt_val
19
+ option "test_opt", test_opt_val
20
20
 
21
21
  def config
22
22
  # use the assert config since it has tests, contexts, etc
@@ -71,15 +71,15 @@ module Assert::ViewHelpers
71
71
 
72
72
  should "know how to build the re-run test cmd" do
73
73
  test_id = "#{Dir.pwd}/#{Factory.string}_tests.rb:#{Factory.integer}"
74
- exp = "assert -t #{test_id.gsub(Dir.pwd, '.')}"
74
+ exp = "assert -t #{test_id.gsub(Dir.pwd, ".")}"
75
75
  assert_equal exp, subject.re_run_test_cmd(test_id)
76
76
  end
77
77
 
78
78
  should "know its tests-to-run count and result count statements" do
79
- exp = "#{subject.tests_to_run_count} test#{'s' if subject.tests_to_run_count != 1}"
79
+ exp = "#{subject.tests_to_run_count} test#{"s" if subject.tests_to_run_count != 1}"
80
80
  assert_equal exp, subject.tests_to_run_count_statement
81
81
 
82
- exp = "#{subject.result_count} result#{'s' if subject.result_count != 1}"
82
+ exp = "#{subject.result_count} result#{"s" if subject.result_count != 1}"
83
83
  assert_equal exp, subject.result_count_statement
84
84
  end
85
85
 
@@ -88,7 +88,7 @@ module Assert::ViewHelpers
88
88
  assert_equal items.first, subject.to_sentence(items)
89
89
 
90
90
  items = 2.times.map{ Factory.string }
91
- assert_equal items.join(' and '), subject.to_sentence(items)
91
+ assert_equal items.join(" and "), subject.to_sentence(items)
92
92
 
93
93
  items = (Factory.integer(3)+2).times.map{ Factory.string }
94
94
  exp = [items[0..-2].join(", "), items.last].join(", and ")
@@ -147,14 +147,14 @@ module Assert::ViewHelpers
147
147
 
148
148
  should "map its code style names to ansi code strings" do
149
149
  styles = Factory.integer(3).times.map{ subject::CODES.keys.sample }
150
- exp = styles.map{ |n| "\e[#{subject::CODES[n]}m" }.join('')
150
+ exp = styles.map{ |n| "\e[#{subject::CODES[n]}m" }.join("")
151
151
  assert_equal exp, subject.code_for(*styles)
152
152
 
153
153
  styles = Factory.integer(3).times.map{ Factory.string }
154
- assert_equal '', subject.code_for(*styles)
154
+ assert_equal "", subject.code_for(*styles)
155
155
 
156
156
  styles = []
157
- assert_equal '', subject.code_for(*styles)
157
+ assert_equal "", subject.code_for(*styles)
158
158
  end
159
159
 
160
160
  end
@@ -1,10 +1,10 @@
1
- require 'assert'
2
- require 'assert/view'
1
+ require "assert"
2
+ require "assert/view"
3
3
 
4
- require 'stringio'
5
- require 'assert/config_helpers'
6
- require 'assert/suite'
7
- require 'assert/view_helpers'
4
+ require "stringio"
5
+ require "assert/config_helpers"
6
+ require "assert/suite"
7
+ require "assert/view_helpers"
8
8
 
9
9
  class Assert::View
10
10
 
@@ -51,11 +51,11 @@ class Assert::View
51
51
  end
52
52
 
53
53
  should "default its result abbreviations" do
54
- assert_equal '.', subject.pass_abbrev
55
- assert_equal 'F', subject.fail_abbrev
56
- assert_equal 'I', subject.ignore_abbrev
57
- assert_equal 'S', subject.skip_abbrev
58
- assert_equal 'E', subject.error_abbrev
54
+ assert_equal ".", subject.pass_abbrev
55
+ assert_equal "F", subject.fail_abbrev
56
+ assert_equal "I", subject.ignore_abbrev
57
+ assert_equal "S", subject.skip_abbrev
58
+ assert_equal "E", subject.error_abbrev
59
59
  end
60
60
 
61
61
  should "know its config" do