micro_test 0.4.4 → 0.5.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 10c5f99129f2b7a608222a2fe1e1aff39a9be564
4
+ data.tar.gz: fbbfb9a6931bf5eaebaafd894f0f7ccb3303528f
5
+ SHA512:
6
+ metadata.gz: 17dcddaf64ce23e5ec74ae12320406aaf5716e59390f808af19a48f666d80b5069c9eacc4e639fcd6bc6b807f7eca63b986527de17a3643f40ff060271f7469e
7
+ data.tar.gz: 0dc7e94f136bca35ed219c918b9492645329fec092b4d47dbe0b277f5c535e84ca765d23eb21b125dc8268de4c10ab45057f86f88a2963fd2dd78be199a7ea9f
data/bin/mt CHANGED
@@ -1,8 +1,7 @@
1
1
  #!/usr/bin/env ruby
2
2
  require "optparse"
3
+ require_relative "../lib/micro_test"
3
4
 
4
- lib_path = File.expand_path(File.join(File.dirname(__FILE__), "..", "lib"))
5
- require File.join(lib_path, "micro_test")
6
5
  include MicroTest::Color
7
6
 
8
7
  # setup the formatters list ---------------------------------------------------
@@ -68,7 +67,7 @@ ENV["MT_DEMO"] = "true" if options[:demo]
68
67
 
69
68
  # setup the test path ---------------------------------------------------------
70
69
  path = ARGV.last unless ARGV.last =~ /^-/
71
- path = File.expand_path(File.join(File.dirname(__FILE__), "..", "test")) if options[:demo]
70
+ path = File.expand_path("../../test", __FILE__) if options[:demo]
72
71
  path ||= "test"
73
72
  path = File.join(Dir.pwd, path) unless path =~ /^\//
74
73
  unless File.exist?(path)
@@ -79,7 +78,7 @@ end
79
78
  if path =~ /\.rb$/
80
79
  require path
81
80
  else
82
- Dir[File.join(path, "**", "*.rb")].each { |path| require path }
81
+ Dir[File.join(path, "**/*.rb")].each { |path| require path }
83
82
  end
84
83
 
85
84
  # setup the formatter ---------------------------------------------------------
@@ -113,13 +112,13 @@ if options[:pry]
113
112
 
114
113
  Pry.config.hooks.add_hook :before_session, :print_instructions do |_, _, _pry_|
115
114
  puts
116
- puts " Pry session started"
117
- puts gray("".ljust(80, "-"))
118
- puts " #{gray "Test Failures:"} Type #{green "up"} to see the line that failed"
119
- puts " #{gray "Exceptions:"} Type #{green "whereami"} to get your bearings"
115
+ puts magenta(" Pry session started")
116
+ puts magenta("".ljust(80, "-"))
117
+ puts " #{magenta " Failures:"} Type #{green "up"} to see the line that failed"
118
+ puts " #{magenta "Exceptions:"} Type #{green "whereami"} to get your bearings"
120
119
  puts
121
120
  puts " Type #{green "exit"} or #{green "<CTL-D>"} to continue"
122
- puts gray("".ljust(80, "-"))
121
+ puts magenta("".ljust(80, "-"))
123
122
  puts
124
123
  end
125
124
 
@@ -26,7 +26,7 @@ rescue Exception => e
26
26
  exit(1)
27
27
  end
28
28
 
29
- f = File.open(File.join(File.dirname(__FILE__), "Rakefile"), "w") # create dummy rakefile to indicate success
29
+ f = File.open(File.expand_path("../Rakefile", __FILE__), "w") # create dummy rakefile to indicate success
30
30
  f.write("task :default\n")
31
31
  f.close
32
32
 
@@ -1,5 +1,5 @@
1
1
  path = File.expand_path("../micro_test/*.rb", __FILE__)
2
2
  Dir[path].each { |file| require file }
3
3
 
4
- path = File.expand_path("../micro_test/formatters/*.rb", __FILE__)
4
+ path = File.expand_path("../micro_test/formatters/**/*.rb", __FILE__)
5
5
  Dir[path].each { |file| require file }
@@ -1,5 +1,3 @@
1
- require File.join(File.dirname(__FILE__), "..", "color")
2
-
3
1
  module MicroTest
4
2
 
5
3
  class << self
