rsanheim-micronaut 0.1.3.2

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 (82) hide show
  1. data/LICENSE +45 -0
  2. data/README +17 -0
  3. data/RSPEC-LICENSE +23 -0
  4. data/Rakefile +83 -0
  5. data/bin/micronaut +4 -0
  6. data/examples/example_helper.rb +36 -0
  7. data/examples/lib/micronaut/behaviour_example.rb +188 -0
  8. data/examples/lib/micronaut/configuration_example.rb +70 -0
  9. data/examples/lib/micronaut/example_example.rb +46 -0
  10. data/examples/lib/micronaut/expectations/extensions/object_example.rb +72 -0
  11. data/examples/lib/micronaut/expectations/fail_with_example.rb +17 -0
  12. data/examples/lib/micronaut/expectations/wrap_expectation_example.rb +31 -0
  13. data/examples/lib/micronaut/formatters/base_formatter_example.rb +107 -0
  14. data/examples/lib/micronaut/formatters/documentation_formatter_example.rb +5 -0
  15. data/examples/lib/micronaut/formatters/progress_formatter_example.rb +74 -0
  16. data/examples/lib/micronaut/kernel_extensions_example.rb +13 -0
  17. data/examples/lib/micronaut/matchers/be_close_example.rb +52 -0
  18. data/examples/lib/micronaut/matchers/be_example.rb +298 -0
  19. data/examples/lib/micronaut/matchers/change_example.rb +360 -0
  20. data/examples/lib/micronaut/matchers/description_generation_example.rb +175 -0
  21. data/examples/lib/micronaut/matchers/eql_example.rb +35 -0
  22. data/examples/lib/micronaut/matchers/equal_example.rb +35 -0
  23. data/examples/lib/micronaut/matchers/handler_example.rb +153 -0
  24. data/examples/lib/micronaut/matchers/has_example.rb +71 -0
  25. data/examples/lib/micronaut/matchers/have_example.rb +575 -0
  26. data/examples/lib/micronaut/matchers/include_example.rb +103 -0
  27. data/examples/lib/micronaut/matchers/match_example.rb +43 -0
  28. data/examples/lib/micronaut/matchers/matcher_methods_example.rb +66 -0
  29. data/examples/lib/micronaut/matchers/operator_matcher_example.rb +189 -0
  30. data/examples/lib/micronaut/matchers/raise_error_example.rb +346 -0
  31. data/examples/lib/micronaut/matchers/respond_to_example.rb +54 -0
  32. data/examples/lib/micronaut/matchers/satisfy_example.rb +36 -0
  33. data/examples/lib/micronaut/matchers/simple_matcher_example.rb +93 -0
  34. data/examples/lib/micronaut/matchers/throw_symbol_example.rb +96 -0
  35. data/examples/lib/micronaut/runner_example.rb +5 -0
  36. data/examples/lib/micronaut/runner_options_example.rb +5 -0
  37. data/examples/lib/micronaut/world_example.rb +102 -0
  38. data/examples/lib/micronaut_example.rb +23 -0
  39. data/examples/resources/example_classes.rb +67 -0
  40. data/lib/autotest/discover.rb +3 -0
  41. data/lib/autotest/micronaut.rb +47 -0
  42. data/lib/micronaut/behaviour.rb +211 -0
  43. data/lib/micronaut/configuration.rb +133 -0
  44. data/lib/micronaut/example.rb +28 -0
  45. data/lib/micronaut/expectations/extensions/object.rb +62 -0
  46. data/lib/micronaut/expectations/extensions/string_and_symbol.rb +19 -0
  47. data/lib/micronaut/expectations/handler.rb +52 -0
  48. data/lib/micronaut/expectations/wrap_expectation.rb +57 -0
  49. data/lib/micronaut/expectations.rb +46 -0
  50. data/lib/micronaut/formatters/base_formatter.rb +82 -0
  51. data/lib/micronaut/formatters/base_text_formatter.rb +148 -0
  52. data/lib/micronaut/formatters/documentation_formatter.rb +62 -0
  53. data/lib/micronaut/formatters/progress_formatter.rb +36 -0
  54. data/lib/micronaut/formatters.rb +12 -0
  55. data/lib/micronaut/kernel_extensions.rb +11 -0
  56. data/lib/micronaut/matchers/be.rb +204 -0
  57. data/lib/micronaut/matchers/be_close.rb +22 -0
  58. data/lib/micronaut/matchers/change.rb +148 -0
  59. data/lib/micronaut/matchers/eql.rb +26 -0
  60. data/lib/micronaut/matchers/equal.rb +26 -0
  61. data/lib/micronaut/matchers/generated_descriptions.rb +36 -0
  62. data/lib/micronaut/matchers/has.rb +19 -0
  63. data/lib/micronaut/matchers/have.rb +153 -0
  64. data/lib/micronaut/matchers/include.rb +80 -0
  65. data/lib/micronaut/matchers/match.rb +22 -0
  66. data/lib/micronaut/matchers/method_missing.rb +9 -0
  67. data/lib/micronaut/matchers/operator_matcher.rb +50 -0
  68. data/lib/micronaut/matchers/raise_error.rb +128 -0
  69. data/lib/micronaut/matchers/respond_to.rb +50 -0
  70. data/lib/micronaut/matchers/satisfy.rb +50 -0
  71. data/lib/micronaut/matchers/simple_matcher.rb +135 -0
  72. data/lib/micronaut/matchers/throw_symbol.rb +108 -0
  73. data/lib/micronaut/matchers.rb +148 -0
  74. data/lib/micronaut/mocking/with_absolutely_nothing.rb +11 -0
  75. data/lib/micronaut/mocking/with_mocha.rb +13 -0
  76. data/lib/micronaut/mocking/with_rr.rb +24 -0
  77. data/lib/micronaut/mocking.rb +7 -0
  78. data/lib/micronaut/runner.rb +57 -0
  79. data/lib/micronaut/runner_options.rb +33 -0
  80. data/lib/micronaut/world.rb +75 -0
  81. data/lib/micronaut.rb +37 -0
  82. metadata +149 -0
