merb-core 0.9.7 → 0.9.8

Sign up to get free protection for your applications and to get access to all the features.
Files changed (274) hide show
  1. data/CHANGELOG +136 -2
  2. data/CONTRIBUTORS +6 -0
  3. data/PUBLIC_CHANGELOG +38 -0
  4. data/Rakefile +38 -30
  5. data/lib/merb-core.rb +88 -23
  6. data/lib/merb-core/bootloader.rb +235 -51
  7. data/lib/merb-core/config.rb +121 -36
  8. data/lib/merb-core/controller/abstract_controller.rb +59 -36
  9. data/lib/merb-core/controller/exceptions.rb +2 -15
  10. data/lib/merb-core/controller/merb_controller.rb +44 -1
  11. data/lib/merb-core/controller/mime.rb +4 -0
  12. data/lib/merb-core/controller/mixins/controller.rb +38 -21
  13. data/lib/merb-core/controller/mixins/render.rb +44 -29
  14. data/lib/merb-core/controller/mixins/responder.rb +3 -31
  15. data/lib/merb-core/controller/template.rb +45 -21
  16. data/lib/merb-core/core_ext/kernel.rb +60 -32
  17. data/lib/merb-core/dispatch/default_exception/default_exception.rb +2 -2
  18. data/lib/merb-core/dispatch/default_exception/views/_css.html.erb +3 -1
  19. data/lib/merb-core/dispatch/default_exception/views/_javascript.html.erb +71 -67
  20. data/lib/merb-core/dispatch/default_exception/views/index.html.erb +7 -3
  21. data/lib/merb-core/dispatch/dispatcher.rb +3 -3
  22. data/lib/merb-core/dispatch/request.rb +56 -9
  23. data/lib/merb-core/dispatch/router.rb +159 -133
  24. data/lib/merb-core/dispatch/router/behavior.rb +462 -703
  25. data/lib/merb-core/dispatch/router/cached_proc.rb +3 -3
  26. data/lib/merb-core/dispatch/router/resources.rb +289 -0
  27. data/lib/merb-core/dispatch/router/route.rb +514 -294
  28. data/lib/merb-core/dispatch/session.rb +4 -2
  29. data/lib/merb-core/logger.rb +213 -202
  30. data/lib/merb-core/plugins.rb +9 -1
  31. data/lib/merb-core/rack.rb +3 -1
  32. data/lib/merb-core/rack/adapter.rb +7 -4
  33. data/lib/merb-core/rack/adapter/abstract.rb +188 -0
  34. data/lib/merb-core/rack/adapter/ebb.rb +12 -13
  35. data/lib/merb-core/rack/adapter/evented_mongrel.rb +2 -15
  36. data/lib/merb-core/rack/adapter/irb.rb +3 -2
  37. data/lib/merb-core/rack/adapter/mongrel.rb +22 -15
  38. data/lib/merb-core/rack/adapter/swiftiplied_mongrel.rb +4 -16
  39. data/lib/merb-core/rack/adapter/thin.rb +21 -22
  40. data/lib/merb-core/rack/adapter/thin_turbo.rb +4 -11
  41. data/lib/merb-core/rack/adapter/webrick.rb +54 -18
  42. data/lib/merb-core/rack/application.rb +4 -4
  43. data/lib/merb-core/rack/handler/mongrel.rb +12 -13
  44. data/lib/merb-core/rack/middleware/csrf.rb +1 -1
  45. data/lib/merb-core/rack/stream_wrapper.rb +41 -0
  46. data/lib/merb-core/server.rb +157 -90
  47. data/lib/merb-core/tasks/gem_management.rb +267 -0
  48. data/lib/merb-core/tasks/merb.rb +1 -0
  49. data/lib/merb-core/tasks/merb_rake_helper.rb +48 -34
  50. data/lib/merb-core/tasks/stats.rake +1 -1
  51. data/lib/merb-core/test.rb +9 -3
  52. data/lib/merb-core/test/helpers.rb +1 -0
  53. data/lib/merb-core/test/helpers/mock_request_helper.rb +393 -0
  54. data/lib/merb-core/test/helpers/multipart_request_helper.rb +3 -2
  55. data/lib/merb-core/test/helpers/request_helper.rb +40 -372
  56. data/lib/merb-core/test/helpers/route_helper.rb +16 -2
  57. data/lib/merb-core/test/matchers.rb +1 -0
  58. data/lib/merb-core/test/matchers/controller_matchers.rb +4 -247
  59. data/lib/merb-core/test/matchers/request_matchers.rb +140 -0
  60. data/lib/merb-core/test/matchers/view_matchers.rb +22 -4
  61. data/lib/merb-core/test/run_specs.rb +118 -26
  62. data/lib/merb-core/test/test_ext/rspec.rb +181 -0
  63. data/lib/merb-core/version.rb +1 -9
  64. metadata +10 -342
  65. data/docs/bootloading.dox +0 -58
  66. data/docs/documentation_standards +0 -40
  67. data/docs/merb-core-call-stack-diagram.mmap +0 -0
  68. data/docs/merb-core-call-stack-diagram.pdf +0 -0
  69. data/docs/merb-core-call-stack-diagram.png +0 -0
  70. data/docs/new_render_api +0 -51
  71. data/lib/merb-core/vendor/facets.rb +0 -2
  72. data/lib/merb-core/vendor/facets/dictionary.rb +0 -433
  73. data/lib/merb-core/vendor/facets/inflect.rb +0 -342
  74. data/spec/private/config/adapter_spec.rb +0 -32
  75. data/spec/private/config/config_spec.rb +0 -202
  76. data/spec/private/config/environment_spec.rb +0 -13
  77. data/spec/private/config/merb_spec.rb +0 -34
  78. data/spec/private/config/spec_helper.rb +0 -1
  79. data/spec/private/core_ext/kernel_spec.rb +0 -159
  80. data/spec/private/dispatch/bootloader_spec.rb +0 -24
  81. data/spec/private/dispatch/fixture/app/controllers/application.rb +0 -4
  82. data/spec/private/dispatch/fixture/app/controllers/exceptions.rb +0 -25
  83. data/spec/private/dispatch/fixture/app/controllers/foo.rb +0 -19
  84. data/spec/private/dispatch/fixture/app/helpers/global_helpers.rb +0 -8
  85. data/spec/private/dispatch/fixture/app/views/exeptions/client_error.html.erb +0 -37
  86. data/spec/private/dispatch/fixture/app/views/exeptions/internal_server_error.html.erb +0 -216
  87. data/spec/private/dispatch/fixture/app/views/exeptions/not_acceptable.html.erb +0 -38
  88. data/spec/private/dispatch/fixture/app/views/exeptions/not_found.html.erb +0 -40
  89. data/spec/private/dispatch/fixture/app/views/foo/bar.html.erb +0 -0
  90. data/spec/private/dispatch/fixture/app/views/layout/application.html.erb +0 -11
  91. data/spec/private/dispatch/fixture/config/black_hole.rb +0 -12
  92. data/spec/private/dispatch/fixture/config/environments/development.rb +0 -6
  93. data/spec/private/dispatch/fixture/config/environments/production.rb +0 -5
  94. data/spec/private/dispatch/fixture/config/environments/test.rb +0 -6
  95. data/spec/private/dispatch/fixture/config/init.rb +0 -45
  96. data/spec/private/dispatch/fixture/config/rack.rb +0 -11
  97. data/spec/private/dispatch/fixture/config/router.rb +0 -35
  98. data/spec/private/dispatch/fixture/log/merb_test.log +0 -8839
  99. data/spec/private/dispatch/fixture/public/images/merb.jpg +0 -0
  100. data/spec/private/dispatch/fixture/public/merb.fcgi +0 -4
  101. data/spec/private/dispatch/fixture/public/stylesheets/master.css +0 -119
  102. data/spec/private/dispatch/route_params_spec.rb +0 -23
  103. data/spec/private/dispatch/spec_helper.rb +0 -1
  104. data/spec/private/router/behavior_spec.rb +0 -60
  105. data/spec/private/router/fixture/log/merb_test.log +0 -35
  106. data/spec/private/router/route_spec.rb +0 -418
  107. data/spec/private/router/router_spec.rb +0 -183
  108. data/spec/private/vendor/facets/plural_spec.rb +0 -564
  109. data/spec/private/vendor/facets/singular_spec.rb +0 -489
  110. data/spec/public/DEFINITIONS +0 -11
  111. data/spec/public/abstract_controller/controllers/alt_views/layout/application.erb +0 -1
  112. data/spec/public/abstract_controller/controllers/alt_views/layout/merb/test/fixtures/abstract/render_string_controller_layout.erb +0 -1
  113. data/spec/public/abstract_controller/controllers/alt_views/layout/merb/test/fixtures/abstract/render_template_controller_layout.erb +0 -1
  114. data/spec/public/abstract_controller/controllers/alt_views/merb/test/fixtures/abstract/display_object_with_multiple_roots/index.erb +0 -1
  115. data/spec/public/abstract_controller/controllers/alt_views/merb/test/fixtures/abstract/display_object_with_multiple_roots/show.erb +0 -1
  116. data/spec/public/abstract_controller/controllers/alt_views/merb/test/fixtures/abstract/render_template_multiple_roots/index.erb +0 -1
  117. data/spec/public/abstract_controller/controllers/alt_views/partial/basic_partial_with_multiple_roots/_partial.erb +0 -1
  118. data/spec/public/abstract_controller/controllers/alt_views/render_template_multiple_roots_and_custom_location/index.erb +0 -1
  119. data/spec/public/abstract_controller/controllers/alt_views/render_template_multiple_roots_inherited/index.erb +0 -1
  120. data/spec/public/abstract_controller/controllers/cousins.rb +0 -41
  121. data/spec/public/abstract_controller/controllers/display.rb +0 -60
  122. data/spec/public/abstract_controller/controllers/filters.rb +0 -260
  123. data/spec/public/abstract_controller/controllers/helpers.rb +0 -41
  124. data/spec/public/abstract_controller/controllers/partial.rb +0 -121
  125. data/spec/public/abstract_controller/controllers/render.rb +0 -113
  126. data/spec/public/abstract_controller/controllers/views/helpers/capture/index.erb +0 -1
  127. data/spec/public/abstract_controller/controllers/views/helpers/capture_eq/index.erb +0 -1
  128. data/spec/public/abstract_controller/controllers/views/helpers/capture_with_args/index.erb +0 -1
  129. data/spec/public/abstract_controller/controllers/views/helpers/concat/index.erb +0 -1
  130. data/spec/public/abstract_controller/controllers/views/layout/alt.erb +0 -1
  131. data/spec/public/abstract_controller/controllers/views/layout/custom.erb +0 -1
  132. data/spec/public/abstract_controller/controllers/views/merb/test/fixtures/abstract/display_object/index.erb +0 -1
  133. data/spec/public/abstract_controller/controllers/views/merb/test/fixtures/abstract/display_object_with_action/new.erb +0 -1
  134. data/spec/public/abstract_controller/controllers/views/merb/test/fixtures/abstract/render_template/index.erb +0 -1
  135. data/spec/public/abstract_controller/controllers/views/merb/test/fixtures/abstract/render_template_app_layout/index.erb +0 -0
  136. data/spec/public/abstract_controller/controllers/views/merb/test/fixtures/abstract/render_template_custom_layout/index.erb +0 -1
  137. data/spec/public/abstract_controller/controllers/views/merb/test/fixtures/abstract/render_template_multiple_roots/index.erb +0 -1
  138. data/spec/public/abstract_controller/controllers/views/merb/test/fixtures/abstract/render_template_multiple_roots/show.erb +0 -1
  139. data/spec/public/abstract_controller/controllers/views/merb/test/fixtures/abstract/render_two_throw_contents/index.erb +0 -1
  140. data/spec/public/abstract_controller/controllers/views/partial/another_directory/_partial.erb +0 -1
  141. data/spec/public/abstract_controller/controllers/views/partial/basic_partial/_partial.erb +0 -1
  142. data/spec/public/abstract_controller/controllers/views/partial/basic_partial/index.erb +0 -1
  143. data/spec/public/abstract_controller/controllers/views/partial/basic_partial_with_multiple_roots/index.erb +0 -1
  144. data/spec/public/abstract_controller/controllers/views/partial/nested_partial/_first.erb +0 -1
  145. data/spec/public/abstract_controller/controllers/views/partial/nested_partial/_second.erb +0 -1
  146. data/spec/public/abstract_controller/controllers/views/partial/nested_partial/index.erb +0 -1
  147. data/spec/public/abstract_controller/controllers/views/partial/partial_in_another_directory/index.erb +0 -1
  148. data/spec/public/abstract_controller/controllers/views/partial/partial_with_both/_collection.erb +0 -1
  149. data/spec/public/abstract_controller/controllers/views/partial/partial_with_both/index.erb +0 -1
  150. data/spec/public/abstract_controller/controllers/views/partial/partial_with_collections/_collection.erb +0 -1
  151. data/spec/public/abstract_controller/controllers/views/partial/partial_with_collections/index.erb +0 -1
  152. data/spec/public/abstract_controller/controllers/views/partial/partial_with_collections_and_as/_collection.erb +0 -1
  153. data/spec/public/abstract_controller/controllers/views/partial/partial_with_collections_and_as/index.erb +0 -1
  154. data/spec/public/abstract_controller/controllers/views/partial/partial_with_collections_and_counter/_collection.erb +0 -1
  155. data/spec/public/abstract_controller/controllers/views/partial/partial_with_collections_and_counter/index.erb +0 -1
  156. data/spec/public/abstract_controller/controllers/views/partial/partial_with_locals/_variables.erb +0 -1
  157. data/spec/public/abstract_controller/controllers/views/partial/partial_with_locals/index.erb +0 -1
  158. data/spec/public/abstract_controller/controllers/views/partial/partial_with_with_and_locals/_both.erb +0 -1
  159. data/spec/public/abstract_controller/controllers/views/partial/partial_with_with_and_locals/index.erb +0 -1
  160. data/spec/public/abstract_controller/controllers/views/partial/with_absolute_partial/_partial.erb +0 -1
  161. data/spec/public/abstract_controller/controllers/views/partial/with_absolute_partial/index.erb +0 -1
  162. data/spec/public/abstract_controller/controllers/views/partial/with_as_partial/_with_partial.erb +0 -1
  163. data/spec/public/abstract_controller/controllers/views/partial/with_as_partial/index.erb +0 -1
  164. data/spec/public/abstract_controller/controllers/views/partial/with_nil_partial/_with_partial.erb +0 -1
  165. data/spec/public/abstract_controller/controllers/views/partial/with_nil_partial/index.erb +0 -1
  166. data/spec/public/abstract_controller/controllers/views/partial/with_partial/_with_partial.erb +0 -1
  167. data/spec/public/abstract_controller/controllers/views/partial/with_partial/index.erb +0 -1
  168. data/spec/public/abstract_controller/controllers/views/test_display/foo.html.erb +0 -1
  169. data/spec/public/abstract_controller/controllers/views/test_render/foo.html.erb +0 -0
  170. data/spec/public/abstract_controller/controllers/views/wonderful/index.erb +0 -1
  171. data/spec/public/abstract_controller/display_spec.rb +0 -37
  172. data/spec/public/abstract_controller/filter_spec.rb +0 -136
  173. data/spec/public/abstract_controller/helper_spec.rb +0 -21
  174. data/spec/public/abstract_controller/partial_spec.rb +0 -61
  175. data/spec/public/abstract_controller/render_spec.rb +0 -90
  176. data/spec/public/abstract_controller/spec_helper.rb +0 -31
  177. data/spec/public/boot_loader/boot_loader_spec.rb +0 -33
  178. data/spec/public/boot_loader/spec_helper.rb +0 -1
  179. data/spec/public/controller/authentication_spec.rb +0 -174
  180. data/spec/public/controller/base_spec.rb +0 -88
  181. data/spec/public/controller/conditional_get_spec.rb +0 -100
  182. data/spec/public/controller/config/init.rb +0 -6
  183. data/spec/public/controller/controllers/authentication.rb +0 -74
  184. data/spec/public/controller/controllers/base.rb +0 -65
  185. data/spec/public/controller/controllers/conditional_get.rb +0 -35
  186. data/spec/public/controller/controllers/cookies.rb +0 -36
  187. data/spec/public/controller/controllers/dispatcher.rb +0 -35
  188. data/spec/public/controller/controllers/display.rb +0 -118
  189. data/spec/public/controller/controllers/redirect.rb +0 -36
  190. data/spec/public/controller/controllers/responder.rb +0 -93
  191. data/spec/public/controller/controllers/url.rb +0 -7
  192. data/spec/public/controller/controllers/views/layout/custom.html.erb +0 -1
  193. data/spec/public/controller/controllers/views/layout/custom_arg.html.erb +0 -1
  194. data/spec/public/controller/controllers/views/layout/custom_arg.json.erb +0 -1
  195. data/spec/public/controller/controllers/views/merb/test/fixtures/controllers/class_and_local_provides/index.html.erb +0 -1
  196. data/spec/public/controller/controllers/views/merb/test/fixtures/controllers/class_and_local_provides/index.xml.erb +0 -1
  197. data/spec/public/controller/controllers/views/merb/test/fixtures/controllers/class_provides/index.html.erb +0 -1
  198. data/spec/public/controller/controllers/views/merb/test/fixtures/controllers/class_provides/index.xml.erb +0 -1
  199. data/spec/public/controller/controllers/views/merb/test/fixtures/controllers/display_with_template/index.html.erb +0 -1
  200. data/spec/public/controller/controllers/views/merb/test/fixtures/controllers/display_with_template/no_layout.html.erb +0 -1
  201. data/spec/public/controller/controllers/views/merb/test/fixtures/controllers/display_with_template_argument/index.html.erb +0 -1
  202. data/spec/public/controller/controllers/views/merb/test/fixtures/controllers/html_default/index.html.erb +0 -1
  203. data/spec/public/controller/controllers/views/merb/test/fixtures/controllers/layout/custom.html.erb +0 -1
  204. data/spec/public/controller/controllers/views/merb/test/fixtures/controllers/local_provides/index.html.erb +0 -1
  205. data/spec/public/controller/controllers/views/merb/test/fixtures/controllers/local_provides/index.xml.erb +0 -1
  206. data/spec/public/controller/controllers/views/merb/test/fixtures/controllers/multi_provides/index.html.erb +0 -1
  207. data/spec/public/controller/controllers/views/merb/test/fixtures/controllers/multi_provides/index.js.erb +0 -1
  208. data/spec/public/controller/cookies_spec.rb +0 -95
  209. data/spec/public/controller/dispatcher_spec.rb +0 -410
  210. data/spec/public/controller/display_spec.rb +0 -84
  211. data/spec/public/controller/redirect_spec.rb +0 -33
  212. data/spec/public/controller/responder_spec.rb +0 -169
  213. data/spec/public/controller/spec_helper.rb +0 -13
  214. data/spec/public/controller/url_spec.rb +0 -255
  215. data/spec/public/core/merb_core_spec.rb +0 -45
  216. data/spec/public/core_ext/fixtures/core_ext_dependency.rb +0 -2
  217. data/spec/public/core_ext/kernel_spec.rb +0 -88
  218. data/spec/public/core_ext/spec_helper.rb +0 -1
  219. data/spec/public/directory_structure/directory/app/controllers/application.rb +0 -3
  220. data/spec/public/directory_structure/directory/app/controllers/base.rb +0 -13
  221. data/spec/public/directory_structure/directory/app/controllers/custom.rb +0 -19
  222. data/spec/public/directory_structure/directory/app/views/base/template.html.erb +0 -1
  223. data/spec/public/directory_structure/directory/app/views/wonderful/template.erb +0 -1
  224. data/spec/public/directory_structure/directory/config/router.rb +0 -3
  225. data/spec/public/directory_structure/directory/log/merb_test.log +0 -4588
  226. data/spec/public/directory_structure/directory_spec.rb +0 -43
  227. data/spec/public/logger/logger_spec.rb +0 -181
  228. data/spec/public/logger/spec_helper.rb +0 -1
  229. data/spec/public/rack/conditinal_get_middleware_spec.rb +0 -127
  230. data/spec/public/rack/csrf_middleware_spec.rb +0 -70
  231. data/spec/public/rack/rack_middleware_spec.rb +0 -99
  232. data/spec/public/rack/shared_example_groups.rb +0 -35
  233. data/spec/public/reloading/directory/app/controllers/application.rb +0 -3
  234. data/spec/public/reloading/directory/app/controllers/reload.rb +0 -6
  235. data/spec/public/reloading/directory/config/init.rb +0 -2
  236. data/spec/public/reloading/directory/log/merb_test.log +0 -288231
  237. data/spec/public/reloading/reload_spec.rb +0 -103
  238. data/spec/public/request/multipart_spec.rb +0 -41
  239. data/spec/public/request/request_spec.rb +0 -250
  240. data/spec/public/router/default_spec.rb +0 -21
  241. data/spec/public/router/deferred_spec.rb +0 -22
  242. data/spec/public/router/fixation_spec.rb +0 -49
  243. data/spec/public/router/fixture/log/merb_test.log +0 -524
  244. data/spec/public/router/namespace_spec.rb +0 -113
  245. data/spec/public/router/nested_matches_spec.rb +0 -97
  246. data/spec/public/router/nested_resources_spec.rb +0 -41
  247. data/spec/public/router/resource_spec.rb +0 -37
  248. data/spec/public/router/resources_spec.rb +0 -82
  249. data/spec/public/router/spec_helper.rb +0 -90
  250. data/spec/public/router/special_spec.rb +0 -61
  251. data/spec/public/router/string_spec.rb +0 -61
  252. data/spec/public/session/controllers/sessions.rb +0 -56
  253. data/spec/public/session/cookie_session_spec.rb +0 -73
  254. data/spec/public/session/memcached_session_spec.rb +0 -31
  255. data/spec/public/session/memory_session_spec.rb +0 -28
  256. data/spec/public/session/multiple_sessions_spec.rb +0 -74
  257. data/spec/public/session/no_session_spec.rb +0 -12
  258. data/spec/public/session/session_spec.rb +0 -106
  259. data/spec/public/template/template_spec.rb +0 -104
  260. data/spec/public/template/templates/error.html.erb +0 -2
  261. data/spec/public/template/templates/template.html.erb +0 -1
  262. data/spec/public/template/templates/template.html.myt +0 -1
  263. data/spec/public/test/controller_matchers_spec.rb +0 -412
  264. data/spec/public/test/controllers/controller_assertion_mock.rb +0 -7
  265. data/spec/public/test/controllers/dispatch_controller.rb +0 -11
  266. data/spec/public/test/controllers/spec_helper_controller.rb +0 -39
  267. data/spec/public/test/multipart_request_helper_spec.rb +0 -159
  268. data/spec/public/test/multipart_upload_text_file.txt +0 -1
  269. data/spec/public/test/request_helper_spec.rb +0 -269
  270. data/spec/public/test/route_helper_spec.rb +0 -78
  271. data/spec/public/test/route_matchers_spec.rb +0 -166
  272. data/spec/public/test/view_helper_spec.rb +0 -96
  273. data/spec/public/test/view_matchers_spec.rb +0 -183
  274. data/spec/spec_helper.rb +0 -121