@@ -12,7 +10,6 @@ module MicroTest
12
10
  # Defines the API that formatters can/should implement
13
11
  # to control test run output.
14
12
  class BaseFormatter
15
- include MicroTest::Color
16
13
  attr_accessor :passed, :failed, :duration
17
14
 
18
15
  class << self
@@ -59,5 +56,19 @@ module MicroTest
59
56
  def after_suite(test_classes)
60
57
  end
61
58
 
59
+ def render(template_name, template_context=nil)
60
+ puts text_to_render(template_name, template_context)
61
+ end
62
+
63
+ def render_inline(template_name, template_context=nil)
64
+ print text_to_render(template_name, template_context)
65
+ end
66
+
67
+ private
68
+
69
+ def text_to_render(template_name, template_context=nil)
70
+ Template.new(template_context || self).render_to_string(template_name)
71
+ end
72
+
62
73
  end
63
74
  end
@@ -13,6 +13,10 @@ module MicroTest
13
13
  :gray => 90
14
14
  }
15
15
 
16
+ def default(text)
17
+ text
18
+ end
19
+
16
20
  colors.each do |name, code|
17
21
  define_method name do |text|
18
22
  "\e[#{code}m#{text}\e[0m"
@@ -1,85 +1,38 @@
1
- require File.join(File.dirname(__FILE__), "base_formatter")
1
+ require_relative "base_formatter"
2
2
 
3
3
  module MicroTest
4
4
  class DefaultAsyncFormatter < MicroTest::BaseFormatter
5
5
  set_short_name "default_async"
6
6
 
7
7
  def after_test(test)
8
- test.passed? ? print(green ".") : print(red ".")
8
+ render_inline "default_async/test", test
9
9
  end
10
10
 
11
11
  def after_suite(test_classes)
12
12
  puts
13
13
  test_classes.each do |test_class|
14
- print_output_for_test_class test_class
14
+ render_output_for_test_class test_class
15
15
  end
16
- puts
17
- puts "".ljust(80, "-")
18
- print " #{passed + failed} Tests finished in #{yellow duration} seconds. "
19
- totals = []
20
- totals << green("#{passed} Passed") if passed > 0
21
- totals << red("#{failed} Failed") if failed > 0
22
- print "(#{totals.join(", ")})"
23
- puts
24
- puts
16
+
17
+ render "default/suite"
25
18
  end
26
19
 
27
20
  private
28
21
 
29
- def print_output_for_test_class(test_class)
30
- puts
31
- puts test_class.name.ljust(80, "-")
22
+ def render_output_for_test_class(test_class)
23
+ render "default/class", test_class
32
24
  test_class.tests.each do |test|
33
- print_output_for_test test
25
+ render_output_for_test test
34
26
  end
35
27
  end
36
28
 
37
- def print_output_for_test(test)
29
+ def render_output_for_test(test)
38
30
  return unless test.finished?
39
- duration = (test.duration * 10**4).round.to_f / 10**4
40
- print yellow(" #{duration.to_s.ljust(6, "0")}")
41
31
 
42
32
  if test.passed?
43
- print green(" #{test.desc}")
33
+ render "default/test_pass", test
44
34
  else
45
- print_test_failure test
46
- end
47
-
48
- puts
49
- end
50
-
51
- def print_test_failure(test)
52
- puts red(" #{test.desc}")
53
- test.failed_asserts.each do |assert|
54
- print_assert_failure assert
55
- end
56
- end
57
-
58
- def print_assert_failure(assert)
59
- puts
60
- print "".ljust(9)
61
- puts "#{assert[:file_path]}:#{red(assert[:line_num])}"
62
- puts "".ljust(9) + "".rjust(71, "-")
63
- index = assert[:line_num] - 1
64
- start = index - 2
65
- start = 0 if start <= 0
66
- finish = index + 2
67
- finish = assert[:lines].length - 1 if finish >= assert[:lines].length
68
- print_assert_failure_lines assert, start, finish, index
69
- end
70
-
71
- def print_assert_failure_lines(assert, start, finish, index)
72
- (start..finish).each do |i|
73
- print "".ljust(9)
74
- if i == index
75
- print red((i + 1).to_s.rjust(3, "0"))
76
- print red("|")
77
- print red(assert[:lines][i])
78
- else
79
- print (i + 1).to_s.rjust(3, "0")
80
- print "|"
81
- print assert[:lines][i]
82
- end
35
+ render "default/test_fail", test
83
36
  end
