strelka 0.0.1.pre.203 → 0.0.1.pre.214
Sign up to get free protection for your applications and to get access to all the features.
- data.tar.gz.sig +6 -2
- data/ChangeLog +103 -26
- data/MILESTONES.rdoc +16 -0
- data/Manifest.txt +1 -0
- data/Rakefile +1 -0
- data/lib/strelka/app.rb +39 -22
- data/lib/strelka/app/errors.rb +22 -1
- data/lib/strelka/app/parameters.rb +3 -4
- data/lib/strelka/app/templating.rb +49 -28
- data/lib/strelka/logging.rb +1 -1
- data/lib/strelka/mixins.rb +9 -0
- data/lib/strelka/paramvalidator.rb +2 -1
- data/lib/strelka/plugins.rb +10 -8
- data/spec/strelka/app/errors_spec.rb +23 -0
- data/spec/strelka/app/templating_spec.rb +19 -0
- data/spec/strelka/app_spec.rb +21 -0
- data/spec/strelka/httpresponse/negotiation_spec.rb +1 -0
- data/spec/strelka/paramvalidator_spec.rb +780 -707
- data/spec/strelka/plugins_spec.rb +27 -1
- metadata +117 -35
- metadata.gz.sig +0 -0
@@ -173,10 +173,27 @@ describe "Strelka plugin system" do
|
|
173
173
|
app.testing_value.should == :not_the_default
|
174
174
|
end
|
175
175
|
|
176
|
+
it "adds class-instance variables to the class if the plugin has them" do
|
177
|
+
plugin = Module.new do
|
178
|
+
def self::name; "Strelka::Pluggable::ClassInstanceMethodsTestPlugin"; end
|
179
|
+
include Strelka::Plugin
|
180
|
+
module ClassMethods
|
181
|
+
@testing_value = :default
|
182
|
+
attr_accessor :testing_value
|
183
|
+
end
|
184
|
+
end
|
185
|
+
|
186
|
+
app = Class.new( Strelka::Pluggable )
|
187
|
+
app.instance_variable_set( :@testing_value, :pre_existing_value )
|
188
|
+
app.register_plugin( plugin )
|
189
|
+
|
190
|
+
app.testing_value.should == :pre_existing_value
|
191
|
+
end
|
192
|
+
|
176
193
|
end
|
177
194
|
|
178
195
|
|
179
|
-
context "
|
196
|
+
context "PluginLoader module" do
|
180
197
|
|
181
198
|
before( :each ) do
|
182
199
|
@routing_plugin = Module.new do
|
@@ -215,6 +232,15 @@ describe "Strelka plugin system" do
|
|
215
232
|
klass.ancestors.should include( @routing_plugin, @templating_plugin )
|
216
233
|
end
|
217
234
|
|
235
|
+
it "has an introspection method for examining the list of loaded plugins" do
|
236
|
+
klass = Class.new( Strelka::Pluggable ) do
|
237
|
+
plugins :templating, :routing
|
238
|
+
end
|
239
|
+
klass.install_plugins
|
240
|
+
klass.application_stack.should == [ @templating_plugin, @routing_plugin ]
|
241
|
+
end
|
242
|
+
|
243
|
+
|
218
244
|
it "installs the plugins in the right order even if they're loaded at separate times" do
|
219
245
|
superclass = Class.new( Strelka::Pluggable ) do
|
220
246
|
plugin :routing
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: strelka
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.1.pre.
|
4
|
+
version: 0.0.1.pre.214
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -36,11 +36,11 @@ cert_chain:
|
|
36
36
|
YUhDS0xaZFNLai9SSHVUT3QrZ2JsUmV4OEZBaDhOZUEKY21saFhlNDZwWk5K
|
37
37
|
Z1dLYnhaYWg4NWpJang5NWhSOHZPSStOQU01aUg5a09xSzEzRHJ4YWNUS1Bo
|
38
38
|
cWo1UGp3RgotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==
|
39
|
-
date: 2012-
|
39
|
+
date: 2012-05-02 00:00:00.000000000 Z
|
40
40
|
dependencies:
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: trollop
|
43
|
-
requirement:
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
44
|
none: false
|
45
45
|
requirements:
|
46
46
|
- - ~>
|
@@ -48,10 +48,15 @@ dependencies:
|
|
48
48
|
version: '1.16'
|
49
49
|
type: :runtime
|
50
50
|
prerelease: false
|
51
|
-
version_requirements:
|
51
|
+
version_requirements: !ruby/object:Gem::Requirement
|
52
|
+
none: false
|
53
|
+
requirements:
|
54
|
+
- - ~>
|
55
|
+
- !ruby/object:Gem::Version
|
56
|
+
version: '1.16'
|
52
57
|
- !ruby/object:Gem::Dependency
|
53
58
|
name: highline
|
54
|
-
requirement:
|
59
|
+
requirement: !ruby/object:Gem::Requirement
|
55
60
|
none: false
|
56
61
|
requirements:
|
57
62
|
- - ~>
|
@@ -59,10 +64,15 @@ dependencies:
|
|
59
64
|
version: '1.6'
|
60
65
|
type: :runtime
|
61
66
|
prerelease: false
|
62
|
-
version_requirements:
|
67
|
+
version_requirements: !ruby/object:Gem::Requirement
|
68
|
+
none: false
|
69
|
+
requirements:
|
70
|
+
- - ~>
|
71
|
+
- !ruby/object:Gem::Version
|
72
|
+
version: '1.6'
|
63
73
|
- !ruby/object:Gem::Dependency
|
64
74
|
name: sysexits
|
65
|
-
requirement:
|
75
|
+
requirement: !ruby/object:Gem::Requirement
|
66
76
|
none: false
|
67
77
|
requirements:
|
68
78
|
- - ~>
|
@@ -70,10 +80,15 @@ dependencies:
|
|
70
80
|
version: '1.0'
|
71
81
|
type: :runtime
|
72
82
|
prerelease: false
|
73
|
-
version_requirements:
|
83
|
+
version_requirements: !ruby/object:Gem::Requirement
|
84
|
+
none: false
|
85
|
+
requirements:
|
86
|
+
- - ~>
|
87
|
+
- !ruby/object:Gem::Version
|
88
|
+
version: '1.0'
|
74
89
|
- !ruby/object:Gem::Dependency
|
75
90
|
name: formvalidator
|
76
|
-
requirement:
|
91
|
+
requirement: !ruby/object:Gem::Requirement
|
77
92
|
none: false
|
78
93
|
requirements:
|
79
94
|
- - ~>
|
@@ -81,10 +96,15 @@ dependencies:
|
|
81
96
|
version: '0.1'
|
82
97
|
type: :runtime
|
83
98
|
prerelease: false
|
84
|
-
version_requirements:
|
99
|
+
version_requirements: !ruby/object:Gem::Requirement
|
100
|
+
none: false
|
101
|
+
requirements:
|
102
|
+
- - ~>
|
103
|
+
- !ruby/object:Gem::Version
|
104
|
+
version: '0.1'
|
85
105
|
- !ruby/object:Gem::Dependency
|
86
106
|
name: inversion
|
87
|
-
requirement:
|
107
|
+
requirement: !ruby/object:Gem::Requirement
|
88
108
|
none: false
|
89
109
|
requirements:
|
90
110
|
- - ~>
|
@@ -92,10 +112,15 @@ dependencies:
|
|
92
112
|
version: '0.8'
|
93
113
|
type: :runtime
|
94
114
|
prerelease: false
|
95
|
-
version_requirements:
|
115
|
+
version_requirements: !ruby/object:Gem::Requirement
|
116
|
+
none: false
|
117
|
+
requirements:
|
118
|
+
- - ~>
|
119
|
+
- !ruby/object:Gem::Version
|
120
|
+
version: '0.8'
|
96
121
|
- !ruby/object:Gem::Dependency
|
97
122
|
name: mongrel2
|
98
|
-
requirement:
|
123
|
+
requirement: !ruby/object:Gem::Requirement
|
99
124
|
none: false
|
100
125
|
requirements:
|
101
126
|
- - ~>
|
@@ -103,10 +128,15 @@ dependencies:
|
|
103
128
|
version: '0.20'
|
104
129
|
type: :runtime
|
105
130
|
prerelease: false
|
106
|
-
version_requirements:
|
131
|
+
version_requirements: !ruby/object:Gem::Requirement
|
132
|
+
none: false
|
133
|
+
requirements:
|
134
|
+
- - ~>
|
135
|
+
- !ruby/object:Gem::Version
|
136
|
+
version: '0.20'
|
107
137
|
- !ruby/object:Gem::Dependency
|
108
138
|
name: uuidtools
|
109
|
-
requirement:
|
139
|
+
requirement: !ruby/object:Gem::Requirement
|
110
140
|
none: false
|
111
141
|
requirements:
|
112
142
|
- - ~>
|
@@ -114,10 +144,15 @@ dependencies:
|
|
114
144
|
version: '2.1'
|
115
145
|
type: :runtime
|
116
146
|
prerelease: false
|
117
|
-
version_requirements:
|
147
|
+
version_requirements: !ruby/object:Gem::Requirement
|
148
|
+
none: false
|
149
|
+
requirements:
|
150
|
+
- - ~>
|
151
|
+
- !ruby/object:Gem::Version
|
152
|
+
version: '2.1'
|
118
153
|
- !ruby/object:Gem::Dependency
|
119
154
|
name: configurability
|
120
|
-
requirement:
|
155
|
+
requirement: !ruby/object:Gem::Requirement
|
121
156
|
none: false
|
122
157
|
requirements:
|
123
158
|
- - ~>
|
@@ -125,10 +160,15 @@ dependencies:
|
|
125
160
|
version: '1.0'
|
126
161
|
type: :runtime
|
127
162
|
prerelease: false
|
128
|
-
version_requirements:
|
163
|
+
version_requirements: !ruby/object:Gem::Requirement
|
164
|
+
none: false
|
165
|
+
requirements:
|
166
|
+
- - ~>
|
167
|
+
- !ruby/object:Gem::Version
|
168
|
+
version: '1.0'
|
129
169
|
- !ruby/object:Gem::Dependency
|
130
170
|
name: pluginfactory
|
131
|
-
requirement:
|
171
|
+
requirement: !ruby/object:Gem::Requirement
|
132
172
|
none: false
|
133
173
|
requirements:
|
134
174
|
- - ~>
|
@@ -136,10 +176,15 @@ dependencies:
|
|
136
176
|
version: '1.0'
|
137
177
|
type: :runtime
|
138
178
|
prerelease: false
|
139
|
-
version_requirements:
|
179
|
+
version_requirements: !ruby/object:Gem::Requirement
|
180
|
+
none: false
|
181
|
+
requirements:
|
182
|
+
- - ~>
|
183
|
+
- !ruby/object:Gem::Version
|
184
|
+
version: '1.0'
|
140
185
|
- !ruby/object:Gem::Dependency
|
141
186
|
name: hoe-mercurial
|
142
|
-
requirement:
|
187
|
+
requirement: !ruby/object:Gem::Requirement
|
143
188
|
none: false
|
144
189
|
requirements:
|
145
190
|
- - ~>
|
@@ -147,10 +192,15 @@ dependencies:
|
|
147
192
|
version: 1.4.0
|
148
193
|
type: :development
|
149
194
|
prerelease: false
|
150
|
-
version_requirements:
|
195
|
+
version_requirements: !ruby/object:Gem::Requirement
|
196
|
+
none: false
|
197
|
+
requirements:
|
198
|
+
- - ~>
|
199
|
+
- !ruby/object:Gem::Version
|
200
|
+
version: 1.4.0
|
151
201
|
- !ruby/object:Gem::Dependency
|
152
202
|
name: hoe-manualgen
|
153
|
-
requirement:
|
203
|
+
requirement: !ruby/object:Gem::Requirement
|
154
204
|
none: false
|
155
205
|
requirements:
|
156
206
|
- - ~>
|
@@ -158,10 +208,15 @@ dependencies:
|
|
158
208
|
version: 0.3.0
|
159
209
|
type: :development
|
160
210
|
prerelease: false
|
161
|
-
version_requirements:
|
211
|
+
version_requirements: !ruby/object:Gem::Requirement
|
212
|
+
none: false
|
213
|
+
requirements:
|
214
|
+
- - ~>
|
215
|
+
- !ruby/object:Gem::Version
|
216
|
+
version: 0.3.0
|
162
217
|
- !ruby/object:Gem::Dependency
|
163
218
|
name: hoe-highline
|
164
|
-
requirement:
|
219
|
+
requirement: !ruby/object:Gem::Requirement
|
165
220
|
none: false
|
166
221
|
requirements:
|
167
222
|
- - ~>
|
@@ -169,10 +224,15 @@ dependencies:
|
|
169
224
|
version: 0.1.0
|
170
225
|
type: :development
|
171
226
|
prerelease: false
|
172
|
-
version_requirements:
|
227
|
+
version_requirements: !ruby/object:Gem::Requirement
|
228
|
+
none: false
|
229
|
+
requirements:
|
230
|
+
- - ~>
|
231
|
+
- !ruby/object:Gem::Version
|
232
|
+
version: 0.1.0
|
173
233
|
- !ruby/object:Gem::Dependency
|
174
234
|
name: rdoc
|
175
|
-
requirement:
|
235
|
+
requirement: !ruby/object:Gem::Requirement
|
176
236
|
none: false
|
177
237
|
requirements:
|
178
238
|
- - ~>
|
@@ -180,10 +240,15 @@ dependencies:
|
|
180
240
|
version: '3.10'
|
181
241
|
type: :development
|
182
242
|
prerelease: false
|
183
|
-
version_requirements:
|
243
|
+
version_requirements: !ruby/object:Gem::Requirement
|
244
|
+
none: false
|
245
|
+
requirements:
|
246
|
+
- - ~>
|
247
|
+
- !ruby/object:Gem::Version
|
248
|
+
version: '3.10'
|
184
249
|
- !ruby/object:Gem::Dependency
|
185
250
|
name: hoe-deveiate
|
186
|
-
requirement:
|
251
|
+
requirement: !ruby/object:Gem::Requirement
|
187
252
|
none: false
|
188
253
|
requirements:
|
189
254
|
- - ~>
|
@@ -191,10 +256,15 @@ dependencies:
|
|
191
256
|
version: '0.1'
|
192
257
|
type: :development
|
193
258
|
prerelease: false
|
194
|
-
version_requirements:
|
259
|
+
version_requirements: !ruby/object:Gem::Requirement
|
260
|
+
none: false
|
261
|
+
requirements:
|
262
|
+
- - ~>
|
263
|
+
- !ruby/object:Gem::Version
|
264
|
+
version: '0.1'
|
195
265
|
- !ruby/object:Gem::Dependency
|
196
266
|
name: simplecov
|
197
|
-
requirement:
|
267
|
+
requirement: !ruby/object:Gem::Requirement
|
198
268
|
none: false
|
199
269
|
requirements:
|
200
270
|
- - ~>
|
@@ -202,10 +272,15 @@ dependencies:
|
|
202
272
|
version: '0.6'
|
203
273
|
type: :development
|
204
274
|
prerelease: false
|
205
|
-
version_requirements:
|
275
|
+
version_requirements: !ruby/object:Gem::Requirement
|
276
|
+
none: false
|
277
|
+
requirements:
|
278
|
+
- - ~>
|
279
|
+
- !ruby/object:Gem::Version
|
280
|
+
version: '0.6'
|
206
281
|
- !ruby/object:Gem::Dependency
|
207
282
|
name: hoe
|
208
|
-
requirement:
|
283
|
+
requirement: !ruby/object:Gem::Requirement
|
209
284
|
none: false
|
210
285
|
requirements:
|
211
286
|
- - ~>
|
@@ -213,7 +288,12 @@ dependencies:
|
|
213
288
|
version: '3.0'
|
214
289
|
type: :development
|
215
290
|
prerelease: false
|
216
|
-
version_requirements:
|
291
|
+
version_requirements: !ruby/object:Gem::Requirement
|
292
|
+
none: false
|
293
|
+
requirements:
|
294
|
+
- - ~>
|
295
|
+
- !ruby/object:Gem::Version
|
296
|
+
version: '3.0'
|
217
297
|
description: ! 'Strelka is a framework for creating and deploying Mongrel2 web applications
|
218
298
|
|
219
299
|
in Ruby, and for managing a Mongrel2 cluster.
|
@@ -230,6 +310,7 @@ extensions: []
|
|
230
310
|
extra_rdoc_files:
|
231
311
|
- History.rdoc
|
232
312
|
- IDEAS.rdoc
|
313
|
+
- MILESTONES.rdoc
|
233
314
|
- Manifest.txt
|
234
315
|
- README.rdoc
|
235
316
|
files:
|
@@ -237,6 +318,7 @@ files:
|
|
237
318
|
- ChangeLog
|
238
319
|
- History.rdoc
|
239
320
|
- IDEAS.rdoc
|
321
|
+
- MILESTONES.rdoc
|
240
322
|
- Manifest.txt
|
241
323
|
- README.rdoc
|
242
324
|
- Rakefile
|
@@ -364,7 +446,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
364
446
|
version: '0'
|
365
447
|
requirements: []
|
366
448
|
rubyforge_project: strelka
|
367
|
-
rubygems_version: 1.8.
|
449
|
+
rubygems_version: 1.8.21
|
368
450
|
signing_key:
|
369
451
|
specification_version: 3
|
370
452
|
summary: Strelka is a framework for creating and deploying Mongrel2 web applications
|
metadata.gz.sig
CHANGED
Binary file
|