@@ -1,6 +1,94 @@
1
1
  require 'rubygems'
2
- require 'open3'
3
2
  require 'benchmark'
3
+ require 'drb'
4
+ require 'spec'
5
+ require 'spec/runner/formatter/base_text_formatter'
6
+ require 'spec/spec_helper.rb'
7
+
8
+ # Load this stuff so it only has to be loaded once for the entire suite
9
+ require 'spec/mocks'
10
+ require 'spec/mocks/extensions'
11
+ require 'spec/runner/formatter/specdoc_formatter'
12
+ require 'base64'
13
+ require 'nkf'
14
+ require 'kconv'
15
+ require 'rack'
16
+
17
+ begin
18
+ require 'json'
19
+ rescue
20
+ require 'json/pure'
21
+ end
22
+
23
+ Merb::Dispatcher
24
+
25
+ module Spec
26
+ module Runner
27
+ module Formatter
28
+ class BaseTextFormatter
29
+ def dump_failure(counter, failure)
30
+ output = @options.error_stream
31
+ output.puts
32
+ output.puts "#{counter.to_s})"
33
+ output.puts colourise("#{failure.header}\n#{failure.exception.message}", failure)
34
+ output.puts format_backtrace(failure.exception.backtrace)
35
+ output.flush
36
+ end
37
+ end
38
+ end
39
+ end
40
+ end
41
+
42
+ module Merb
43
+ class Counter
44
+ include DRb::DRbUndumped
45
+
46
+ attr_accessor :time
47
+ def initialize
48
+ @examples, @failures, @errors, @pending, @total_time = 0, 0, 0, 0, 0
49
+ @err = ""
50
+ @mutex = Mutex.new
51
+ end
52
+
53
+ def add(spec, out, err)
54
+ @mutex.synchronize do
55
+ puts
56
+ puts "Running #{spec}."
57
+ STDOUT.puts out
58
+ STDOUT.flush
59
+ match = out.match(/(\d+) examples?, (\d+) failures?(?:, (\d+) errors?)?(?:, (\d+) pending?)?/m)
60
+ time = out.match(/Finished in (\d+\.\d+) seconds/)
61
+ @total_time += time[1].to_f if time
62
+ if match
63
+ e, f, errors, pending = match[1..-1]
64
+ @examples += e.to_i
65
+ @failures += f.to_i
66
+ @errors += errors.to_i
67
+ @pending += pending.to_i
68
+ end
69
+ unless err.chomp.empty?
70
+ @err << err.chomp << "\n"
71
+ end
72
+ end
73
+ end
74
+
75
+ def report
76
+ puts @err
77
+ puts
78
+ if @failures != 0 || @errors != 0
79
+ print "\e[31m" # Red
80
+ elsif @pending != 0
81
+ print "\e[33m" # Yellow
82
+ else
83
+ print "\e[32m" # Green
84
+ end
85
+ puts "Total actual time: #{@total_time}"
86
+ puts "#{@examples} examples, #{@failures} failures, #{@errors} errors, #{@pending} pending, #{sprintf("suite run in %3.3f seconds", @time.real)}"
87
+ # TODO: we need to report pending examples all together
88
+ puts "\e[0m"
89
+ end
90
+ end
91
+ end
4
92
 