84
37
  end
85
38
 
@@ -1,88 +1,23 @@
1
- require File.join(File.dirname(__FILE__), "base_formatter")
1
+ require_relative "base_formatter"
2
2
 
3
3
  module MicroTest
4
4
  class DefaultFormatter < MicroTest::BaseFormatter
5
5
  set_short_name "default"
6
6
 
7
7
  def before_class(test_class)
8
- puts
9
- print_with_line test_class.name
8
+ render "default/class", test_class
10
9
  end
11
10
 
12
11
  def after_test(test)
13
- duration = (test.duration * 10**4).round.to_f / 10**4
14
- color = duration < 0.01 ? :yellow : :red
15
- print send(color, " #{duration.to_s.ljust(6, "0")}")
16
-
17
12
  if test.passed?
18
- print green(" #{test.desc}")
13
+ render "default/test_pass", test
19
14
  else
20
- print_test_failure test
15
+ render "default/test_fail", test
21
16
  end
22
-
23
- puts
24
17
  end
25
18
 
26
19
  def after_suite(test_classes)
27
- puts
28
- print_line
29
- print_totals
30
- puts " in #{yellow duration} seconds."
31
- print_line
32
- puts
33
- puts
34
- end
35
-
36
- private
37
-
38
- def print_with_line(value)
39
- puts "#{value} ".ljust(80, "-")
40
- end
41
-
42
- def print_line
43
- puts "".ljust(80, "-")
44
- end
45
-
46
- def print_totals
47
- totals = []
48
- totals << green("#{passed} Passed") if passed > 0
49
- totals << red("#{failed} Failed") if failed > 0
50
- print totals.join(", ")
51
- end
52
-
53
- def print_test_failure(test)
54
- puts red(" #{test.desc}")
55
- test.failed_asserts.each do |assert|
56
- print_assert_failure assert
57
- end
58
- end
59
-
60
- def print_assert_failure(assert)
61
- puts
62
- print "".ljust(9)
63
- puts "#{assert[:file_path]}:#{red(assert[:line_num])}"
64
- puts "".ljust(9) + "".rjust(71, "-")
65
- index = assert[:line_num] - 1
66
- start = index - 2
67
- start = 0 if start <= 0
68
- finish = index + 2
69
- finish = assert[:lines].length - 1 if finish >= assert[:lines].length
70
- print_assert_failure_lines assert, start, finish, index
71
- end
72
-
73
- def print_assert_failure_lines(assert, start, finish, index)
74
- (start..finish).each do |i|
75
- print "".ljust(9)
76
- if i == index
77
- print red((i + 1).to_s.rjust(3, "0"))
78
- print red("|")
79
- print red(assert[:lines][i])
80
- else
81
- print (i + 1).to_s.rjust(3, "0")
82
- print "|"
83
- print assert[:lines][i]
84
- end
85
- end
20
+ render "default/suite"
86
21
  end
87
22
 
88
23
  end