@@ -0,0 +1,148 @@
1
+ require 'micronaut/matchers/generated_descriptions'
2
+ require 'micronaut/matchers/simple_matcher'
3
+ require 'micronaut/matchers/be'
4
+ require 'micronaut/matchers/be_close'
5
+ require 'micronaut/matchers/change'
6
+ require 'micronaut/matchers/eql'
7
+ require 'micronaut/matchers/equal'
8
+ require 'micronaut/matchers/has'
9
+ require 'micronaut/matchers/have'
10
+ require 'micronaut/matchers/include'
11
+ require 'micronaut/matchers/match'
12
+ require 'micronaut/matchers/raise_error'
13
+ require 'micronaut/matchers/respond_to'
14
+ require 'micronaut/matchers/satisfy'
15
+ require 'micronaut/matchers/throw_symbol'
16
+ require 'micronaut/matchers/operator_matcher'
17
+
18
+ module Micronaut
19
+
20
+ # We ship (courtesy of RSpec and Micronaut) with a number of useful Expression Matchers. An Expression Matcher
21
+ # is any object that responds to the following methods:
22
+ #
23
+ # matches?(actual)
24
+ # failure_message
25
+ # negative_failure_message #optional
26
+ # description #optional
27
+ #
28
+ # See Micronaut::Expectations to learn how to use these as Expectation Matchers.
29
+ # See Micronaut::Mocks to learn how to use them as Mock Argument Constraints.
30
+ #
31
+ # == Predicates
32
+ #
33
+ # In addition to those Expression Matchers that are defined explicitly, we will
34
+ # create custom Matchers on the fly for any arbitrary predicate, giving your specs
35
+ # a much more natural language feel.
36
+ #
37
+ # A Ruby predicate is a method that ends with a "?" and returns true or false.
38
+ # Common examples are +empty?+, +nil?+, and +instance_of?+.
39
+ #
40
+ # All you need to do is write +should be_+ followed by the predicate without
41
+ # the question mark, and we will figure it out from there. For example:
42
+ #
43
+ # [].should be_empty => [].empty? #passes
44
+ # [].should_not be_empty => [].empty? #fails
45
+ #
46
+ # In addtion to prefixing the predicate matchers with "be_", you can also use "be_a_"
47
+ # and "be_an_", making your specs read much more naturally:
48
+ #
49
+ # "a string".should be_an_instance_of(String) =>"a string".instance_of?(String) #passes
50
+ #
51
+ # 3.should be_a_kind_of(Fixnum) => 3.kind_of?(Numeric) #passes
52
+ # 3.should be_a_kind_of(Numeric) => 3.kind_of?(Numeric) #passes
53
+ # 3.should be_an_instance_of(Fixnum) => 3.instance_of?(Fixnum) #passes
54
+ # 3.should_not be_instance_of(Numeric) => 3.instance_of?(Numeric) #fails
55
+ #
56
+ # We will also create custom matchers for predicates like +has_key?+. To
57
+ # use this feature, just state that the object should have_key(:key) and we will
58
+ # call has_key?(:key) on the target. For example:
59
+ #
60
+ # {:a => "A"}.should have_key(:a) => {:a => "A"}.has_key?(:a) #passes
61
+ # {:a => "A"}.should have_key(:b) => {:a => "A"}.has_key?(:b) #fails
62
+ #
63
+ # You can use this feature to invoke any predicate that begins with "has_", whether it is
64
+ # part of the Ruby libraries (like +Hash#has_key?+) or a method you wrote on your own class.
65
+ #
66
+ # == Custom Expectation Matchers
67
+ #
68
+ # When you find that none of the stock Expectation Matchers provide a natural
69
+ # feeling expectation, you can very easily write your own.
70
+ #
71
+ # For example, imagine that you are writing a game in which players can
72
+ # be in various zones on a virtual board. To specify that bob should
73
+ # be in zone 4, you could say:
74
+ #
75
+ # bob.current_zone.should eql(Zone.new("4"))
76
+ #
77
+ # But you might find it more expressive to say:
78
+ #
79
+ # bob.should be_in_zone("4")
80
+ #
81
+ # and/or
82
+ #
83
+ # bob.should_not be_in_zone("3")
84
+ #
85
+ # To do this, you would need to write a class like this:
86
+ #
87
+ # class BeInZone
88
+ # def initialize(expected)
89
+ # @expected = expected
90
+ # end
91
+ # def matches?(target)
92
+ # @target = target
93
+ # @target.current_zone.eql?(Zone.new(@expected))
94
+ # end
95
+ # def failure_message
96
+ # "expected #{@target.inspect} to be in Zone #{@expected}"
97
+ # end
98
+ # def negative_failure_message
99
+ # "expected #{@target.inspect} not to be in Zone #{@expected}"
100
+ # end
101
+ # end
102
+ #
103
+ # ... and a method like this:
104
+ #
105
+ # def be_in_zone(expected)
106
+ # BeInZone.new(expected)
107
+ # end
108
+ #
109
+ # And then expose the method to your specs. This is normally done
110
+ # by including the method and the class in a module, which is then
111
+ # included in your spec:
112
+ #
113
+ # module CustomGameMatchers
114
+ # class BeInZone
115
+ # ...
116
+ # end
117
+ #
118
+ # def be_in_zone(expected)
119
+ # ...
120
+ # end
121
+ # end
122
+ #
123
+ # describe "Player behaviour" do
124
+ # include CustomGameMatchers
125
+ # ...
126
+ # end
127
+ #
128
+ # or you can include in globally in a spec_helper.rb file <tt>require</tt>d
129
+ # from your spec file(s):
130
+ #
131
+ # Micronaut::Runner.configure do |config|
132
+ # config.include(CustomGameMatchers)
133
+ # end
134
+ #
135
+ module Matchers
136
+
137
+ class MatcherError < StandardError; end
138
+
139
+ private
140
+ def method_missing(sym, *args, &block) # :nodoc:
141
+ return Matchers::Be.new(sym, *args) if sym.starts_with?("be_")
142
+ return has(sym, *args) if sym.starts_with?("have_")
143
+ super
144
+ end
145
+
146
+ end
147
+
148
+ end
@@ -0,0 +1,11 @@
1
+ module Micronaut
2
+ module Mocking
3
+ module WithAbsolutelyNothing
4
+
5
+ def _setup_mocks; end
6
+ def _verify_mocks; end
7
+ def _teardown_mocks; end
8
+
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,13 @@
1
+ require 'mocha/standalone'
2
+ require 'mocha/object'
3
+
4
+ module Micronaut
5
+ module Mocking
6
+ module WithMocha
7
+ include Mocha::Standalone
8
+ alias :_setup_mocks :mocha_setup
9
+ alias :_verify_mocks :mocha_verify
10
+ alias :_teardown_mocks :mocha_teardown
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,24 @@
1
+ require 'rr'
2
+
3
+ Micronaut.configuration.backtrace_clean_patterns.push(RR::Errors::BACKTRACE_IDENTIFIER)
4
+
5
+ module Micronaut
6
+ module Mocking
7
+ module WithRR
8
+ include RR::Extensions::InstanceMethods
9
+
10
+ def _setup_mocks
11
+ RR::Space.instance.reset
12
+ end
13
+
14
+ def _verify_mocks
15
+ RR::Space.instance.verify_doubles
16
+ end
17
+
18
+ def _teardown_mocks
19
+ RR::Space.instance.reset
20
+ end
21
+
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,7 @@
1
+ require 'micronaut/mocking/with_absolutely_nothing'
2
+
3
+ module Micronaut
4
+ module Mocking
5
+
6
+ end
7
+ end
@@ -0,0 +1,57 @@
1
+ module Micronaut
2
+
3
+ class Runner
4
+
5
+ def self.installed_at_exit?
6
+ @installed_at_exit ||= false
7
+ end
8
+
9
+ def self.autorun
10
+ at_exit { Micronaut::Runner.new.run(ARGV) ? exit(0) : exit(1) } unless installed_at_exit?
11
+ @installed_at_exit = true
12
+ end
13
+
14
+ def options
15
+ Micronaut.configuration.options
16
+ end
17
+
18
+ def load_all_behaviours(files_from_args=[])
19
+ files_from_args.inject([]) { |files, arg| files.concat(Dir[arg].map { |g| Dir.glob(g) }.flatten) }.each do |file|
20
+ load file
21
+ end
22
+ end
23
+
24
+ def run(args = [])
25
+ load_all_behaviours(args)
26
+
27
+ behaviours_to_run = Micronaut::World.behaviours_to_run
28
+
29
+ total_examples = behaviours_to_run.inject(0) { |sum, b| sum + b.examples_to_run.size }
30
+
31
+ old_sync, options.formatter.output.sync = options.formatter.output.sync, true if options.formatter.output.respond_to?(:sync=)
32
+
33
+ options.formatter.start(total_examples)
34
+
35
+ suite_success = true
36
+
37
+ starts_at = Time.now
38
+ behaviours_to_run.each do |behaviour|
39
+ suite_success &= behaviour.run(options.formatter)
40
+ end
41
+ duration = Time.now - starts_at
42
+
43
+ options.formatter.start_dump
44
+ options.formatter.dump_pending
45
+ options.formatter.dump_failures
46
+
47
+ # TODO: Stop passing in the last two items, the formatter knows this info
48
+ options.formatter.dump_summary(duration, total_examples, options.formatter.failed_examples.size, options.formatter.pending_examples.size)
49
+
50
+ options.formatter.output.sync = old_sync if options.formatter.output.respond_to? :sync=
51
+
52
+ suite_success
53
+ end
54
+
55
+ end
56
+
57
+ end
@@ -0,0 +1,33 @@
1
+ module Micronaut
2
+ class RunnerOptions
3
+
4
+ attr_accessor :color, :formatter
5
+
6
+ def initialize(options={})
7
+ @color = options.delete(:color)
8
+ @formatter = options.delete(:formatter)
9
+ end
10
+
11
+ def enable_color_in_output?
12
+ !textmate? && @color
13
+ end
14
+
15
+ def textmate?
16
+ ENV.has_key?('TM_RUBY')
17
+ end
18
+
19
+ def output
20
+ $stdout
21
+ end
22
+
23
+ def formatter
24
+ @formatter_instance ||= case @formatter.to_s
25
+ when 'documentation'
26
+ Micronaut::Formatters::DocumentationFormatter.new(self, output)
27
+ else
28
+ Micronaut::Formatters::ProgressFormatter.new(self, output)
29
+ end
30
+ end
31
+
32
+ end
33
+ end
@@ -0,0 +1,75 @@
1
+ module Micronaut
2
+
3
+ class World
4
+
5
+ def self.reset
6
+ @behaviours = []
7
+ end
8
+
9
+ reset
10
+
11
+ def self.behaviours
12
+ @behaviours
13
+ end
14
+
15
+ def self.behaviours_to_run
16
+ filter_behaviours
17
+ number_of_behaviours_left = sum_behaviours
18
+
19
+ if number_of_behaviours_left.zero?
20
+ if Micronaut.configuration.filters.empty?
21
+ add_all_examples
22
+ elsif Micronaut.configuration.run_all_when_everything_filtered?
23
+ puts " Filter(s) produced no matches - running everything"
24
+ add_all_examples
25
+ else
26
+ puts " Filter(s) matched no specs - your world is empty, desolate, and alone."
27
+ end
28
+ end
29
+
30
+ behaviours
31
+ end
32
+
33
+ def self.sum_behaviours
34
+ behaviours.inject(0) { |sum, b| sum += b.examples_to_run.size }
35
+ end
36
+
37
+ def self.add_all_examples
38
+ behaviours.each do |behaviour|
39
+ behaviour.examples_to_run.concat(behaviour.examples)
40
+ end
41
+ end
42
+
43
+ def self.filter_behaviours
44
+ return unless Micronaut.configuration.filters.any?
45
+ Micronaut.configuration.filters.each do |filter|
46
+ puts " Run filtered using: #{filter.inspect}"
47
+ behaviours.each do |behaviour|
48
+ behaviour.examples_to_run.concat find(behaviour.examples, filter)
49
+ end
50
+ end
51
+ behaviours
52
+ end
53
+
54
+ def self.find(collection, conditions={})
55
+ return [] if conditions.empty?
56
+
57
+ collection.select do |item|
58
+ conditions.all? do |key, value|
59
+ case value
60
+ when Hash
61
+ value.all? { |k, v| item.metadata[key][k] == v }
62
+ when Regexp
63
+ item.metadata[key] =~ value
64
+ when Proc
65
+ value.call(item.metadata[key]) rescue false
66
+ else
67
+ item.metadata[key] == value
68
+ end
69
+ end
70
+ end
71
+ end
72
+
73
+ end
74
+
75
+ end
data/lib/micronaut.rb ADDED
@@ -0,0 +1,37 @@
1
+ require 'micronaut/mocking'
2
+ require 'micronaut/matchers'
3
+ require 'micronaut/expectations'
4
+ require 'micronaut/world'
5
+ require 'micronaut/configuration'
6
+ require 'micronaut/runner'
7
+ require 'micronaut/runner_options'
8
+ require 'micronaut/example'
9
+ require 'micronaut/behaviour'
10
+ require 'micronaut/kernel_extensions'
11
+ require 'micronaut/formatters'
12
+
13
+ module Micronaut
14
+ file = if RUBY_VERSION =~ /^1\.9/ then # bt's expanded, but __FILE__ isn't :(
15
+ File.expand_path __FILE__
16
+ elsif __FILE__ =~ /^[^\.]/ then # assume both relative
17
+ require 'pathname'
18
+ pwd = Pathname.new(Dir.pwd)
19
+ path_name = Pathname.new(File.expand_path(__FILE__))
20
+ path_name = File.join(".", path_name.relative_path_from(pwd)) unless path_name.relative?
21
+ path_name.to_s
22
+ else # assume both are expanded
23
+ __FILE__
24
+ end
25
+
26
+ # './lib' in project dir, or '/usr/local/blahblah' if installed
27
+ InstallDirectory = File.expand_path(File.dirname(File.dirname(file)) + "/lib")
28
+
29
+ def self.configuration
30
+ @configuration ||= Micronaut::Configuration.new
31
+ end
32
+
33
+ def self.configure
34
+ yield configuration
35
+ end
36
+
37
+ end
metadata ADDED
@@ -0,0 +1,149 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: rsanheim-micronaut
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.3.2
5
+ platform: ruby
6
+ authors:
7
+ - Chad Humphries
8
+ autorequire: micronaut
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2008-12-18 00:00:00 -08:00
13
+ default_executable: micronaut
14
+ dependencies: []
15
+
16
+ description: An excellent replacement for the wheel...
17
+ email: chad@spicycode.com
18
+ executables:
19
+ - micronaut
20
+ extensions: []
21
+
22
+ extra_rdoc_files:
23
+ - README
24
+ - LICENSE
25
+ - RSPEC-LICENSE
26
+ files:
27
+ - LICENSE
28
+ - README
29
+ - RSPEC-LICENSE
30
+ - Rakefile
31
+ - lib/autotest
32
+ - lib/autotest/discover.rb
33
+ - lib/autotest/micronaut.rb
34
+ - lib/micronaut
35
+ - lib/micronaut/behaviour.rb
36
+ - lib/micronaut/configuration.rb
37
+ - lib/micronaut/example.rb
38
+ - lib/micronaut/expectations
39
+ - lib/micronaut/expectations/extensions
40
+ - lib/micronaut/expectations/extensions/object.rb
41
+ - lib/micronaut/expectations/extensions/string_and_symbol.rb
42
+ - lib/micronaut/expectations/handler.rb
43
+ - lib/micronaut/expectations/wrap_expectation.rb
44
+ - lib/micronaut/expectations.rb
45
+ - lib/micronaut/formatters
46
+ - lib/micronaut/formatters/base_formatter.rb
47
+ - lib/micronaut/formatters/base_text_formatter.rb
48
+ - lib/micronaut/formatters/documentation_formatter.rb
49
+ - lib/micronaut/formatters/progress_formatter.rb
50
+ - lib/micronaut/formatters.rb
51
+ - lib/micronaut/kernel_extensions.rb
52
+ - lib/micronaut/matchers
53
+ - lib/micronaut/matchers/be.rb
54
+ - lib/micronaut/matchers/be_close.rb
55
+ - lib/micronaut/matchers/change.rb
56
+ - lib/micronaut/matchers/eql.rb
57
+ - lib/micronaut/matchers/equal.rb
58
+ - lib/micronaut/matchers/generated_descriptions.rb
59
+ - lib/micronaut/matchers/has.rb
60
+ - lib/micronaut/matchers/have.rb
61
+ - lib/micronaut/matchers/include.rb
62
+ - lib/micronaut/matchers/match.rb
63
+ - lib/micronaut/matchers/method_missing.rb
64
+ - lib/micronaut/matchers/operator_matcher.rb
65
+ - lib/micronaut/matchers/raise_error.rb
66
+ - lib/micronaut/matchers/respond_to.rb
67
+ - lib/micronaut/matchers/satisfy.rb
68
+ - lib/micronaut/matchers/simple_matcher.rb
69
+ - lib/micronaut/matchers/throw_symbol.rb
70
+ - lib/micronaut/matchers.rb
71
+ - lib/micronaut/mocking
72
+ - lib/micronaut/mocking/with_absolutely_nothing.rb
73
+ - lib/micronaut/mocking/with_mocha.rb
74
+ - lib/micronaut/mocking/with_rr.rb
75
+ - lib/micronaut/mocking.rb
76
+ - lib/micronaut/runner.rb
77
+ - lib/micronaut/runner_options.rb
78
+ - lib/micronaut/world.rb
79
+ - lib/micronaut.rb
80
+ - examples/example_helper.rb
81
+ - examples/lib
82
+ - examples/lib/micronaut
83
+ - examples/lib/micronaut/behaviour_example.rb
84
+ - examples/lib/micronaut/configuration_example.rb
85
+ - examples/lib/micronaut/example_example.rb
86
+ - examples/lib/micronaut/expectations
87
+ - examples/lib/micronaut/expectations/extensions
88
+ - examples/lib/micronaut/expectations/extensions/object_example.rb
89
+ - examples/lib/micronaut/expectations/fail_with_example.rb
90
+ - examples/lib/micronaut/expectations/wrap_expectation_example.rb
91
+ - examples/lib/micronaut/formatters
92
+ - examples/lib/micronaut/formatters/base_formatter_example.rb
93
+ - examples/lib/micronaut/formatters/documentation_formatter_example.rb
94
+ - examples/lib/micronaut/formatters/progress_formatter_example.rb
95
+ - examples/lib/micronaut/kernel_extensions_example.rb
96
+ - examples/lib/micronaut/matchers
97
+ - examples/lib/micronaut/matchers/be_close_example.rb
98
+ - examples/lib/micronaut/matchers/be_example.rb
99
+ - examples/lib/micronaut/matchers/change_example.rb
100
+ - examples/lib/micronaut/matchers/description_generation_example.rb
101
+ - examples/lib/micronaut/matchers/eql_example.rb
102
+ - examples/lib/micronaut/matchers/equal_example.rb
103
+ - examples/lib/micronaut/matchers/handler_example.rb
104
+ - examples/lib/micronaut/matchers/has_example.rb
105
+ - examples/lib/micronaut/matchers/have_example.rb
106
+ - examples/lib/micronaut/matchers/include_example.rb
107
+ - examples/lib/micronaut/matchers/match_example.rb
108
+ - examples/lib/micronaut/matchers/matcher_methods_example.rb
109
+ - examples/lib/micronaut/matchers/operator_matcher_example.rb
110
+ - examples/lib/micronaut/matchers/raise_error_example.rb
111
+ - examples/lib/micronaut/matchers/respond_to_example.rb
112
+ - examples/lib/micronaut/matchers/satisfy_example.rb
113
+ - examples/lib/micronaut/matchers/simple_matcher_example.rb
114
+ - examples/lib/micronaut/matchers/throw_symbol_example.rb
115
+ - examples/lib/micronaut/runner_example.rb
116
+ - examples/lib/micronaut/runner_options_example.rb
117
+ - examples/lib/micronaut/world_example.rb
118
+ - examples/lib/micronaut_example.rb
119
+ - examples/resources
120
+ - examples/resources/example_classes.rb
121
+ - bin/micronaut
122
+ has_rdoc: true
123
+ homepage: http://spicycode.com
124
+ post_install_message:
125
+ rdoc_options: []
126
+
127
+ require_paths:
128
+ - lib
129
+ required_ruby_version: !ruby/object:Gem::Requirement
130
+ requirements:
131
+ - - ">="
132
+ - !ruby/object:Gem::Version
133
+ version: "0"
134
+ version:
135
+ required_rubygems_version: !ruby/object:Gem::Requirement
136
+ requirements:
137
+ - - ">="
138
+ - !ruby/object:Gem::Version
139
+ version: "0"
140
+ version:
141
+ requirements: []
142
+
143
+ rubyforge_project:
144
+ rubygems_version: 1.2.0
145
+ signing_key:
146
+ specification_version: 2
147
+ summary: An excellent replacement for the wheel...
148
+ test_files: []
149
+