spec 5.0.19 → 5.3.3

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.
Files changed (47) hide show
  1. checksums.yaml +4 -4
  2. data/History.txt +106 -0
  3. data/Manifest.txt +1 -1
  4. data/README.txt +83 -37
  5. data/Rakefile +3 -56
  6. data/lib/minitest.rb +58 -156
  7. data/lib/minitest/assertions.rb +13 -1
  8. data/lib/minitest/benchmark.rb +3 -3
  9. data/lib/minitest/hell.rb +1 -1
  10. data/lib/minitest/mock.rb +2 -2
  11. data/lib/minitest/parallel.rb +40 -0
  12. data/lib/minitest/pride_plugin.rb +1 -2
  13. data/lib/minitest/spec.rb +23 -22
  14. data/lib/minitest/test.rb +19 -8
  15. data/lib/spec.rb +156 -2
  16. data/readme.md +1 -1
  17. data/spec.gemspec +2 -2
  18. data/test/manual/simple.rb +10 -15
  19. data/test/minitest/metametameta.rb +4 -2
  20. data/test/minitest/test_minitest_benchmark.rb +7 -1
  21. data/test/minitest/test_minitest_mock.rb +12 -2
  22. data/test/minitest/test_minitest_reporter.rb +0 -1
  23. data/test/minitest/test_minitest_spec.rb +41 -4
  24. data/test/minitest/test_minitest_unit.rb +38 -20
  25. metadata +15 -37
  26. data/lib/minitest/parallel_each.rb +0 -120
  27. data/release_notes.md +0 -80
  28. data/test/manual/after_run.rb +0 -17
  29. data/test/manual/appium.rb +0 -14
  30. data/test/manual/appium_after_last.rb +0 -24
  31. data/test/manual/appium_before_first.rb +0 -23
  32. data/test/manual/assert.rb +0 -61
  33. data/test/manual/before_first_0.rb +0 -27
  34. data/test/manual/before_first_1.rb +0 -29
  35. data/test/manual/ctrl_c.rb +0 -11
  36. data/test/manual/debug.rb +0 -37
  37. data/test/manual/do_end.rb +0 -31
  38. data/test/manual/raise.rb +0 -61
  39. data/test/manual/run2.rb +0 -74
  40. data/test/manual/run3.rb +0 -91
  41. data/test/manual/setup.rb +0 -13
  42. data/test/manual/simple2.rb +0 -20
  43. data/test/manual/skip.rb +0 -15
  44. data/test/manual/t.rb +0 -11
  45. data/test/manual/trace.rb +0 -19
  46. data/test/manual/trace2.rb +0 -15
  47. data/test/minitest/test_helper.rb +0 -20