@@ -0,0 +1,50 @@
1
+ require_relative "color"
2
+
3
+ module MicroTest
4
+ class Template
5
+ include Color
6
+
7
+ def self.view(name)
8
+ @views ||= {}
9
+ @views[name] ||= File.read(File.expand_path("../views/#{name}.txt.erb", __FILE__))
10
+ end
11
+
12
+ def initialize(context)
13
+ @context = context
14
+ end
15
+
16
+ def render_to_string(name)
17
+ instance_eval do
18
+ ERB.new(self.class.view(name), nil, "%<>-").result(binding)
19
+ end
20
+ end
21
+
22
+ def partial(name, *collection)
23
+ return render_to_string(name) if collection.empty?
24
+ collection.map do |item|
25
+ Template.new(item).render_to_string(name)
26
+ end.join("\n")
27
+ end
28
+
29
+ def duration_color(duration)
30
+ return :yellow if @context.duration <= 0.01
31
+ :red
32
+ end
33
+
34
+ def assert_lines(assert)
35
+ index = assert[:line_num] - 1
36
+ start = index - 2
37
+ start = 0 if start <= 0
38
+ finish = index + 2
39
+ finish = assert[:lines].length - 1 if finish >= assert[:lines].length
40
+ (start..finish).map do |i|
41
+ {
42
+ :line_num => (i + 1),
43
+ :line => assert[:lines][i],
44
+ :color => (i == index ? :red : :gray)
45
+ }
46
+ end
47
+ end
48
+
49
+ end
50
+ end
@@ -0,0 +1,6 @@
1
+ <%= @context[:file_path].strip %><%= gray ":" %><%= red @context[:line_num] %>
2
+ <%= red "".ljust(80, "-") %>
3
+ <% assert_lines(@context).each do |line| -%>
4
+ <%= send line[:color], line[:line_num].to_s.rjust(4) %><%= gray "|" %> <%= send line[:color], line[:line] -%>
5
+ <% end -%>
6
+ <%= red "".ljust(80, "-") %>
@@ -0,0 +1,2 @@
1
+
2
+ <%= @context.name.ljust(80, "-") %>
@@ -0,0 +1,6 @@
1
+
2
+ --------------------------------------------------------------------------------
3
+ <%= green "#{@context.passed} Passed" -%>, <%= red "#{@context.failed} Failed" -%>
4
+ Finished in <%= yellow @context.duration %> seconds.
5
+ --------------------------------------------------------------------------------
6
+
@@ -0,0 +1,2 @@
1
+ <%= send duration_color(@context.duration), @context.duration %> <%= red @context.desc -%>
2
+ <%= partial "default/assert_fail", *@context.failed_asserts -%>
@@ -0,0 +1 @@
1
+ <%= send duration_color(@context.duration), @context.duration %> <%= green @context.desc -%>
@@ -6,7 +6,7 @@ module MicroTest
6
6
  # Exists for the purpose of isolating the test method so it can run in its own thread.
7
7
  class TestWrapper
8
8
  include MonitorMixin
9
- attr_reader :test_class, :desc, :asserts, :duration
9
+ attr_reader :test_class, :desc, :asserts
10
10
 
11
11
  # Constructor.
12
12
  # @param [MicroTest::Test] test_class The test class that defines the test being wrapped.
@@ -98,6 +98,12 @@ module MicroTest
98
98
  @duration = nil
99
99
  end
100
100
 
101
+ # Rounded duration.
102
+ def duration
103
+ return nil if @duration.nil?
104
+ (@duration * 10**4).ceil.to_f / 10**4
105
+ end
106
+
101
107
  private
102
108
 
103
109
  # Builds a Hash of assert information for the given call stack.
@@ -1,3 +1,3 @@
1
1
  module MicroTest
2
- VERSION = "0.4.4"
2
+ VERSION = "0.5.0"
3
3
  end
@@ -1,4 +1,6 @@
1
1
  unless ENV["MT_DEMO"]
2
+ require_relative "test_helper"
3
+
2
4
  class ColorTest < MicroTest::Test
3
5
  class Crayon
4
6
  include MicroTest::Color
@@ -1,4 +1,6 @@
1
1
  if ENV["MT_DEMO"]
2
+ require_relative "test_helper"
3
+
2
4
  class TestCPULatency < MicroTest::Test
3
5
 
4
6
  before do
@@ -1,4 +1,6 @@
1
1
  if ENV["MT_DEMO"]
2
+ require_relative "test_helper"
3
+
2
4
  class Fail < MicroTest::Test
3
5
 
4
6
  before do
@@ -1,4 +1,6 @@
1
1
  if ENV["MT_DEMO"]
2
+ require_relative "test_helper"
3
+
2
4
  class TestIOLatency < MicroTest::Test
3
5
 
4
6
  test "sleep 1 sec" do
@@ -1,4 +1,6 @@
1
1
  unless ENV["MT_DEMO"]
2
+ require_relative "test_helper"
3
+
2
4
  class TestRunner < MicroTest::Test
3
5
 
4
6
  before do
@@ -0,0 +1,4 @@
1
+ require "coveralls"
2
+ Coveralls.wear!
3
+
4
+ require_relative "../lib/micro_test"
@@ -1,4 +1,6 @@
1
1
  unless ENV["MT_DEMO"]
2
+ require_relative "test_helper"
3
+
2
4
  class TestTest < MicroTest::Test
