public
Rubygem
Description: Merb Core: All you need. None you don't.
Homepage: http://www.merbivore.com
Clone URL: git://github.com/wycats/merb-core.git
Search Repo:
Fixes for some of Lance's stuff
Yehuda Katz (author)
Wed Feb 06 16:31:00 -0800 2008
commit  054ab7fb1759a283b6bc592836017c832b3c917a
tree    c268de2e2cf45b119ad9da2eab8f8c26ae4572e8
parent  cc02813d9eca3b5dec5d216a6ec653cf7a05c359
...
128
129
130
131
132
 
133
134
135
136
 
137
138
139
...
155
156
157
158
 
 
 
 
 
 
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
 
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
 
219
220
221
...
128
129
130
 
 
131
132
133
134
 
135
136
137
138
...
154
155
156
 
157
158
159
160
161
162
163
164
165
166
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
167
168
169
170
171
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
172
173
174
175
0
@@ -128,12 +128,11 @@ task :aok => [:specs, :rcov]
0
 
0
 require 'open3'
0
 
0
-desc "Run all specs"
0
-task :specs do
0
+def run_specs(glob)
0
   require "optparse"
0
   require "spec"
0
   examples, failures, errors, pending = 0, 0, 0, 0
0
- Dir["spec/**/*_spec.rb"].each do |spec|
0
+ Dir[glob].each do |spec|
0
     response = Open3.popen3("spec #{File.expand_path(spec)} -f s -c") do |i,o,e|
0
       while out = o.gets
0
         STDOUT.puts out
0
@@ -155,67 +154,22 @@ task :specs do
0
     print "\e[31m"
0
   end
0
   puts "#{examples} examples, #{failures} failures, #{errors} errors, #{pending} pending"
0
- print "\e[0m"
0
+ print "\e[0m"
0
+end
0
+
0
+desc "Run all specs"
0
+task :specs do
0
+ run_specs("spec/**/*_spec.rb")
0
 end
0
 
0
 desc "Run private specs"
0
 task "specs:private" do
0
- require "optparse"
0
- require "spec"
0
- examples, failures, errors, pending = 0, 0, 0, 0
0
- Dir["spec/private/**/*_spec.rb"].each do |spec|
0
- response = Open3.popen3("spec #{File.expand_path(spec)} -f s -c") do |i,o,e|
0
- while out = o.gets
0
- STDOUT.puts out
0
- STDOUT.flush
0
- if out =~ /\d+ example/
0
- e, f, p = out.match(/(\d+) examples?, (\d+) failures?(?:, (\d+) pending?)?/)[1..-1]
0
- examples += e.to_i; failures += f.to_i; pending += p.to_i
0
- end
0
- end
0
- errors += 1 if e.is_a?(IO)
0
- STDOUT.puts e.read if e.is_a?(IO)
0
- end
0
- end
0
- puts
0
- puts "*** TOTALS ***"
0
- if failures == 0
0
- print "\e[32m"
0
- else
0
- print "\e[31m"
0
- end
0
- puts "#{examples} examples, #{failures} failures, #{errors} errors, #{pending} pending"
0
- print "\e[0m"
0
+ run_specs("spec/private/**/*_spec.rb")
0
 end
0
 
0
 desc "Run public specs"
0
 task "specs:public" do
0
- require "optparse"
0
- require "spec"
0
- examples, failures, errors, pending = 0, 0, 0, 0
0
- Dir["spec/public/**/*_spec.rb"].each do |spec|
0
- response = Open3.popen3("spec #{File.expand_path(spec)} -f s -c") do |i,o,e|
0
- while out = o.gets
0
- STDOUT.puts out
0
- STDOUT.flush
0
- if out =~ /\d+ example/
0
- e, f, p = out.match(/(\d+) examples?, (\d+) failures?(?:, (\d+) pending?)?/)[1..-1]
0
- examples += e.to_i; failures += f.to_i; pending += p.to_i
0
- end
0
- end
0
- errors += 1 if e.is_a?(IO)
0
- STDOUT.puts e.read if e.is_a?(IO)
0
- end
0
- end
0
- puts
0
- puts "*** TOTALS ***"
0
- if failures == 0
0
- print "\e[32m"
0
- else
0
- print "\e[31m"
0
- end
0
- puts "#{examples} examples, #{failures} failures, #{errors} errors, #{pending} pending"
0
- print "\e[0m"
0
+ run_specs("spec/public/**/*_spec.rb")
0
 end
