mole 1.0.12 → 1.0.15

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 (131) hide show
  1. metadata +24 -146
  2. data/History.txt +0 -17
  3. data/Manifest.txt +0 -132
  4. data/README.txt +0 -216
  5. data/Rakefile +0 -46
  6. data/config/database.yml +0 -21
  7. data/config/test_database.yml +0 -69
  8. data/lib/mole.rb +0 -260
  9. data/lib/mole/db/migrate.rb +0 -90
  10. data/lib/mole/e_mole.rb +0 -75
  11. data/lib/mole/logger.rb +0 -134
  12. data/lib/mole/models/mole_feature.rb +0 -58
  13. data/lib/mole/models/mole_log.rb +0 -31
  14. data/lib/mole/module.rb +0 -292
  15. data/lib/mole/moler.rb +0 -71
  16. data/lib/mole/utils/frameworks.rb +0 -53
  17. data/lib/mole/version.rb +0 -15
  18. data/samples/merbapp/README +0 -14
  19. data/samples/merbapp/Rakefile +0 -124
  20. data/samples/merbapp/app/controllers/application.rb +0 -3
  21. data/samples/merbapp/app/controllers/exceptions.rb +0 -13
  22. data/samples/merbapp/app/controllers/moled.rb +0 -25
  23. data/samples/merbapp/app/helpers/global_helper.rb +0 -5
  24. data/samples/merbapp/app/mailers/views/layout/application.html.erb +0 -1
  25. data/samples/merbapp/app/mailers/views/layout/application.text.erb +0 -1
  26. data/samples/merbapp/app/parts/views/layout/application.html.erb +0 -1
  27. data/samples/merbapp/app/views/exceptions/internal_server_error.html.erb +0 -216
  28. data/samples/merbapp/app/views/exceptions/not_acceptable.html.erb +0 -38
  29. data/samples/merbapp/app/views/exceptions/not_found.html.erb +0 -40
  30. data/samples/merbapp/app/views/layout/application.html.erb +0 -11
  31. data/samples/merbapp/app/views/moled/index.html.erb +0 -5
  32. data/samples/merbapp/app/views/moled/result.html.erb +0 -5
  33. data/samples/merbapp/config/boot.rb +0 -11
  34. data/samples/merbapp/config/dependencies.rb +0 -41
  35. data/samples/merbapp/config/environments/development.rb +0 -1
  36. data/samples/merbapp/config/environments/production.rb +0 -1
  37. data/samples/merbapp/config/environments/test.rb +0 -1
  38. data/samples/merbapp/config/merb.yml +0 -82
  39. data/samples/merbapp/config/merb_init.rb +0 -26
  40. data/samples/merbapp/config/mole_config.rb +0 -33
  41. data/samples/merbapp/config/router.rb +0 -38
  42. data/samples/merbapp/config/upload.conf +0 -0
  43. data/samples/merbapp/public/images/merb.jpg +0 -0
  44. data/samples/merbapp/public/merb.fcgi +0 -6
  45. data/samples/merbapp/public/stylesheets/master.css +0 -119
  46. data/samples/merbapp/script/destroy +0 -32
  47. data/samples/merbapp/script/generate +0 -32
  48. data/samples/merbapp/script/stop_merb +0 -13
  49. data/samples/merbapp/spec/spec_helper.rb +0 -15
  50. data/samples/merbapp/test/test_helper.rb +0 -14
  51. data/samples/railsapp/README +0 -14
  52. data/samples/railsapp/Rakefile +0 -10
  53. data/samples/railsapp/app/controllers/application.rb +0 -13
  54. data/samples/railsapp/app/controllers/moled_controller.rb +0 -23
  55. data/samples/railsapp/app/helpers/application_helper.rb +0 -3
  56. data/samples/railsapp/app/views/moled/index.html.erb +0 -5
  57. data/samples/railsapp/app/views/moled/result.html.erb +0 -5
  58. data/samples/railsapp/config/boot.rb +0 -109
  59. data/samples/railsapp/config/database.yml +0 -13
  60. data/samples/railsapp/config/environment.rb +0 -59
  61. data/samples/railsapp/config/environments/development.rb +0 -18
  62. data/samples/railsapp/config/environments/production.rb +0 -20
  63. data/samples/railsapp/config/environments/test.rb +0 -22
  64. data/samples/railsapp/config/initializers/inflections.rb +0 -10
  65. data/samples/railsapp/config/initializers/mime_types.rb +0 -5
  66. data/samples/railsapp/config/initializers/mole.rb +0 -10
  67. data/samples/railsapp/config/moles/mole_config.rb +0 -44
  68. data/samples/railsapp/config/routes.rb +0 -35
  69. data/samples/railsapp/doc/README_FOR_APP +0 -2
  70. data/samples/railsapp/public/.htaccess +0 -40
  71. data/samples/railsapp/public/404.html +0 -30
  72. data/samples/railsapp/public/422.html +0 -30
  73. data/samples/railsapp/public/500.html +0 -30
  74. data/samples/railsapp/public/dispatch.cgi +0 -10
  75. data/samples/railsapp/public/dispatch.fcgi +0 -24
  76. data/samples/railsapp/public/dispatch.rb +0 -10
  77. data/samples/railsapp/public/favicon.ico +0 -0
  78. data/samples/railsapp/public/images/rails.png +0 -0
  79. data/samples/railsapp/public/javascripts/application.js +0 -2
  80. data/samples/railsapp/public/javascripts/controls.js +0 -963
  81. data/samples/railsapp/public/javascripts/dragdrop.js +0 -972
  82. data/samples/railsapp/public/javascripts/effects.js +0 -1120
  83. data/samples/railsapp/public/javascripts/prototype.js +0 -4225
  84. data/samples/railsapp/public/robots.txt +0 -5
  85. data/samples/railsapp/script/about +0 -3
  86. data/samples/railsapp/script/console +0 -3
  87. data/samples/railsapp/script/destroy +0 -3
  88. data/samples/railsapp/script/generate +0 -3
  89. data/samples/railsapp/script/performance/benchmarker +0 -3
  90. data/samples/railsapp/script/performance/profiler +0 -3
  91. data/samples/railsapp/script/performance/request +0 -3
  92. data/samples/railsapp/script/plugin +0 -3
  93. data/samples/railsapp/script/process/inspector +0 -3
  94. data/samples/railsapp/script/process/reaper +0 -3
  95. data/samples/railsapp/script/process/spawner +0 -3
  96. data/samples/railsapp/script/runner +0 -3
  97. data/samples/railsapp/script/server +0 -3
  98. data/samples/railsapp/test/test_helper.rb +0 -38
  99. data/samples/rubyapp/README +0 -22
  100. data/samples/rubyapp/bin/ruby_app +0 -35
  101. data/samples/rubyapp/config/mole_conf.rb +0 -31
  102. data/samples/rubyapp/lib/fred.rb +0 -22
  103. data/spec/config/auto_mole_config.rb +0 -26
  104. data/spec/config/mole_config.rb +0 -0
  105. data/spec/config/moles/fred_config.rb +0 -0
  106. data/spec/data/blee.rb +0 -64
  107. data/spec/db/migrate_spec.rb +0 -19
  108. data/spec/emole_spec.rb +0 -43
  109. data/spec/logger_spec.rb +0 -56
  110. data/spec/models/mole_feature_spec.rb +0 -48
  111. data/spec/models/mole_log_spec.rb +0 -62
  112. data/spec/module_spec.rb +0 -229
  113. data/spec/mole_spec.rb +0 -135
  114. data/spec/moler_spec.rb +0 -77
  115. data/spec/spec_helper.rb +0 -76
  116. data/spec/utils/framework_spec.rb +0 -99
  117. data/tasks/ann.rake +0 -76
  118. data/tasks/annotations.rake +0 -22
  119. data/tasks/doc.rake +0 -48
  120. data/tasks/gem.rake +0 -110
  121. data/tasks/manifest.rake +0 -49
  122. data/tasks/mole.rake +0 -115
  123. data/tasks/post_load.rake +0 -26
  124. data/tasks/rubyforge.rake +0 -57
  125. data/tasks/setup.rb +0 -227
  126. data/tasks/spec.rake +0 -54
  127. data/tasks/svn.rake +0 -44
  128. data/tasks/test.rake +0 -38
  129. data/templates/mole/e_mole/exception_alerts.rhtml +0 -14
  130. data/templates/mole/e_mole/feature_alerts.rhtml +0 -11
  131. data/templates/mole/e_mole/perf_alerts.rhtml +0 -12