3
5
 
4
6
  before do
@@ -1,4 +1,6 @@
1
1
  unless ENV["MT_DEMO"]
2
+ require_relative "test_helper"
3
+
2
4
  class TestWrapperTest < MicroTest::Test
3
5
 
4
6
  test ".new" do
metadata CHANGED
@@ -1,49 +1,58 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: micro_test
3
3
  version: !ruby/object:Gem::Version
4
- prerelease:
5
- version: 0.4.4
4
+ version: 0.5.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Nathan Hopkins
9
- autorequire:
8
+ autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2014-04-09 00:00:00.000000000 Z
11
+ date: 2014-11-16 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: os
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :runtime
21
+ prerelease: false
16
22
  version_requirements: !ruby/object:Gem::Requirement
17
23
  requirements:
18
- - - '>='
24
+ - - ">="
19
25
  - !ruby/object:Gem::Version
20
26
  version: '0'
21
- none: false
27
+ - !ruby/object:Gem::Dependency
28
+ name: rake
22
29
  requirement: !ruby/object:Gem::Requirement
23
30
  requirements:
24
- - - '>='
31
+ - - ">="
25
32
  - !ruby/object:Gem::Version
26
33
  version: '0'
27
- none: false
34
+ type: :development
28
35
  prerelease: false
29
- type: :runtime
30
- - !ruby/object:Gem::Dependency
31
- name: rake
32
36
  version_requirements: !ruby/object:Gem::Requirement
33
37
  requirements:
34
- - - '>='
38
+ - - ">="
35
39
  - !ruby/object:Gem::Version
36
40
  version: '0'
37
- none: false
41
+ - !ruby/object:Gem::Dependency
42
+ name: coveralls
38
43
  requirement: !ruby/object:Gem::Requirement
39
44
  requirements:
40
- - - '>='
45
+ - - ">="
41
46
  - !ruby/object:Gem::Version
42
47
  version: '0'
43
- none: false
44
- prerelease: false
45
48
  type: :development
46
- description: The Sinatra of testing frameworks.
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ description: 'Speed up your test workflow: fail -> pry -> pass'
47
56
  email:
48
57
  - natehop@gmail.com
49
58
  executables:
@@ -52,57 +61,62 @@ extensions:
52
61
  - ext/mkrf_conf.rb
53
62
  extra_rdoc_files: []
54
63
  files:
64
+ - bin/mt
55
65
  - ext/mkrf_conf.rb
56
66
  - lib/micro_test.rb
57
- - lib/micro_test/color.rb
67
+ - lib/micro_test/formatters/base_formatter.rb
68
+ - lib/micro_test/formatters/color.rb
69
+ - lib/micro_test/formatters/default_async_formatter.rb
70
+ - lib/micro_test/formatters/default_formatter.rb
71
+ - lib/micro_test/formatters/template.rb
72
+ - lib/micro_test/formatters/views/default/assert_fail.txt.erb
73
+ - lib/micro_test/formatters/views/default/class.txt.erb
74
+ - lib/micro_test/formatters/views/default/suite.txt.erb
75
+ - lib/micro_test/formatters/views/default/test_fail.txt.erb
76
+ - lib/micro_test/formatters/views/default/test_pass.txt.erb
77
+ - lib/micro_test/formatters/views/default_async/test.txt.erb
58
78
  - lib/micro_test/runner.rb
59
79
  - lib/micro_test/test.rb
60
80
  - lib/micro_test/test_wrapper.rb
61
81
  - lib/micro_test/version.rb
62
- - lib/micro_test/formatters/base_formatter.rb
63
- - lib/micro_test/formatters/default_async_formatter.rb
64
- - lib/micro_test/formatters/default_formatter.rb
65
- - lib/micro_test/formatters/doc_formatter.rb
66
- - lib/micro_test/formatters/dots_formatter.rb
67
- - lib/micro_test/formatters/min_formatter.rb
68
- - bin/mt
69
82
  - test/color_test.rb
70
83
  - test/cpu_latency_test.rb
71
84
  - test/fail_test.rb
72
85
  - test/io_latency_test.rb
73
86
  - test/runner_test.rb
87
+ - test/test_helper.rb
74
88
  - test/test_test.rb
75
89
  - test/test_wrapper_test.rb