0
 
0
 desc "Run coverage suite"
...
260
261
262
263
 
264
265
266
...
260
261
262
 
263
264
265
266
0
@@ -260,7 +260,7 @@ module Merb::RenderMixin
0
     
0
     # If a layout was provided, throw an error if it's not found
0
     if layout
0
- template = _template_location(layout, layout.index(".") ? content_type : nil, "layout")
0
+ template = _template_location(layout, layout.index(".") ? nil : content_type, "layout")
0
       Merb::Template.template_for(_template_root / template) ||
0
         (raise TemplateNotFound, "No layout found at #{_template_root / template}.*")
0
     
...
20
21
22
23
 
24
25
26
27
 
28
29
30
...
33
34
35
36
 
37
38
39
...
20
21
22
 
23
24
25
26
 
27
28
29
30
...
33
34
35
 
36
37
38
39
0
@@ -20,11 +20,11 @@ module Merb::Test::Fixtures::Controllers
0
 
0
   class DisplayHtmlDefault < Display; end
0
 
0
- class DisplayClassProvides < Display;
0
+ class DisplayClassProvides < Display
0
     provides :xml
0
   end
0
 
0
- class DisplayLocalProvides < Display;
0
+ class DisplayLocalProvides < Display
0
     
0
     def index
0
       @obj = SomeModel.new
0
@@ -33,7 +33,7 @@ module Merb::Test::Fixtures::Controllers
0
     end
0
   end
0
   
0
- class DisplayWithTemplate < DisplayClassProvides
0
+ class DisplayWithTemplate < Display
0
     layout :custom
0
   end
0
   
...
3
4
5
6
7
8
9
10
11
12
13
14
 
 
15
16
17
18
19
 
20
21
22
...
3
4
5
 
6
7
8
9
10
 
 
 
11
12
13
14
15
 
 
16
17
18
19
0
@@ -3,20 +3,17 @@ require File.join(File.dirname(__FILE__), "spec_helper")
0
 describe Merb::Controller, " displaying objects based on mime type" do
0
 
0
   before do
0
- Merb.push_path(:layout, File.dirname(__FILE__) / "controllers" / "views" / "layouts")
0
     Merb::Router.prepare do |r|
0
       r.default_routes
0
     end
0
   end
0
   
0
- it "should default the mime-type to HTML" do
0
- #dispatch_to(Merb::Test::Fixtures::Controllers::DisplayHtmlDefault, :index).body.should == "HTML: Default"
0
- pending "Decide if there will be a to_html method on model instances?"
0
+ it "should default the mime-type to HTML (and raise since there's no to_html)" do
0
+ running { dispatch_to(Merb::Test::Fixtures::Controllers::DisplayHtmlDefault, :index) }.should raise_error(Merb::ControllerExceptions::NotAcceptable)
0
   end
0
   
0
   it "should use a template if specified" do
0
- # dispatch_to(Merb::Test::Fixtures::Controllers::DisplayWithTemplate, :index).body.should == "HTML: Default"
0
- pending "Decide if there will be a to_html method on model instances?"
0
+ dispatch_to(Merb::Test::Fixtures::Controllers::DisplayWithTemplate, :index).body.should == "Custom: Template"
0
   end
0
 
0
   it "should use other mime-types if they are provided on the class level" do

Comments

    No one has commented yet.