@@ -1,48 +0,0 @@
1
- require File.join(File.dirname(__FILE__), "..", "spec_helper" )
2
-
3
- describe MoleFeature do
4
- before( :each ) do
5
- ::Mole.reset_configuration!
6
- ::Mole.initialize( :application => "Test",
7
- :mode => :persistent,
8
- :log_level => :debug,
9
- :moleable => true )
10
- end
11
-
12
- it "should find or create known features correctly" do
13
- %w[ all performance exception].each do |f|
14
- feature = MoleFeature.send( "find_#{f}_feature".to_sym, ::Mole.application )
15
- feature.should_not be_nil
16
- feature.name.downcase.should == f
17
- end
18
- end
19
-
20
- it "should create a new feature" do
21
- feature = MoleFeature.find_or_create_feature( "Fred", ::Mole.application, self.class.name )
22
- feature.should_not be_nil
23
- feature.name.should == "Fred"
24
- feature.context.should == self.class.name
25
- end
26
-
27
- it "should not create a feature with no name" do
28
- feature = MoleFeature.find_or_create_feature( "", ::Mole.application, self.class.name )
29
- feature.should be_nil
30
- end
31
-
32
- it "should find all features for a given application correctly" do
33
- %w[ all performance exception].each do |f|
34
- MoleFeature.send( "find_#{f}_feature".to_sym, ::Mole.application )
35
- end
36
- MoleFeature.find_or_create_feature( "Fred", ::Mole.application, self.class.name )
37
- features = MoleFeature.find_features( ::Mole.application )
38
- features.should have(4).mole_features
39
- end
40
-
41
- it "should find moled application names correctly" do
42
- MoleFeature.find_moled_application_names.should be_empty
43
- %w[ all performance exception].each do |f|
44
- feature = MoleFeature.send( "find_#{f}_feature".to_sym, ::Mole.application )
45
- end
46
- MoleFeature.find_moled_application_names.should == ["Test"]
47
- end
48
- end
@@ -1,62 +0,0 @@
1
- require File.join(File.dirname(__FILE__), "..", "spec_helper" )
2
- require 'ostruct'
3
-
4
- describe MoleLog do
5
- before( :each ) do
6
- ::Mole.reset_configuration!
7
- ::Mole.initialize( :mode => :persistent, :log_level => :info, :moleable => true )
8
- @args = { :blee => "Hello", :duh => "World" }
9
- end
10
-
11
- it "should log unchecked exceptions correctly" do
12
- args = @args
13
- feature = MoleFeature.find_exception_feature( ::Mole.application )
14
- feature.should_not be_nil
15
- begin
16
- raise "Something crapped out"
17
- rescue => boom
18
- args[:boom] = Mole::Moler.dump_stack( boom )
19
- MoleLog.log_it( self, feature, 100, args )
20
- end
21
- check_it( feature, 100, @args )
22
- end
23
-
24
- it "should log perf exception correctly" do
25
- feature = MoleFeature.find_performance_feature( ::Mole.application )
26
- feature.should_not be_nil
27
- MoleLog.log_it( self, feature, 200, @args )
28
- check_it( feature, 200, @args )
29
- end
30
-
31
- it "should mole a feature correctly" do
32
- feature = MoleFeature.find_or_create_feature( "fred", ::Mole.application, "Test".class.name )
33
- feature.should_not be_nil
34
- MoleLog.log_it( "Test", feature, 300, @args )
35
- check_it( feature, 300, @args )
36
- end
37
-
38
- it "should log request info correctly" do
39
- ctrl = Moled::Controller.new
40
- feature = MoleFeature.find_or_create_feature( "fred", ::Mole.application, ctrl.class.name )
41
- feature.should_not be_nil
42
- MoleLog.log_it( ctrl, feature, 400, @args )
43
- log = check_it( feature, 400, @args )
44
- log.ip_address.should == "1.1.1.1"
45
- log.browser_type.should == "GodZilla"
46
- end
47
-
48
- # Test Controller...
49
- module Moled
50
- class Controller
51
- class Request
52
- def env
53
- {'REMOTE_ADDR' => "1.1.1.1", 'HTTP_USER_AGENT' => 'GodZilla' }
54
- end
55
- end
56
-
57
- def request
58
- Request.new
59
- end
60
- end
61
- end
62
- end
@@ -1,229 +0,0 @@
1
- require File.join(File.dirname(__FILE__), "spec_helper" )
2
-
3
-
4
- describe Module do
5
- before( :all ) do
6
- ::Mole.initialize( :perf_threshold => 1, :log_level => :info )
7
- require File.join( File.dirname(__FILE__), %w[data blee] )
8
- end
9
-
10
- before( :each ) do
11
- @blee = Blee.new
12
- CallStackChecker.reset!
13
- end
14
-
15
- it "should handle features with punctuation correctly" do
16
- Blee.mole_before( :feature => :get_out? ) { |context, feature, *args|
17
- CallStackChecker.called
18
- }
19
- @blee.get_out?
20
- CallStackChecker.should be_called
21
- end
22
-
23
- it "should trap mole before handler exceptions" do
24
- Blee.mole_before( :feature => :crap_out ) { |context, feature, *args|
25
- raise "LEGIT !! - Before - Something did crap out"
26
- CallStackChecker.called
27
- }
28
- @blee.crap_out
29
- CallStackChecker.should_not be_called
30
- end
31
-
32
- it "should trap mole after handler exceptions" do
33
- Blee.mole_after( :feature => :crap_out ) { |context, feature, *args|
34
- raise "LEGIT !! - After - Something did crap out"
35
- CallStackChecker.called
36
- }
37
- @blee.crap_out
38
- CallStackChecker.should_not be_called
39
- end
40
-
41
- it "should trap mole handler exceptions" do
42
- Blee.mole_unchecked( :features => [:blee_raise_too] ) { |context, feature, *args|
43
- raise "-- LEGIT !! - Unchecked - Something did crap out"
44
- CallStackChecker.called
45
- }
46
- @blee.blee_raise_too rescue nil
47
- CallStackChecker.should_not be_called
48
- end
49
-
50
- it "should trap a perf handler exception" do
51
- Blee.mole_perf( :features => [:blee_slow_too] ) do |context, feature, elapsed_time, args, block|
52
- raise "---LEGIT !! - Perf - Something did crap out"
53
- CallStackChecker.called
54
- end
55
- @blee.blee_slow_too
56
- CallStackChecker.should_not be_called
57
- end
58
-
59
- # it "should trap mole handler exceptions" do
60
- # Blee.mole_before( :feature => :crap_out ) { |context, feature, *args|
61
- # raise "Something did crap out"
62
- # CallStackChecker.called
63
- # }
64
- # @blee.crap_out
65
- # CallStackChecker.should_not be_called
66
- # end
67
-
68
- it "should correctly setup a before call" do
69
- Blee.mole_before( :feature => :blee_no_args ) { |context, feature, block, *args|
70
- context.class.should == Blee
71
- feature.should == "blee_no_args"
72
- block.should be_nil
73
- args.should have(0).items
74
- CallStackChecker.called
75
- }
76
- @blee.blee_no_args
77
- CallStackChecker.should be_called
78
- end
79
-
80
- it "should correctly setup an after call" do
81
- Blee.mole_after( :feature => :blee_no_args ) { |context, feature, ret_val, block, *args|
82
- context.class.should == Blee
83
- feature.should == "blee_no_args"
84
- args.should have(0).items
85
- CallStackChecker.called
86
- }
87
- @blee.blee_no_args
88
- CallStackChecker.should be_called
89
- end
90
-
91
- it "should correctly trap an exception" do
92
- Blee.mole_unchecked( :features => [:blee_raise] ) do |context, feature, boom, args, block|
93
- context.class.should == Blee
94
- feature.should == "blee_raise"
95
- boom.to_s.should == "Blee exception"
96
- CallStackChecker.called
97
- end
98
- @blee.blee_raise rescue nil
99
- CallStackChecker.should be_called
100
- end
101
-
102
- it "should not trap a before call" do
103
- @blee.blee_args( "Hello", "World", "Good", "Day" )
104
- CallStackChecker.should_not be_called
105
- end
106
-
107
- it "should correctly trap the before call arguments" do
108
- Blee.mole_before( :feature => :blee_args ) { |context, feature, block, *args|
109
- context.class.should == Blee
110
- feature.should == "blee_args"
111
- args.should have(4).items
112
- args[0].should == "Hello"
113
- args[1].should == "World"
114
- args[2].should == "Good"
115
- args[3].should == "Day"
116
- CallStackChecker.called
117
- }
118
- @blee.blee_args( "Hello", "World", "Good", "Day" )
119
- CallStackChecker.should be_called
120
- end
121
-
122
- it "should correctly trap a before call with a block" do
123
- Blee.mole_before( :feature => :blee_block ) do |context, feature, block, *args|
124
- context.class.should == Blee
125
- feature.should == "blee_block"
126
- block.should_not be_nil
127
- block.call.should == "Do it already!!"
128
- args.size.should == 4
129
- args[0].should == "Hello"
130
- args[1].should == "World"
131
- args[2].should == "Good"
132
- args[3].should == "Day"
133
- CallStackChecker.called
134
- end
135
- @blee.blee_block( "Hello", "World", "Good", "Day" ) { "Do it already!!" }
136
- CallStackChecker.should be_called
137
- end
138
-
139
- it "should correctly trap the after call with many arguments" do
140
- Blee.mole_after( :feature => :blee_args ) { |context, feature, ret_val, block, *args|
141
- context.class.should == Blee
142
- feature.should == "blee_args"
143
- ret_val.should == 20
144
- args.size.should == 4
145
- args[0].should == "Hello"
146
- args[1].should == "World"
147
- args[2].should == "Good"
148
- args[3].should == "Day"
149
- CallStackChecker.called
150
- }
151
- @blee.blee_args( "Hello", "World", "Good", "Day" )
152
- CallStackChecker.should be_called
153
- end
154
-
155
- it "should correctly trap the after call with a block" do
156
- Blee.mole_after( :feature => :blee_block ) do |context, feature, ret_val, block, *args|
157
- context.class.should == Blee
158
- feature.should == "blee_block"
159
- block.should_not be_nil
160
- block.call.should == "Do it already!!"
161
- ret_val.should == 10
162
- args.size.should == 4
163
- args[0].should == "Hello"
164
- args[1].should == "World"
165
- args[2].should == "Good"
166
- args[3].should == "Day"
167
- CallStackChecker.called
168
- end
169
- @blee.blee_block( "Hello", "World", "Good", "Day" ) { "Do it already!!" }
170
- CallStackChecker.should be_called
171
- end
172
-
173
- it "should correctly trap a slow call" do
174
- Blee.mole_perf( :features => [:blee_slow] ) do |context, feature, elapsed_time, ret_val, block, *args|
175
- context.class.should == Blee
176
- feature.should == "blee_slow"
177
- ret_val.should == 1
178
- block.should be_nil
179
- args.size.should == 0
180
- elapsed_time.should > 1
181
- CallStackChecker.called
182
- end
183
- @blee.blee_slow
184
- CallStackChecker.should be_called
185
- end
186
-
187
- it "should trap a private method correctly" do
188
- Blee.mole_after( :feature => :blee_private ) { |context, feature, ret_val, block, *args|
189
- context.class.should == Blee
190
- feature.should == "blee_private"
191
- ret_val.should == "Hello"
192
- block.should be_nil
193
- args.size.should == 1
194
- args[0].should == "Hello"
195
- CallStackChecker.called
196
- }
197
- @blee.send( :blee_private, "Hello" )
198
- CallStackChecker.should be_called
199
- end
200
-
201
- it "should trap a protected method correctly" do
202
- Blee.mole_after( :feature => :blee_protected ) { |context, feature, ret_val, block, *args|
203
- context.class.should == Blee
204
- feature.should == "blee_protected"
205
- ret_val.should == "Hello"
206
- block.should be_nil
207
- args.size.should == 1
208
- args[0].should == "Hello"
209
- CallStackChecker.called
210
- }
211
- @blee.send( :blee_protected, "Hello" )
212
- CallStackChecker.should be_called
213
- end
214
-
215
- it "should mole a static method correctly" do
216
- pending do
217
- Blee.mole_after( :feature => :blee_static ) { |context, feature, ret_val, block, *args|
218
- context.class.should == Blee
219
- feature.should == "blee_static"
220
- ret_val.should be_nil
221
- block.should be_nil
222
- args.size.should == 0
223
- CallStackChecker.called
224
- }
225
- Blee.blee_static
226
- CallStackChecker.should be_called
227
- end
228
- end
229
- end
@@ -1,135 +0,0 @@
1
- require File.join(File.dirname(__FILE__), "spec_helper" )
2
-
3
- describe Mole do
4
- before( :all ) do
5
- ::Mole.reset_configuration!
6
- ::Mole.initialize( :moleable => true )
7
- @root = ::File.expand_path( ::File.join(::File.dirname(__FILE__), ".." ) )
8
- end
9
-
10
- it "is versioned" do
11
- ::Mole::Version.version.should =~ /\d+\.\d+\.\d+/
12
- end
13
-
14
- it "should have the right defaults" do
15
- Mole.should be_moleable
16
- Mole.logger.should_not be_nil
17
- Mole.perf_threshold.should == 5
18
- Mole.should_not be_persistent
19
- Mole.application.should == "Default"
20
- end
21
-
22
- it "generates a correct path relative to root" do
23
- Mole.path( "mole.rb" ).should == ::File.join(@root, "mole.rb" )
24
- end
25
-
26
- it "generates a correct path relative to lib" do
27
- Mole.libpath(%w[ mole db_mole.rb]).should == ::File.join(@root, "lib", "mole", "db_mole.rb")
28
- end
29
-
30
- it "should define the correct run modes" do
31
- Mole.run_modes.should == [:transient,:persistent]
32
- end
33
-
34
- it "should dump config info to console" do
35
- Mole.dump
36
- end
37
-
38
- it "should locate controller classes correctly" do
39
- classes = Mole.find_controller_classes( File.join(File.dirname(__FILE__), %w[data] ) )
40
- classes.should == %w[Blee]
41
- end
42
-
43
- describe ".auto_xxx" do
44
- before( :each ) do
45
- ::Mole.reset_configuration!
46
- ::Mole.initialize( :perf_threshold => 1, :log_level => :debug )
47
- require File.join( File.dirname(__FILE__), %w[data blee] )
48
- Blee.send( :mole_clear! )
49
- CallStackChecker.reset!
50
- end
51
-
52
- it "should auto perf a set of controllers correctly" do
53
- Mole.auto_perf( File.join(File.dirname(__FILE__), %w[data] ) ) do |context, feature, elapsed_time, ret_val, block, *args|
54
- context.class.should == Blee
55
- block.should be_nil
56
- args.size.should == 0
57
- elapsed_time.should > 1
58
- CallStackChecker.called
59
- end
60
- Blee.new.blee_slow
61
- CallStackChecker.should be_called
62
- CallStackChecker.reset!
63
- Blee.new.blee_slow_too
64
- CallStackChecker.should be_called
65
- end
66
-
67
- it "should auto check a set of controllers correctly" do
68
- Mole.auto_unchecked( File.join(File.dirname(__FILE__), %w[data] ) ) do |context, feature, elapsed_time, block, *args|
69
- context.class.should == Blee
70
- feature.should == "blee_raise"
71
- block.should be_nil
72
- args.size.should == 0
73
- CallStackChecker.called
74
- end
75
- Blee.new.blee_raise rescue nil
76
- CallStackChecker.should be_called
77
- end
78
-
79
- it "should auto before a set of controllers correctly" do
80
- Mole.auto_before( File.join(File.dirname(__FILE__), %w[data] ) ) do |context, feature, block, *args|
81
- context.class.should == Blee
82
- feature.should == "blee_no_args"
83
- block.should be_nil
84
- args.size.should == 0
85
- CallStackChecker.called
86
- end
87
- Blee.new.blee_no_args
88
- CallStackChecker.should be_called
89
- end
90
-
91
- it "should auto after a set of controllers correctly" do
92
- Mole.auto_after( File.join(File.dirname(__FILE__), %w[data] ) ) do |context, feature, ret_val, block, *args|
93
- context.class.should == Blee
94
- feature.should == "blee_no_args"
95
- ret_val.should == 10
96
- block.should be_nil
97
- args.size.should == 0
98
- CallStackChecker.called
99
- end
100
- Blee.mole_dump( "After" )
101
- Blee.new.blee_no_args
102
- CallStackChecker.should be_called
103
- end
104
-
105
- end
106
-
107
- describe ".load_mole_configuration" do
108
- before( :each ) do
109
- ::Mole.reset_configuration!
110
- end
111
-
112
- it "should load single file correctly" do
113
- ::Mole.initialize( :moleable => true, :mole_config => File.join( File.dirname(__FILE__), %w[config mole_config.rb] ) )
114
- ::Mole.load_mole_configuration
115
- require( File.join( File.dirname(__FILE__), %w[config mole_config.rb] ) ).should == []
116
- end
117
-
118
- it "should load config for directory correctly" do
119
- ::Mole.initialize( :moleable => true, :mole_config => File.join( File.dirname(__FILE__), %w[config moles] ) )
120
- ::Mole.load_mole_configuration
121
- require( File.join( File.dirname(__FILE__), %w[config moles fred_config.rb] ) ).should == []
122
- end
123
-
124
- it "should raise an error if the configuration file does not exist" do
125
- ::Mole.initialize( :moleable => true, :mole_config => File.join( File.dirname(__FILE__), %w[config fred_mole.rb] ) )
126
- lambda{ ::Mole.load_mole_configuration }.should raise_error( "Unable to find the MOle configuration from `./spec/config/fred_mole.rb" )
127
- end
128
-
129
- it "should raise an error if the config directory does not exist" do
130
- ::Mole.initialize( :moleable => true, :mole_config => File.join( File.dirname(__FILE__), %w[config freds] ) )
131
- lambda{ ::Mole.load_mole_configuration }.should raise_error( "Unable to find the MOle configuration from `./spec/config/freds" )
132
- end
133
- end
134
-
135
- end