5
93
  # Runs specs in all files matching the file pattern.
6
94
  #
@@ -14,36 +102,40 @@ def run_specs(globs, spec_cmd='spec', run_opts = "-c", except = [])
14
102
  require "optparse"
15
103
  require "spec"
16
104
  globs = globs.is_a?(Array) ? globs : [globs]
17
- examples, failures, errors, pending = 0, 0, 0, 0
105
+
106
+ counter = Merb::Counter.new
107
+ forks = 0
18
108
 
19
109
  time = Benchmark.measure do
110
+ pid = nil
20
111
  globs.each do |glob|
21
- (Dir[glob] - except).each do |spec|
22
- STDOUT.puts "\n\nRunning #{spec}...\n"
23
- response = Open3.popen3("#{spec_cmd} #{File.expand_path(spec)} #{run_opts}") do |i,o,e|
24
- while out = o.gets
25
- STDOUT.puts out
26
- STDOUT.flush
27
- if out =~ /\d+ example/
28
- e, f, p = out.match(/(\d+) examples?, (\d+) failures?(?:, (\d+) pending?)?/)[1..-1]
29
- examples += e.to_i; failures += f.to_i; pending += p.to_i
30
- end
112
+ Dir[glob].each do |spec|
113
+ drb_uri = DRb.start_service(nil, counter).uri
114
+ Kernel.fork do
115
+ $VERBOSE = nil
116
+ DRb.stop_service
117
+ DRb.start_service
118
+ counter_client = DRbObject.new_with_uri(drb_uri)
119
+ err, out = StringIO.new, StringIO.new
120
+ def out.tty?() true end
121
+ options = Spec::Runner::OptionParser.parse(%W(#{spec} -fs --color), err, out)
122
+ options.filename_pattern = File.expand_path(spec)
123
+ Spec::Runner::CommandLine.run(options)
124
+ begin
125
+ counter_client.add(spec, out.string, err.string)
126
+ rescue DRb::DRbConnError => e
127
+ puts "#{Process.pid}: Exception caught"
128
+ puts "#{e.class}: #{e.message}"
129
+ retry
31
130
  end
32
- errors += 1 if e.is_a?(IO)
33
- STDOUT.puts e.read if e.is_a?(IO)
131
+ exit
34
132
  end
35
133
  end
134
+ Process.waitall
36
135
  end
37
136
  end
38
-
39
- puts
40
- puts "*** TOTALS ***"
41
- if failures == 0
42
- print "\e[32m"
43
- else
44
- print "\e[31m"
45
- end
46
- puts "#{examples} examples, #{failures} failures, #{errors} errors, #{pending} pending, #{sprintf("suite run in %3.3f seconds", time.real)}"
47
- # TODO: we need to report pending examples all together
48
- print "\e[0m"
49
- end
137
+
138
+ counter.time = time
139
+ counter.report
140
+ exit!
141
+ end
@@ -0,0 +1,181 @@
1
+ require 'spec'
2
+ module Kernel
3
+ def given(*args, &example_group_block)
4
+ args << {} unless Hash === args.last
5
+ params = args.last
6
+
7
+ params[:shared] = true
8
+
9
+ describe(*args) do
10
+ before(:each) do
11
+ self.instance_eval(&example_group_block)
12
+ end
13
+ end
14
+ end
15
+ end
16
+
17
+ module Spec
18
+ module Matchers
19
+ def fail
20
+ raise_error(Spec::Expectations::ExpectationNotMetError)
21
+ end
22
+
23
+ def fail_with(message)
24
+ raise_error(Spec::Expectations::ExpectationNotMetError, message)
25
+ end
26
+ end
27
+ end
28
+
29
+ module Merb
30
+ module Test
31
+ def self.add_helpers(&block)
32
+ if Merb.test_framework == :rspec
33
+ ExampleGroup.class_eval(&block)
34
+ else
35
+ raise NotImplementedError
36
+ end
37
+ end
38
+
39
+ class ExampleGroup < Spec::Example::ExampleGroup
40
+
41
+ include ::Merb::Test::ViewHelper
42
+ include ::Merb::Test::RouteHelper
43
+ include ::Merb::Test::ControllerHelper
44
+
45
+ def initialize(defined_description, &implementation)
46
+ @_defined_description = defined_description
47
+ @_implementation = implementation
48
+ end
49
+
50
+ class << self
51
+ # This is a copy of the method in rspec, so we can have
52
+ # describe "...", :when => "logged in", and the like
53
+ def describe(*args, &example_group_block)
54
+ args << {} unless Hash === args.last
55
+ if example_group_block
56
+ params = args.last
57
+ params[:spec_path] = eval("caller(0)[1]", example_group_block) unless params[:spec_path]
58
+ if params[:shared]
59
+ ::Spec::Example::SharedExampleGroup.new(*args, &example_group_block)
60
+ else
61
+ self.subclass("Subclass") do
62
+ describe(*args)
63
+ if params[:when] || (params[:when] = params[:given])
64
+ module_eval %{it_should_behave_like "#{params[:when]}"}
65
+ end
66
+ module_eval(&example_group_block)
67
+ end
68
+ end
69
+ else
70
+ set_description(*args)
71
+ before_eval
72
+ self
73
+ end
74
+ end
75
+ alias context describe
76
+
77
+ def given(*args, &example_group_block)
78
+ args << {} unless Hash === args.last
79
+ params = args.last
80
+
81
+ params[:shared] = true
82
+
83
+ describe(*args, &example_group_block)
84
+ end
85
+ end
86
+
87
+ ::Spec::Example::ExampleGroupFactory.default(self)
88
+ end
89
+ end
90
+ end
91
+
92
+ module Spec
93
+ module Matchers
94
+
95
+ def self.create(*names, &block)
96
+ @guid ||= 0
97
+ mod = Module.new do
98
+ klass = Class.new(MatcherDSL) do
99
+ def initialize(expected_value)
100
+ @expected_value = expected_value
101
+ end
102
+ end
103
+ klass.class_eval(&block)
104
+
105
+ names.each do |name|
106
+ define_method(name) do |*expected_value|
107
+ # Avoid a warning for the form should foo.
108
+ klass.new(expected_value && expected_value[0])
109
+ end
110
+ end
111
+ end
112
+ Merb::Test::ExampleGroup.send(:include, mod)
113
+ end
114
+
115
+ class MatcherDSL
116
+ include Merb::Test::RouteHelper
117
+
118
+ def self.matches(&block)
119
+ define_method(:matches_proxy, &block)
120
+
121
+ define_method(:matches?) do |object|
122
+ @object = object
123
+ if block.arity == 2
124
+ matches_proxy(@object, @expected_value)
125
+ else
126
+ matches_proxy(@object)
127
+ end
128
+ end
129
+ end
130
+
131
+ def self.expected_value(&block)
132
+ define_method(:transform_expected, &block)
133
+
134
+ define_method(:initialize) do |expected_value|
135
+ @expected_value = transform_expected(expected_value) || expected_value
136
+ end
137
+ end
138
+
139
+ def self.negative_failure_message(&block)
140
+ define_method(:proxy_negative_failure_message, &block)
141
+
142
+ define_method(:negative_failure_message) do
143
+ proxy_negative_failure_message(@object, @expected_value)
144
+ end
145
+ end
146
+
147
+ def self.failure_message(&block)
148
+ define_method(:proxy_failure_message, &block)
149
+
150
+ define_method(:failure_message) do
151
+ proxy_failure_message(@object, @expected_value)
152
+ end
153
+ end
154
+
155
+ def self.message(&block)
156
+ class_eval do
157
+ def failure_message
158
+ generic_message(@object, @expected_value, nil)
159
+ end
160
+
161
+ def negative_failure_message
162
+ generic_message(@object, @expected_value, " not")
163
+ end
164
+ end
165
+
166
+ define_method(:proxy_generic_message, &block)
167
+
168
+ ar = block.arity
169
+
170
+ define_method(:generic_message) do |object, expected, not_string|
171
+ if ar == 3
172
+ proxy_generic_message(not_string, object, expected)
173
+ else
174
+ proxy_generic_message(not_string, object)
175
+ end
176
+ end
177
+ end
178
+ end
179
+
180
+ end
181
+ end
@@ -1,11 +1,3 @@
1
1
  module Merb
2
- VERSION = '0.9.7' unless defined?(Merb::VERSION)
3
-
4
- # Merb::RELEASE meanings:
5
- # 'dev' : unreleased
6
- # 'pre' : pre-release Gem candidates
7
- # nil : released
8
- # You should never check in to trunk with this changed. It should
9
- # stay 'dev'. Change it to nil in release tags.
10
- RELEASE = 'dev' unless defined?(Merb::RELEASE)
2
+ VERSION = '0.9.8' unless defined?(Merb::VERSION)
11
3
  end
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.7
4
+ version: 0.9.8
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-09-14 00:00:00 +03:00
12
+ date: 2008-10-06 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.6
23
+ version: 0.9.7
24
24
  version:
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: erubis
@@ -120,342 +120,8 @@ files:
120
120
  - CHANGELOG
121
121
  - PUBLIC_CHANGELOG
122
122
  - CONTRIBUTORS
123
- - docs/bootloading.dox
124
- - docs/documentation_standards
125
- - docs/merb-core-call-stack-diagram.mmap
126
- - docs/merb-core-call-stack-diagram.pdf
127
- - docs/merb-core-call-stack-diagram.png
128
- - docs/new_render_api
129
123
  - bin/merb
130
124
  - bin/merb-specs
131
- - spec/private
132
- - spec/private/config
133
- - spec/private/config/adapter_spec.rb
134
- - spec/private/config/config_spec.rb
135
- - spec/private/config/environment_spec.rb
136
- - spec/private/config/merb_spec.rb
137
- - spec/private/config/spec_helper.rb
138
- - spec/private/core_ext
139
- - spec/private/core_ext/kernel_spec.rb
140
- - spec/private/dispatch
141
- - spec/private/dispatch/bootloader_spec.rb
142
- - spec/private/dispatch/fixture
143
- - spec/private/dispatch/fixture/app
144
- - spec/private/dispatch/fixture/app/controllers
145
- - spec/private/dispatch/fixture/app/controllers/application.rb
146
- - spec/private/dispatch/fixture/app/controllers/exceptions.rb
147
- - spec/private/dispatch/fixture/app/controllers/foo.rb
148
- - spec/private/dispatch/fixture/app/helpers
149
- - spec/private/dispatch/fixture/app/helpers/global_helpers.rb
150
- - spec/private/dispatch/fixture/app/views
151
- - spec/private/dispatch/fixture/app/views/exeptions
152
- - spec/private/dispatch/fixture/app/views/exeptions/client_error.html.erb
153
- - spec/private/dispatch/fixture/app/views/exeptions/internal_server_error.html.erb
154
- - spec/private/dispatch/fixture/app/views/exeptions/not_acceptable.html.erb
155
- - spec/private/dispatch/fixture/app/views/exeptions/not_found.html.erb
156
- - spec/private/dispatch/fixture/app/views/foo
157
- - spec/private/dispatch/fixture/app/views/foo/bar.html.erb
158
- - spec/private/dispatch/fixture/app/views/layout
159
- - spec/private/dispatch/fixture/app/views/layout/application.html.erb
160
- - spec/private/dispatch/fixture/config
161
- - spec/private/dispatch/fixture/config/black_hole.rb
162
- - spec/private/dispatch/fixture/config/environments
163
- - spec/private/dispatch/fixture/config/environments/development.rb
164
- - spec/private/dispatch/fixture/config/environments/production.rb
165
- - spec/private/dispatch/fixture/config/environments/test.rb
166
- - spec/private/dispatch/fixture/config/init.rb
167
- - spec/private/dispatch/fixture/config/rack.rb
168
- - spec/private/dispatch/fixture/config/router.rb
169
- - spec/private/dispatch/fixture/log
170
- - spec/private/dispatch/fixture/log/merb_test.log
171
- - spec/private/dispatch/fixture/public
172
- - spec/private/dispatch/fixture/public/images
173
- - spec/private/dispatch/fixture/public/images/merb.jpg
174
- - spec/private/dispatch/fixture/public/merb.fcgi
175
- - spec/private/dispatch/fixture/public/stylesheets
176
- - spec/private/dispatch/fixture/public/stylesheets/master.css
177
- - spec/private/dispatch/route_params_spec.rb
178
- - spec/private/dispatch/spec_helper.rb
179
- - spec/private/router
180
- - spec/private/router/behavior_spec.rb
181
- - spec/private/router/fixture
182
- - spec/private/router/fixture/log
183
- - spec/private/router/fixture/log/merb_test.log
184
- - spec/private/router/route_spec.rb
185
- - spec/private/router/router_spec.rb
186
- - spec/private/vendor
187
- - spec/private/vendor/facets
188
- - spec/private/vendor/facets/plural_spec.rb
189
- - spec/private/vendor/facets/singular_spec.rb
190
- - spec/public
191
- - spec/public/abstract_controller
192
- - spec/public/abstract_controller/controllers
193
- - spec/public/abstract_controller/controllers/alt_views
194
- - spec/public/abstract_controller/controllers/alt_views/layout
195
- - spec/public/abstract_controller/controllers/alt_views/layout/application.erb
196
- - spec/public/abstract_controller/controllers/alt_views/layout/merb
197
- - spec/public/abstract_controller/controllers/alt_views/layout/merb/test
198
- - spec/public/abstract_controller/controllers/alt_views/layout/merb/test/fixtures
199
- - spec/public/abstract_controller/controllers/alt_views/layout/merb/test/fixtures/abstract
200
- - spec/public/abstract_controller/controllers/alt_views/layout/merb/test/fixtures/abstract/render_string_controller_layout.erb
201
- - spec/public/abstract_controller/controllers/alt_views/layout/merb/test/fixtures/abstract/render_template_controller_layout.erb
202
- - spec/public/abstract_controller/controllers/alt_views/merb
203
- - spec/public/abstract_controller/controllers/alt_views/merb/test
204
- - spec/public/abstract_controller/controllers/alt_views/merb/test/fixtures
205
- - spec/public/abstract_controller/controllers/alt_views/merb/test/fixtures/abstract
206
- - spec/public/abstract_controller/controllers/alt_views/merb/test/fixtures/abstract/display_object_with_multiple_roots
207
- - spec/public/abstract_controller/controllers/alt_views/merb/test/fixtures/abstract/display_object_with_multiple_roots/index.erb
208
- - spec/public/abstract_controller/controllers/alt_views/merb/test/fixtures/abstract/display_object_with_multiple_roots/show.erb
209
- - spec/public/abstract_controller/controllers/alt_views/merb/test/fixtures/abstract/render_template_multiple_roots
210
- - spec/public/abstract_controller/controllers/alt_views/merb/test/fixtures/abstract/render_template_multiple_roots/index.erb
211
- - spec/public/abstract_controller/controllers/alt_views/partial
212
- - spec/public/abstract_controller/controllers/alt_views/partial/basic_partial_with_multiple_roots
213
- - spec/public/abstract_controller/controllers/alt_views/partial/basic_partial_with_multiple_roots/_partial.erb
214
- - spec/public/abstract_controller/controllers/alt_views/render_template_multiple_roots_and_custom_location
215
- - spec/public/abstract_controller/controllers/alt_views/render_template_multiple_roots_and_custom_location/index.erb
216
- - spec/public/abstract_controller/controllers/alt_views/render_template_multiple_roots_inherited
217
- - spec/public/abstract_controller/controllers/alt_views/render_template_multiple_roots_inherited/index.erb
218
- - spec/public/abstract_controller/controllers/cousins.rb
219
- - spec/public/abstract_controller/controllers/display.rb
220
- - spec/public/abstract_controller/controllers/filters.rb
221
- - spec/public/abstract_controller/controllers/helpers.rb
222
- - spec/public/abstract_controller/controllers/partial.rb
223
- - spec/public/abstract_controller/controllers/render.rb
224
- - spec/public/abstract_controller/controllers/views
225
- - spec/public/abstract_controller/controllers/views/helpers
226
- - spec/public/abstract_controller/controllers/views/helpers/capture
227
- - spec/public/abstract_controller/controllers/views/helpers/capture/index.erb
228
- - spec/public/abstract_controller/controllers/views/helpers/capture_eq
229
- - spec/public/abstract_controller/controllers/views/helpers/capture_eq/index.erb
230
- - spec/public/abstract_controller/controllers/views/helpers/capture_with_args
231
- - spec/public/abstract_controller/controllers/views/helpers/capture_with_args/index.erb
232
- - spec/public/abstract_controller/controllers/views/helpers/concat
233
- - spec/public/abstract_controller/controllers/views/helpers/concat/index.erb
234
- - spec/public/abstract_controller/controllers/views/layout
235
- - spec/public/abstract_controller/controllers/views/layout/alt.erb
236
- - spec/public/abstract_controller/controllers/views/layout/custom.erb
237
- - spec/public/abstract_controller/controllers/views/merb
238
- - spec/public/abstract_controller/controllers/views/merb/test
239
- - spec/public/abstract_controller/controllers/views/merb/test/fixtures
240
- - spec/public/abstract_controller/controllers/views/merb/test/fixtures/abstract
241
- - spec/public/abstract_controller/controllers/views/merb/test/fixtures/abstract/display_object
242
- - spec/public/abstract_controller/controllers/views/merb/test/fixtures/abstract/display_object/index.erb
243
- - spec/public/abstract_controller/controllers/views/merb/test/fixtures/abstract/display_object_with_action
244
- - spec/public/abstract_controller/controllers/views/merb/test/fixtures/abstract/display_object_with_action/new.erb
245
- - spec/public/abstract_controller/controllers/views/merb/test/fixtures/abstract/render_template
246
- - spec/public/abstract_controller/controllers/views/merb/test/fixtures/abstract/render_template/index.erb
247
- - spec/public/abstract_controller/controllers/views/merb/test/fixtures/abstract/render_template_app_layout
248
- - spec/public/abstract_controller/controllers/views/merb/test/fixtures/abstract/render_template_app_layout/index.erb
249
- - spec/public/abstract_controller/controllers/views/merb/test/fixtures/abstract/render_template_custom_layout
250
- - spec/public/abstract_controller/controllers/views/merb/test/fixtures/abstract/render_template_custom_layout/index.erb
251
- - spec/public/abstract_controller/controllers/views/merb/test/fixtures/abstract/render_template_multiple_roots
252
- - spec/public/abstract_controller/controllers/views/merb/test/fixtures/abstract/render_template_multiple_roots/index.erb
253
- - spec/public/abstract_controller/controllers/views/merb/test/fixtures/abstract/render_template_multiple_roots/show.erb
254
- - spec/public/abstract_controller/controllers/views/merb/test/fixtures/abstract/render_two_throw_contents
255
- - spec/public/abstract_controller/controllers/views/merb/test/fixtures/abstract/render_two_throw_contents/index.erb
256
- - spec/public/abstract_controller/controllers/views/partial
257
- - spec/public/abstract_controller/controllers/views/partial/another_directory
258
- - spec/public/abstract_controller/controllers/views/partial/another_directory/_partial.erb
259
- - spec/public/abstract_controller/controllers/views/partial/basic_partial
260
- - spec/public/abstract_controller/controllers/views/partial/basic_partial/_partial.erb
261
- - spec/public/abstract_controller/controllers/views/partial/basic_partial/index.erb
262
- - spec/public/abstract_controller/controllers/views/partial/basic_partial_with_multiple_roots
263
- - spec/public/abstract_controller/controllers/views/partial/basic_partial_with_multiple_roots/index.erb
264
- - spec/public/abstract_controller/controllers/views/partial/nested_partial
265
- - spec/public/abstract_controller/controllers/views/partial/nested_partial/_first.erb
266
- - spec/public/abstract_controller/controllers/views/partial/nested_partial/_second.erb
267
- - spec/public/abstract_controller/controllers/views/partial/nested_partial/index.erb
268
- - spec/public/abstract_controller/controllers/views/partial/partial_in_another_directory
269
- - spec/public/abstract_controller/controllers/views/partial/partial_in_another_directory/index.erb
270
- - spec/public/abstract_controller/controllers/views/partial/partial_with_both
271
- - spec/public/abstract_controller/controllers/views/partial/partial_with_both/_collection.erb
272
- - spec/public/abstract_controller/controllers/views/partial/partial_with_both/index.erb
273
- - spec/public/abstract_controller/controllers/views/partial/partial_with_collections
274
- - spec/public/abstract_controller/controllers/views/partial/partial_with_collections/_collection.erb
275
- - spec/public/abstract_controller/controllers/views/partial/partial_with_collections/index.erb
276
- - spec/public/abstract_controller/controllers/views/partial/partial_with_collections_and_as
277
- - spec/public/abstract_controller/controllers/views/partial/partial_with_collections_and_as/_collection.erb
278
- - spec/public/abstract_controller/controllers/views/partial/partial_with_collections_and_as/index.erb
279
- - spec/public/abstract_controller/controllers/views/partial/partial_with_collections_and_counter
280
- - spec/public/abstract_controller/controllers/views/partial/partial_with_collections_and_counter/_collection.erb
281
- - spec/public/abstract_controller/controllers/views/partial/partial_with_collections_and_counter/index.erb
282
- - spec/public/abstract_controller/controllers/views/partial/partial_with_locals
283
- - spec/public/abstract_controller/controllers/views/partial/partial_with_locals/_variables.erb
284
- - spec/public/abstract_controller/controllers/views/partial/partial_with_locals/index.erb
285
- - spec/public/abstract_controller/controllers/views/partial/partial_with_with_and_locals
286
- - spec/public/abstract_controller/controllers/views/partial/partial_with_with_and_locals/_both.erb
287
- - spec/public/abstract_controller/controllers/views/partial/partial_with_with_and_locals/index.erb
288
- - spec/public/abstract_controller/controllers/views/partial/with_absolute_partial
289
- - spec/public/abstract_controller/controllers/views/partial/with_absolute_partial/_partial.erb
290
- - spec/public/abstract_controller/controllers/views/partial/with_absolute_partial/index.erb
291
- - spec/public/abstract_controller/controllers/views/partial/with_as_partial
292
- - spec/public/abstract_controller/controllers/views/partial/with_as_partial/_with_partial.erb
293
- - spec/public/abstract_controller/controllers/views/partial/with_as_partial/index.erb
294
- - spec/public/abstract_controller/controllers/views/partial/with_nil_partial
295
- - spec/public/abstract_controller/controllers/views/partial/with_nil_partial/_with_partial.erb
296
- - spec/public/abstract_controller/controllers/views/partial/with_nil_partial/index.erb
297
- - spec/public/abstract_controller/controllers/views/partial/with_partial
298
- - spec/public/abstract_controller/controllers/views/partial/with_partial/_with_partial.erb
299
- - spec/public/abstract_controller/controllers/views/partial/with_partial/index.erb
300
- - spec/public/abstract_controller/controllers/views/test_display
301
- - spec/public/abstract_controller/controllers/views/test_display/foo.html.erb
302
- - spec/public/abstract_controller/controllers/views/test_render
303
- - spec/public/abstract_controller/controllers/views/test_render/foo.html.erb
304
- - spec/public/abstract_controller/controllers/views/wonderful
305
- - spec/public/abstract_controller/controllers/views/wonderful/index.erb
306
- - spec/public/abstract_controller/display_spec.rb
307
- - spec/public/abstract_controller/filter_spec.rb
308
- - spec/public/abstract_controller/helper_spec.rb
309
- - spec/public/abstract_controller/partial_spec.rb
310
- - spec/public/abstract_controller/render_spec.rb
311
- - spec/public/abstract_controller/spec_helper.rb
312
- - spec/public/boot_loader
313
- - spec/public/boot_loader/boot_loader_spec.rb
314
- - spec/public/boot_loader/spec_helper.rb
315
- - spec/public/controller
316
- - spec/public/controller/authentication_spec.rb
317
- - spec/public/controller/base_spec.rb
318
- - spec/public/controller/conditional_get_spec.rb
319
- - spec/public/controller/config
320
- - spec/public/controller/config/init.rb
321
- - spec/public/controller/controllers
322
- - spec/public/controller/controllers/authentication.rb
323
- - spec/public/controller/controllers/base.rb
324
- - spec/public/controller/controllers/conditional_get.rb
325
- - spec/public/controller/controllers/cookies.rb
326
- - spec/public/controller/controllers/dispatcher.rb
327
- - spec/public/controller/controllers/display.rb
328
- - spec/public/controller/controllers/redirect.rb
329
- - spec/public/controller/controllers/responder.rb
330
- - spec/public/controller/controllers/url.rb
331
- - spec/public/controller/controllers/views
332
- - spec/public/controller/controllers/views/layout
333
- - spec/public/controller/controllers/views/layout/custom.html.erb
334
- - spec/public/controller/controllers/views/layout/custom_arg.html.erb
335
- - spec/public/controller/controllers/views/layout/custom_arg.json.erb
336
- - spec/public/controller/controllers/views/merb
337
- - spec/public/controller/controllers/views/merb/test
338
- - spec/public/controller/controllers/views/merb/test/fixtures
339
- - spec/public/controller/controllers/views/merb/test/fixtures/controllers
340
- - spec/public/controller/controllers/views/merb/test/fixtures/controllers/class_and_local_provides
341
- - spec/public/controller/controllers/views/merb/test/fixtures/controllers/class_and_local_provides/index.html.erb
342
- - spec/public/controller/controllers/views/merb/test/fixtures/controllers/class_and_local_provides/index.xml.erb
343
- - spec/public/controller/controllers/views/merb/test/fixtures/controllers/class_provides
344
- - spec/public/controller/controllers/views/merb/test/fixtures/controllers/class_provides/index.html.erb
345
- - spec/public/controller/controllers/views/merb/test/fixtures/controllers/class_provides/index.xml.erb
346
- - spec/public/controller/controllers/views/merb/test/fixtures/controllers/display_with_template
347
- - spec/public/controller/controllers/views/merb/test/fixtures/controllers/display_with_template/index.html.erb
348
- - spec/public/controller/controllers/views/merb/test/fixtures/controllers/display_with_template/no_layout.html.erb
349
- - spec/public/controller/controllers/views/merb/test/fixtures/controllers/display_with_template_argument
350
- - spec/public/controller/controllers/views/merb/test/fixtures/controllers/display_with_template_argument/index.html.erb
351
- - spec/public/controller/controllers/views/merb/test/fixtures/controllers/html_default
352
- - spec/public/controller/controllers/views/merb/test/fixtures/controllers/html_default/index.html.erb
353
- - spec/public/controller/controllers/views/merb/test/fixtures/controllers/layout
354
- - spec/public/controller/controllers/views/merb/test/fixtures/controllers/layout/custom.html.erb
355
- - spec/public/controller/controllers/views/merb/test/fixtures/controllers/local_provides
356
- - spec/public/controller/controllers/views/merb/test/fixtures/controllers/local_provides/index.html.erb
357
- - spec/public/controller/controllers/views/merb/test/fixtures/controllers/local_provides/index.xml.erb
358
- - spec/public/controller/controllers/views/merb/test/fixtures/controllers/multi_provides
359
- - spec/public/controller/controllers/views/merb/test/fixtures/controllers/multi_provides/index.html.erb
360
- - spec/public/controller/controllers/views/merb/test/fixtures/controllers/multi_provides/index.js.erb
361
- - spec/public/controller/cookies_spec.rb
362
- - spec/public/controller/dispatcher_spec.rb
363
- - spec/public/controller/display_spec.rb
364
- - spec/public/controller/redirect_spec.rb
365
- - spec/public/controller/responder_spec.rb
366
- - spec/public/controller/spec_helper.rb
367
- - spec/public/controller/url_spec.rb
368
- - spec/public/core
369
- - spec/public/core/merb_core_spec.rb
370
- - spec/public/core_ext
371
- - spec/public/core_ext/fixtures
372
- - spec/public/core_ext/fixtures/core_ext_dependency.rb
373
- - spec/public/core_ext/kernel_spec.rb
374
- - spec/public/core_ext/spec_helper.rb
375
- - spec/public/DEFINITIONS
376
- - spec/public/directory_structure
377
- - spec/public/directory_structure/directory
378
- - spec/public/directory_structure/directory/app
379
- - spec/public/directory_structure/directory/app/controllers
380
- - spec/public/directory_structure/directory/app/controllers/application.rb
381
- - spec/public/directory_structure/directory/app/controllers/base.rb
382
- - spec/public/directory_structure/directory/app/controllers/custom.rb
383
- - spec/public/directory_structure/directory/app/views
384
- - spec/public/directory_structure/directory/app/views/base
385
- - spec/public/directory_structure/directory/app/views/base/template.html.erb
386
- - spec/public/directory_structure/directory/app/views/wonderful
387
- - spec/public/directory_structure/directory/app/views/wonderful/template.erb
388
- - spec/public/directory_structure/directory/config
389
- - spec/public/directory_structure/directory/config/router.rb
390
- - spec/public/directory_structure/directory/log
391
- - spec/public/directory_structure/directory/log/merb_test.log
392
- - spec/public/directory_structure/directory_spec.rb
393
- - spec/public/logger
394
- - spec/public/logger/logger_spec.rb
395
- - spec/public/logger/spec_helper.rb
396
- - spec/public/rack
397
- - spec/public/rack/conditinal_get_middleware_spec.rb
398
- - spec/public/rack/csrf_middleware_spec.rb
399
- - spec/public/rack/rack_middleware_spec.rb
400
- - spec/public/rack/shared_example_groups.rb
401
- - spec/public/reloading
402
- - spec/public/reloading/directory
403
- - spec/public/reloading/directory/app
404
- - spec/public/reloading/directory/app/controllers
405
- - spec/public/reloading/directory/app/controllers/application.rb
406
- - spec/public/reloading/directory/app/controllers/reload.rb
407
- - spec/public/reloading/directory/config
408
- - spec/public/reloading/directory/config/init.rb
409
- - spec/public/reloading/directory/log
410
- - spec/public/reloading/directory/log/merb_test.log
411
- - spec/public/reloading/reload_spec.rb
412
- - spec/public/request
413
- - spec/public/request/multipart_spec.rb
414
- - spec/public/request/request_spec.rb
415
- - spec/public/router
416
- - spec/public/router/default_spec.rb
417
- - spec/public/router/deferred_spec.rb
418
- - spec/public/router/fixation_spec.rb
419
- - spec/public/router/fixture
420
- - spec/public/router/fixture/log
421
- - spec/public/router/fixture/log/merb_test.log
422
- - spec/public/router/namespace_spec.rb
423
- - spec/public/router/nested_matches_spec.rb
424
- - spec/public/router/nested_resources_spec.rb
425
- - spec/public/router/resource_spec.rb
426
- - spec/public/router/resources_spec.rb
427
- - spec/public/router/spec_helper.rb
428
- - spec/public/router/special_spec.rb
429
- - spec/public/router/string_spec.rb
430
- - spec/public/session
431
- - spec/public/session/controllers
432
- - spec/public/session/controllers/sessions.rb
433
- - spec/public/session/cookie_session_spec.rb
434
- - spec/public/session/memcached_session_spec.rb
435
- - spec/public/session/memory_session_spec.rb
436
- - spec/public/session/multiple_sessions_spec.rb
437
- - spec/public/session/no_session_spec.rb
438
- - spec/public/session/session_spec.rb
439
- - spec/public/template
440
- - spec/public/template/template_spec.rb
441
- - spec/public/template/templates
442
- - spec/public/template/templates/error.html.erb
443
- - spec/public/template/templates/template.html.erb
444
- - spec/public/template/templates/template.html.myt
445
- - spec/public/test
446
- - spec/public/test/controller_matchers_spec.rb
447
- - spec/public/test/controllers
448
- - spec/public/test/controllers/controller_assertion_mock.rb
449
- - spec/public/test/controllers/dispatch_controller.rb
450
- - spec/public/test/controllers/spec_helper_controller.rb
451
- - spec/public/test/multipart_request_helper_spec.rb
452
- - spec/public/test/multipart_upload_text_file.txt
453
- - spec/public/test/request_helper_spec.rb
454
- - spec/public/test/route_helper_spec.rb
455
- - spec/public/test/route_matchers_spec.rb
456
- - spec/public/test/view_helper_spec.rb
457
- - spec/public/test/view_matchers_spec.rb
458
- - spec/spec_helper.rb
459
125
  - lib/merb-core
460
126
  - lib/merb-core/autoload.rb
461
127
  - lib/merb-core/bootloader.rb
@@ -490,6 +156,7 @@ files:
490
156
  - lib/merb-core/dispatch/router
491
157
  - lib/merb-core/dispatch/router/behavior.rb
492
158
  - lib/merb-core/dispatch/router/cached_proc.rb
159
+ - lib/merb-core/dispatch/router/resources.rb
493
160
  - lib/merb-core/dispatch/router/route.rb
494
161
  - lib/merb-core/dispatch/router.rb
495
162
  - lib/merb-core/dispatch/session
@@ -506,6 +173,7 @@ files:
506
173
  - lib/merb-core/plugins.rb
507
174
  - lib/merb-core/rack
508
175
  - lib/merb-core/rack/adapter
176
+ - lib/merb-core/rack/adapter/abstract.rb
509
177
  - lib/merb-core/rack/adapter/ebb.rb
510
178
  - lib/merb-core/rack/adapter/evented_mongrel.rb
511
179
  - lib/merb-core/rack/adapter/fcgi.rb
@@ -529,16 +197,19 @@ files:
529
197
  - lib/merb-core/rack/middleware/static.rb
530
198
  - lib/merb-core/rack/middleware/tracer.rb
531
199
  - lib/merb-core/rack/middleware.rb
200
+ - lib/merb-core/rack/stream_wrapper.rb
532
201
  - lib/merb-core/rack.rb
533
202
  - lib/merb-core/server.rb
534
203
  - lib/merb-core/tasks
535
204
  - lib/merb-core/tasks/audit.rake
205
+ - lib/merb-core/tasks/gem_management.rb
536
206
  - lib/merb-core/tasks/merb.rb
537
207
  - lib/merb-core/tasks/merb_rake_helper.rb
538
208
  - lib/merb-core/tasks/stats.rake
539
209
  - lib/merb-core/test
540
210
  - lib/merb-core/test/helpers
541
211
  - lib/merb-core/test/helpers/controller_helper.rb
212
+ - lib/merb-core/test/helpers/mock_request_helper.rb
542
213
  - lib/merb-core/test/helpers/multipart_request_helper.rb
543
214
  - lib/merb-core/test/helpers/request_helper.rb
544
215
  - lib/merb-core/test/helpers/route_helper.rb
@@ -546,6 +217,7 @@ files:
546
217
  - lib/merb-core/test/helpers.rb
547
218
  - lib/merb-core/test/matchers
548
219
  - lib/merb-core/test/matchers/controller_matchers.rb
220
+ - lib/merb-core/test/matchers/request_matchers.rb
549
221
  - lib/merb-core/test/matchers/route_matchers.rb
550
222
  - lib/merb-core/test/matchers/view_matchers.rb
551
223
  - lib/merb-core/test/matchers.rb
@@ -555,13 +227,9 @@ files:
555
227
  - lib/merb-core/test/test_ext
556
228
  - lib/merb-core/test/test_ext/hpricot.rb
557
229
  - lib/merb-core/test/test_ext/object.rb
230
+ - lib/merb-core/test/test_ext/rspec.rb
558
231
  - lib/merb-core/test/test_ext/string.rb
559
232
  - lib/merb-core/test.rb
560
- - lib/merb-core/vendor
561
- - lib/merb-core/vendor/facets
562
- - lib/merb-core/vendor/facets/dictionary.rb
563
- - lib/merb-core/vendor/facets/inflect.rb
564
- - lib/merb-core/vendor/facets.rb
565
233
  - lib/merb-core/version.rb
566
234
  - lib/merb-core.rb
567
235
  has_rdoc: true