@@ -1,31 +0,0 @@
1
- # encoding: utf-8
2
-
3
- require 'rubygems'
4
- require 'stringio' # stdlib
5
- require 'spec' # not 'minitest'
6
-
7
- describe 'a' do
8
- t('') do
9
- def ok(&block); block.call; end
10
- a = ok do
11
- true
12
- end
13
- # should be true not nil
14
- $stdout.puts "a is nil? #{a.nil?}"
15
- end
16
- end
17
-
18
- Minitest.run_specs
19
-
20
-
21
- $driver.public_methods(false).each do | m |
22
- MiniTest::Spec.class_eval do
23
- define_method m do | *args, &block |
24
- begin
25
- super(*args, &block)
26
- rescue NoMethodError
27
- $driver.send m, *args, &block if $driver.respond_to?(m)
28
- end
29
- end
30
- end
31
- end
@@ -1,61 +0,0 @@
1
- # encoding: utf-8
2
-
3
- require 'rubygems'
4
- require 'stringio' # stdlib
5
- require 'spec' # not 'minitest'
6
-
7
- class MiniTest::Spec
8
- @@output = StringIO.new
9
-
10
- def self.output
11
- @@output
12
- end
13
-
14
- def p msg
15
- @@output.puts msg
16
- end
17
- end
18
-
19
- class SpecTest < MiniTest::Spec
20
- describe 'a' do
21
- t('') { p 1 }
22
- t('') { raise 'fail' }
23
- t('') { p 3 }
24
- t('') { p 4 }
25
- end
26
- end
27
-
28
- options = {}
29
- out = MiniTest::Spec.output
30
- reporter = Minitest::CompositeReporter.new
31
- reporter << Minitest::SummaryReporter.new(out, options)
32
- reporter << Minitest::ProgressReporter.new(out, options)
33
-
34
- reporter.start
35
-
36
- begin
37
- Minitest.__run reporter, options
38
- reporter.reporters.each { |r| r.report }
39
- rescue Minitest::Runnable::ExitAfterFirstFail
40
- end
41
-
42
- out.flush
43
- out.rewind
44
-
45
- actual = out.readlines.join ''
46
-
47
- exp = <<'EXP'
48
- 1
49
- .E
50
-
51
- Finished in 0s
52
-
53
- 1) Error:
54
- a#test_0002_:
55
- RuntimeError: fail
56
- raise.rb:22:in `block (2 levels) in <class:SpecTest>'
57
-
58
- 2 runs, 0 assertions, 0 failures, 1 errors, 0 skips
59
- EXP
60
-
61
- puts actual.must_equal exp
@@ -1,74 +0,0 @@
1
- # encoding: utf-8
2
-
3
- require 'rubygems'
4
- require 'stringio' # stdlib
5
- require 'spec' # not 'minitest'
6
-
7
- class MiniTest::Spec
8
- @@output = StringIO.new
9
-
10
- def self.output
11
- @@output
12
- end
13
-
14
- def p msg
15
- @@output.puts msg
16
- end
17
- end
18
-
19
- class SpecTest < MiniTest::Spec
20
- describe 'a' do
21
- t('') { p 1 }
22
- t('') { p 2 }
23
- t('') { p 3 }
24
- t('') { p 4 }
25
- t('') { p 5 }
26
- t('') { p 6 }
27
- t('') { p 7 }
28
- end
29
-
30
- describe 'b' do
31
- before { p '-- before' }
32
- t('z') { p 8 }
33
- t('b') { p 9 }
34
- t('a') { p 10 }
35
- end
36
-
37
- describe 'z' do
38
- t('a') { p 11 }
39
- t('z') { p 12 }
40
- end
41
- end
42
-
43
- options = {}
44
- out = MiniTest::Spec.output
45
- reporter = Minitest::CompositeReporter.new
46
- reporter << Minitest::SummaryReporter.new(out, options)
47
- reporter << Minitest::ProgressReporter.new(out, options)
48
-
49
- Minitest.__run reporter, options
50
-
51
- out.flush
52
- out.rewind
53
-
54
- actual = out.readlines.join ''
55
- exp = <<'EXP'.strip
56
- 1
57
- .2
58
- .3
59
- .4
60
- .5
61
- .6
62
- .7
63
- .-- before
64
- 8
65
- .-- before
66
- 9
67
- .-- before
68
- 10
69
- .11
70
- .12
71
- .
72
- EXP
73
-
74
- puts actual.must_equal exp
@@ -1,91 +0,0 @@
1
- # encoding: utf-8
2
-
3
- require 'rubygems'
4
- require 'stringio' # stdlib
5
- require 'spec' # not 'minitest'
6
-
7
- class MiniTest::Spec
8
- @@output = StringIO.new
9
-
10
- def self.output
11
- @@output
12
- end
13
-
14
- def p msg
15
- @@output.puts msg
16
- end
17
- end
18
-
19
- class SpecTest < MiniTest::Spec
20
- describe 'a' do
21
- before_first { p '-- before_first' }
22
- after_last { p '-- after_last' }
23
- t('') { p 1 }
24
- t('') { p 2 }
25
- t('') { p 3 }
26
- t('') { p 4 }
27
- t('') { p 5 }
28
- t('') { p 6 }
29
- t('') { p 7 }
30
- end
31
-
32
- describe 'b' do
33
- t('') { p 8 }
34
- t('') { p 9 }
35
- end
36
-
37
- describe 'c' do
38
- before { p '-- before' }
39
- after { p '-- after' }
40
- t('') { p 10 }
41
- t('') { p 11 }
42
- t('') { p 12 }
43
- end
44
-
45
- describe 'd' do
46
- t('') { p 13 }
47
- t('') { p 14 }
48
- end
49
- end
50
-
51
- options = {}
52
- out = MiniTest::Spec.output
53
- reporter = Minitest::CompositeReporter.new
54
- reporter << Minitest::SummaryReporter.new(out, options)
55
- reporter << Minitest::ProgressReporter.new(out, options)
56
- #reporter.start
57
-
58
- Minitest.__run reporter, options
59
-
60
- #reporter.report
61
- out.flush
62
- out.rewind
63
-
64
- actual = out.readlines.join ''
65
- exp = <<'EXP'.strip
66
- -- before_first
67
- 1
68
- .2
69
- .3
70
- .4
71
- .5
72
- .6
73
- .7
74
- .-- after_last
75
- 8
76
- .9
77
- .-- before
78
- 10
79
- -- after
80
- .-- before
81
- 11
82
- -- after
83
- .-- before
84
- 12
85
- -- after
86
- .13
87
- .14
88
- .
89
- EXP
90
-
91
- puts actual.must_equal exp
@@ -1,13 +0,0 @@
1
- # encoding: utf-8
2
-
3
- require 'rubygems'
4
- require 'stringio' # stdlib
5
- require 'spec' # not 'minitest'
6
-
7
- before_list = []
8
-
9
- describe 'a' do
10
- t('') { before_list << 1 }
11
- end
12
-
13
- Minitest.run_specs
@@ -1,20 +0,0 @@
1
- ary = []
2
-
3
- class Test
4
- def self.run &block
5
- define_method :run_method do
6
- # eval %(ary << 1; puts 'complete'), block.binding
7
- new_src = "ary << 1\nputs 'complete'"
8
- block = eval("Proc.new { #{new_src} }", block.binding)
9
- self.instance_eval &block
10
- end
11
-
12
- puts 'calling run method'
13
- Test.new.run_method
14
- end
15
- end
16
-
17
- Test.run do
18
- ary << 1
19
- puts 'complete'
20
- end
@@ -1,15 +0,0 @@
1
- # encoding: utf-8
2
-
3
- require 'rubygems'
4
- require 'stringio' # stdlib
5
- require 'spec' # not 'minitest'
6
-
7
- describe 'a' do
8
- t('') { puts 1 }
9
- t('') { skip }
10
- t('') { puts 3 }
11
- t('') { skip }
12
- t('') { puts 5 }
13
- end
14
-
15
- Minitest.run_specs({ trace: [__FILE__], verbose: true })
@@ -1,11 +0,0 @@
1
- # encoding: utf-8
2
-
3
- require 'rubygems'
4
- require 'stringio' # stdlib
5
- require 'spec' # not 'minitest'
6
-
7
- describe 'a' do
8
- t('') { '1' }
9
- end
10
-
11
- Minitest.run_specs
@@ -1,19 +0,0 @@
1
- # from http://apidock.com/ruby/Kernel/set_trace_func
2
-
3
- class Test
4
- def test
5
- a = 1
6
- b = 2
7
- end
8
- end
9
-
10
- $lines = IO.readlines('trace.rb')
11
- $last_line = -1
12
- set_trace_func proc { |event, file, line, id, binding, classname|
13
- if file == 'trace.rb' && $last_line != line
14
- puts "#{line}: #{$lines[line-1]}"
15
- $last_line = line
16
- end
17
- }
18
- t = Test.new
19
- t.test
@@ -1,15 +0,0 @@
1
- # encoding: utf-8
2
-
3
- require 'rubygems'
4
- require 'stringio' # stdlib
5
- require 'spec' # not 'minitest'
6
-
7
- describe 'a' do
8
- t('b') { 1 }
9
- t('c') { 2 }
10
- t('d') { 3 }
11
- t('e') { 4 }
12
- end
13
-
14
- # Run specs and trace this file
15
- Minitest.run_specs({ :trace => [__FILE__] })
@@ -1,20 +0,0 @@
1
- # Disable fail on first failure
2
- class Minitest::Runnable
3
- def self.check_failures result, reporter
4
- end
5
- end
6
-
7
- # Restore summary reporter's output
8
- class Minitest::SummaryReporter < Minitest::StatisticsReporter
9
- def start # :nodoc:
10
- super
11
-
12
- io.puts "Run options: #{options[:args]}"
13
- io.puts
14
- io.puts "# Running:"
15
- io.puts
16
-
17
- self.sync = io.respond_to? :"sync=" # stupid emacs
18
- self.old_sync, io.sync = io.sync, true if self.sync
19
- end
20
- end