micro_test 0.4.4 → 0.5.0

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.
@@ -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