76
90
  homepage: https://github.com/hopsoft/micro_test
77
91
  licenses:
78
92
  - MIT
79
- post_install_message:
93
+ metadata: {}
94
+ post_install_message:
80
95
  rdoc_options: []
81
96
  require_paths:
82
97
  - lib
83
98
  required_ruby_version: !ruby/object:Gem::Requirement
84
99
  requirements:
85
- - - '>='
100
+ - - ">="
86
101
  - !ruby/object:Gem::Version
87
102
  version: 1.9.2
88
- none: false
89
103
  required_rubygems_version: !ruby/object:Gem::Requirement
90
104
  requirements:
91
- - - '>='
105
+ - - ">="
92
106
  - !ruby/object:Gem::Version
93
107
  version: '0'
94
- none: false
95
108
  requirements: []
96
- rubyforge_project:
97
- rubygems_version: 1.8.24
98
- signing_key:
99
- specification_version: 3
100
- summary: The Sinatra of testing frameworks.
109
+ rubyforge_project:
110
+ rubygems_version: 2.2.2
111
+ signing_key:
112
+ specification_version: 4
113
+ summary: 'Speed up your test workflow: fail -> pry -> pass'
101
114
  test_files:
102
115
  - test/color_test.rb
103
116
  - test/cpu_latency_test.rb
104
117
  - test/fail_test.rb
105
118
  - test/io_latency_test.rb
106
119
  - test/runner_test.rb
120
+ - test/test_helper.rb
107
121
  - test/test_test.rb
108
122
  - test/test_wrapper_test.rb
@@ -1,56 +0,0 @@
1
- require File.join(File.dirname(__FILE__), "base_formatter")
2
-
3
- module MicroTest
4
- class DocFormatter < MicroTest::BaseFormatter
5
- set_short_name "doc"
6
-
7
- def initialize
8
- @failures = []
9
- end
10
-
11
- def before_class(test_class)
12
- puts "\n#{test_class.name}"
13
- end
14
-
15
- def after_test(test)
16
- super
17
- if test.passed?
18
- puts green(" #{test.desc}")
19
- else
20
- test.asserts.each do |assert|
21
- next if assert[:value]
22
- @failures << { :test => test, :assert => assert }
23
- puts red(" #{test.desc}")
24
- end
25
- end
26
- end
27
-
28
- def print_failures(failures)
29
- puts
30
- puts "Failures:"
31
- puts
32
- failures.each_with_index do |failure, idx|
33
- test = failure[:test]
34
- assert = failure[:assert]
35
- puts
36
- puts " #{idx + 1}) #{test.test_class.name} #{test.desc}"
37
- puts red(" Failure/Error: #{assert[:line].strip}")
38
- puts cyan(" #{assert[:file_path]}:#{assert[:line_num]}")
39
- end
40
- end
41
-
42
- def after_suite(test_classes)
43
- print_failures(@failures) if failed > 0
44
- puts
45
- msg = "#{passed + failed} examples, #{failed} failures"
46
- if failed > 0
47
- puts red(msg)
48
- else
49
- puts msg
50
- end
51
- puts
52
- super
53
- end
54
-
55
- end
56
- end
@@ -1,19 +0,0 @@
1
- require File.join(File.dirname(__FILE__), "base_formatter")
2
-
3
- module MicroTest
4
- class DotsFormatter < MicroTest::BaseFormatter
5
- set_short_name "dots"
6
-
7
- def after_test(test)
8
- print(test.passed? ? green(".") : red("."))
9
- end
10
-
11
- def after_suite(test_classes)
12
- puts
13
- puts "".ljust(80, "-")
14
- puts "Finished in #{duration} seconds."
15
- puts
16
- end
17
-
18
- end
19
- end
@@ -1,17 +0,0 @@
1
- require File.join(File.dirname(__FILE__), "base_formatter")
2
-
3
- module MicroTest
4
- class MinFormatter < MicroTest::BaseFormatter
5
- set_short_name "min"
6
-
7
- def after_suite(test_classes)
8
- puts
9
- puts "Passed: #{green passed}"
10
- puts "Failed: #{red failed}"
11
- puts "".ljust(80, "-")
12
- puts "Finished in #{duration} seconds."
13
- puts
14
- end
15
-
16
- end
17
- end