merb-core 0.9.4 → 0.9.5
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.
- data/Rakefile +22 -13
- data/lib/merb-core/bootloader.rb +3 -2
- data/lib/merb-core/config.rb +1 -1
- data/lib/merb-core/constants.rb +3 -1
- data/lib/merb-core/controller/abstract_controller.rb +25 -39
- data/lib/merb-core/controller/exceptions.rb +14 -16
- data/lib/merb-core/controller/merb_controller.rb +2 -2
- data/lib/merb-core/controller/mime.rb +2 -1
- data/lib/merb-core/controller/mixins/render.rb +12 -0
- data/lib/merb-core/controller/mixins/responder.rb +31 -7
- data/lib/merb-core/core_ext/hash.rb +7 -0
- data/lib/merb-core/core_ext/kernel.rb +31 -34
- data/lib/merb-core/core_ext.rb +1 -0
- data/lib/merb-core/dispatch/default_exception/default_exception.rb +3 -3
- data/lib/merb-core/dispatch/dispatcher.rb +128 -135
- data/lib/merb-core/dispatch/request.rb +11 -11
- data/lib/merb-core/dispatch/router/behavior.rb +6 -6
- data/lib/merb-core/dispatch/router.rb +5 -5
- data/lib/merb-core/logger.rb +203 -202
- data/lib/merb-core/rack/application.rb +19 -5
- data/lib/merb-core/rack/middleware/conditional_get.rb +23 -0
- data/lib/merb-core/rack/middleware/content_length.rb +18 -0
- data/lib/merb-core/rack/middleware/tracer.rb +20 -0
- data/lib/merb-core/rack/middleware.rb +1 -7
- data/lib/merb-core/rack.rb +19 -16
- data/lib/merb-core/test/matchers/route_matchers.rb +1 -0
- data/lib/merb-core/test/matchers/view_matchers.rb +36 -0
- data/lib/merb-core/test/run_specs.rb +2 -1
- data/lib/merb-core/version.rb +1 -1
- data/lib/merb-core.rb +39 -33
- data/spec/private/config/merb_spec.rb +34 -0
- data/spec/private/dispatch/fixture/log/merb_test.log +372 -0
- data/spec/private/router/fixture/log/merb_test.log +42 -0
- data/spec/public/abstract_controller/controllers/filters.rb +50 -1
- data/spec/public/abstract_controller/filter_spec.rb +25 -0
- data/spec/public/controller/base_spec.rb +41 -1
- data/spec/public/controller/controllers/base.rb +16 -0
- data/spec/public/controller/controllers/views/merb/test/fixtures/controllers/class_provides/index.html.erb +1 -1
- data/spec/public/controller/dispatcher_spec.rb +24 -25
- data/spec/public/controller/responder_spec.rb +6 -0
- data/spec/public/core_ext/kernel_spec.rb +79 -0
- data/spec/public/directory_structure/directory/log/merb_test.log +245 -0
- data/spec/public/rack/conditinal_get_middleware_spec.rb +139 -0
- data/spec/public/rack/rack_middleware_spec.rb +99 -0
- data/spec/public/rack/shared_example_groups.rb +35 -0
- data/spec/public/reloading/directory/log/merb_test.log +40 -0
- data/spec/public/request/request_spec.rb +0 -5
- data/spec/public/router/fixture/log/merb_test.log +348 -0
- data/spec/public/test/route_matchers_spec.rb +4 -0
- data/spec/spec_helper.rb +7 -1
- metadata +42 -5
- data/spec/private/plugins/plugin_spec.rb +0 -166
data/spec/spec_helper.rb
CHANGED
@@ -30,7 +30,7 @@ module Merb
|
|
30
30
|
def matches?(target)
|
31
31
|
target.log.rewind
|
32
32
|
@text = target.log.read
|
33
|
-
@text =~ (String === @expected ? /#{@expected}/ : @expected)
|
33
|
+
@text =~ (String === @expected ? /#{Regexp.escape @expected}/ : @expected)
|
34
34
|
end
|
35
35
|
|
36
36
|
def failure_message
|
@@ -98,6 +98,12 @@ Spec::Runner.configure do |config|
|
|
98
98
|
config.include Merb::Test::RspecMatchers
|
99
99
|
config.include Merb::Test::RequestHelper
|
100
100
|
|
101
|
+
def with_level(level)
|
102
|
+
Merb.logger = Merb::Logger.new(StringIO.new, level)
|
103
|
+
yield
|
104
|
+
Merb.logger
|
105
|
+
end
|
106
|
+
|
101
107
|
def capture(stream)
|
102
108
|
begin
|
103
109
|
stream = stream.to_s
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: merb-core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.9.
|
4
|
+
version: 0.9.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ezra Zygmuntowicz
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2008-08-
|
12
|
+
date: 2008-08-26 00:00:00 +03:00
|
13
13
|
default_executable:
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
@@ -20,7 +20,7 @@ dependencies:
|
|
20
20
|
requirements:
|
21
21
|
- - ">="
|
22
22
|
- !ruby/object:Gem::Version
|
23
|
-
version: 0.9.
|
23
|
+
version: 0.9.4
|
24
24
|
version:
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: erubis
|
@@ -82,6 +82,36 @@ dependencies:
|
|
82
82
|
- !ruby/object:Gem::Version
|
83
83
|
version: "0"
|
84
84
|
version:
|
85
|
+
- !ruby/object:Gem::Dependency
|
86
|
+
name: hpricot
|
87
|
+
type: :runtime
|
88
|
+
version_requirement:
|
89
|
+
version_requirements: !ruby/object:Gem::Requirement
|
90
|
+
requirements:
|
91
|
+
- - ">="
|
92
|
+
- !ruby/object:Gem::Version
|
93
|
+
version: "0"
|
94
|
+
version:
|
95
|
+
- !ruby/object:Gem::Dependency
|
96
|
+
name: libxml-ruby
|
97
|
+
type: :development
|
98
|
+
version_requirement:
|
99
|
+
version_requirements: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - ">="
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: "0"
|
104
|
+
version:
|
105
|
+
- !ruby/object:Gem::Dependency
|
106
|
+
name: memcache-client
|
107
|
+
type: :development
|
108
|
+
version_requirement:
|
109
|
+
version_requirements: !ruby/object:Gem::Requirement
|
110
|
+
requirements:
|
111
|
+
- - ">="
|
112
|
+
- !ruby/object:Gem::Version
|
113
|
+
version: "0"
|
114
|
+
version:
|
85
115
|
description: Merb. Pocket rocket web framework.
|
86
116
|
email: ez@engineyard.com
|
87
117
|
executables:
|
@@ -110,6 +140,7 @@ files:
|
|
110
140
|
- spec/private/config/adapter_spec.rb
|
111
141
|
- spec/private/config/config_spec.rb
|
112
142
|
- spec/private/config/environment_spec.rb
|
143
|
+
- spec/private/config/merb_spec.rb
|
113
144
|
- spec/private/config/spec_helper.rb
|
114
145
|
- spec/private/core_ext
|
115
146
|
- spec/private/core_ext/kernel_spec.rb
|
@@ -154,8 +185,6 @@ files:
|
|
154
185
|
- spec/private/dispatch/route_params_spec.rb
|
155
186
|
- spec/private/dispatch/session_mixin_spec.rb
|
156
187
|
- spec/private/dispatch/spec_helper.rb
|
157
|
-
- spec/private/plugins
|
158
|
-
- spec/private/plugins/plugin_spec.rb
|
159
188
|
- spec/private/router
|
160
189
|
- spec/private/router/behavior_spec.rb
|
161
190
|
- spec/private/router/fixture
|
@@ -371,6 +400,10 @@ files:
|
|
371
400
|
- spec/public/logger
|
372
401
|
- spec/public/logger/logger_spec.rb
|
373
402
|
- spec/public/logger/spec_helper.rb
|
403
|
+
- spec/public/rack
|
404
|
+
- spec/public/rack/conditinal_get_middleware_spec.rb
|
405
|
+
- spec/public/rack/rack_middleware_spec.rb
|
406
|
+
- spec/public/rack/shared_example_groups.rb
|
374
407
|
- spec/public/reloading
|
375
408
|
- spec/public/reloading/directory
|
376
409
|
- spec/public/reloading/directory/app
|
@@ -437,6 +470,7 @@ files:
|
|
437
470
|
- lib/merb-core/controller/mixins/responder.rb
|
438
471
|
- lib/merb-core/controller/template.rb
|
439
472
|
- lib/merb-core/core_ext
|
473
|
+
- lib/merb-core/core_ext/hash.rb
|
440
474
|
- lib/merb-core/core_ext/kernel.rb
|
441
475
|
- lib/merb-core/core_ext.rb
|
442
476
|
- lib/merb-core/dispatch
|
@@ -481,9 +515,12 @@ files:
|
|
481
515
|
- lib/merb-core/rack/handler
|
482
516
|
- lib/merb-core/rack/handler/mongrel.rb
|
483
517
|
- lib/merb-core/rack/middleware
|
518
|
+
- lib/merb-core/rack/middleware/conditional_get.rb
|
519
|
+
- lib/merb-core/rack/middleware/content_length.rb
|
484
520
|
- lib/merb-core/rack/middleware/path_prefix.rb
|
485
521
|
- lib/merb-core/rack/middleware/profiler.rb
|
486
522
|
- lib/merb-core/rack/middleware/static.rb
|
523
|
+
- lib/merb-core/rack/middleware/tracer.rb
|
487
524
|
- lib/merb-core/rack/middleware.rb
|
488
525
|
- lib/merb-core/rack.rb
|
489
526
|
- lib/merb-core/server.rb
|
@@ -1,166 +0,0 @@
|
|
1
|
-
require File.join(File.dirname(__FILE__), "..", "..", "spec_helper")
|
2
|
-
|
3
|
-
Merb.environment = 'test'
|
4
|
-
|
5
|
-
def reset_merb_generator_scope
|
6
|
-
Merb.orm_generator_scope = :merb_default
|
7
|
-
Merb.test_framework_generator_scope = :rspec
|
8
|
-
Kernel.stub!(:dependency)
|
9
|
-
end
|
10
|
-
|
11
|
-
describe "Plugins", "default generator scope" do
|
12
|
-
it "has :merb_default" do
|
13
|
-
Merb.generator_scope.should include(:merb_default)
|
14
|
-
end
|
15
|
-
|
16
|
-
it "MUST include :merb" do
|
17
|
-
Merb.generator_scope.should include(:merb)
|
18
|
-
end
|
19
|
-
|
20
|
-
it "has :rspec" do
|
21
|
-
Merb.generator_scope.should include(:rspec)
|
22
|
-
end
|
23
|
-
end
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
describe "Plugins", "ORM generator scope" do
|
28
|
-
before :each do
|
29
|
-
reset_merb_generator_scope
|
30
|
-
end
|
31
|
-
|
32
|
-
it "has merb_default stub by default" do
|
33
|
-
Merb.orm_generator_scope.should == :merb_default
|
34
|
-
end
|
35
|
-
end
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
describe "Plugins","use_orm" do
|
40
|
-
before(:each) do
|
41
|
-
reset_merb_generator_scope
|
42
|
-
end
|
43
|
-
|
44
|
-
it "removes defaults from generator scope" do
|
45
|
-
use_orm(:datamapper)
|
46
|
-
Merb.generator_scope.should_not include(:merb_default)
|
47
|
-
end
|
48
|
-
|
49
|
-
it "adds orm symbol to generator scope" do
|
50
|
-
use_orm(:activerecord)
|
51
|
-
Merb.generator_scope.should include(:activerecord)
|
52
|
-
end
|
53
|
-
|
54
|
-
it "replaces previously used if use_orm is called more than once" do
|
55
|
-
use_orm(:sequel)
|
56
|
-
use_orm(:activerecord)
|
57
|
-
use_orm(:datamapper)
|
58
|
-
|
59
|
-
Merb.generator_scope.should_not include(:sequel)
|
60
|
-
Merb.generator_scope.should_not include(:activerecord)
|
61
|
-
Merb.generator_scope.should include(:datamapper)
|
62
|
-
end
|
63
|
-
|
64
|
-
it "calls dependency :merb_<orm>" do
|
65
|
-
Kernel.should_receive(:dependency).with("merb_activerecord").once.
|
66
|
-
and_return(true)
|
67
|
-
use_orm(:activerecord)
|
68
|
-
end
|
69
|
-
|
70
|
-
it "does not affect presence of :merb in generator scope" do
|
71
|
-
use_orm(:datamapper)
|
72
|
-
Merb.generator_scope.should include(:merb)
|
73
|
-
end
|
74
|
-
end
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
describe "Plugins", "test framework generator scope" do
|
79
|
-
before :each do
|
80
|
-
reset_merb_generator_scope
|
81
|
-
end
|
82
|
-
|
83
|
-
it "has rspec by default" do
|
84
|
-
Merb.test_framework_generator_scope.should == :rspec
|
85
|
-
end
|
86
|
-
end
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
describe "Plugins","use_test" do
|
91
|
-
before(:each) do
|
92
|
-
reset_merb_generator_scope
|
93
|
-
end
|
94
|
-
|
95
|
-
it "removes defaults" do
|
96
|
-
use_test(:test_unit)
|
97
|
-
Merb.generator_scope.should_not include(:rspec)
|
98
|
-
end
|
99
|
-
|
100
|
-
it "adds used test framework to generator scope" do
|
101
|
-
use_test(:test_unit)
|
102
|
-
Merb.generator_scope.should include(:test_unit)
|
103
|
-
end
|
104
|
-
|
105
|
-
it "raises an error when unsupported test framework is used" do
|
106
|
-
lambda { use_test(:fiddlefaddle) }.should raise_error
|
107
|
-
end
|
108
|
-
|
109
|
-
it "does not affect presence of :merb in generator scope" do
|
110
|
-
use_test(:test_unit)
|
111
|
-
Merb.generator_scope.should include(:merb)
|
112
|
-
end
|
113
|
-
end
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
describe "Plugins", "register_orm" do
|
118
|
-
before(:each) do
|
119
|
-
reset_merb_generator_scope
|
120
|
-
end
|
121
|
-
|
122
|
-
it "registers ORM plugin at orm generator scope" do
|
123
|
-
register_orm(:sequel)
|
124
|
-
|
125
|
-
Merb.orm_generator_scope.should == :sequel
|
126
|
-
end
|
127
|
-
end
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
describe "Plugins", "register_test_framework" do
|
132
|
-
before(:each) do
|
133
|
-
reset_merb_generator_scope
|
134
|
-
end
|
135
|
-
|
136
|
-
it "registers test framework at generator scope" do
|
137
|
-
register_test_framework(:test_unit)
|
138
|
-
|
139
|
-
Merb.generator_scope.should include(:test_unit)
|
140
|
-
end
|
141
|
-
end
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
describe "Plugins", "supported_test_framework?" do
|
146
|
-
before(:each) do
|
147
|
-
Merb.generator_scope.replace [:merb_default, :merb, :rspec]
|
148
|
-
Kernel.stub!(:dependency)
|
149
|
-
end
|
150
|
-
|
151
|
-
it "supports RSpec" do
|
152
|
-
supported_test_framework?(:rspec).should be(true)
|
153
|
-
end
|
154
|
-
|
155
|
-
it "supports Test::Unit" do
|
156
|
-
supported_test_framework?(:rspec).should be(true)
|
157
|
-
end
|
158
|
-
|
159
|
-
it "does not (no yet) support MSpec" do
|
160
|
-
supported_test_framework?(:mspec).should be(false)
|
161
|
-
end
|
162
|
-
|
163
|
-
it "does not (no yet) support Bacon" do
|
164
|
-
supported_test_framework?(:bacon).should be(false)
|
165
|
-
end
|
166
|
-
end
|