putio 0.0.1.pre

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 (527) hide show
  1. data/.gitignore +2 -0
  2. data/Gemfile +3 -0
  3. data/Gemfile.lock +27 -0
  4. data/Rakefile +21 -0
  5. data/Readme.md +32 -0
  6. data/development/ruby/1.8/bin/convert_to_should_syntax +19 -0
  7. data/development/ruby/1.8/bin/edit_json.rb +19 -0
  8. data/development/ruby/1.8/bin/prettify_json.rb +19 -0
  9. data/development/ruby/1.8/cache/crack-0.1.8.gem +0 -0
  10. data/development/ruby/1.8/cache/fakeweb-1.3.0.gem +0 -0
  11. data/development/ruby/1.8/cache/hashie-0.4.0.gem +0 -0
  12. data/development/ruby/1.8/cache/json-1.4.6.gem +0 -0
  13. data/development/ruby/1.8/cache/omg-0.0.6.gem +0 -0
  14. data/development/ruby/1.8/cache/shoulda-2.11.3.gem +0 -0
  15. data/development/ruby/1.8/gems/crack-0.1.8/.gitignore +6 -0
  16. data/development/ruby/1.8/gems/crack-0.1.8/History +25 -0
  17. data/development/ruby/1.8/gems/crack-0.1.8/LICENSE +20 -0
  18. data/development/ruby/1.8/gems/crack-0.1.8/README.rdoc +42 -0
  19. data/development/ruby/1.8/gems/crack-0.1.8/Rakefile +52 -0
  20. data/development/ruby/1.8/gems/crack-0.1.8/crack.gemspec +63 -0
  21. data/development/ruby/1.8/gems/crack-0.1.8/lib/crack/core_extensions.rb +128 -0
  22. data/development/ruby/1.8/gems/crack-0.1.8/lib/crack/json.rb +68 -0
  23. data/development/ruby/1.8/gems/crack-0.1.8/lib/crack/xml.rb +214 -0
  24. data/development/ruby/1.8/gems/crack-0.1.8/lib/crack.rb +8 -0
  25. data/development/ruby/1.8/gems/crack-0.1.8/test/crack_test.rb +4 -0
  26. data/development/ruby/1.8/gems/crack-0.1.8/test/data/twittersearch-firefox.json +1 -0
  27. data/development/ruby/1.8/gems/crack-0.1.8/test/data/twittersearch-ie.json +1 -0
  28. data/development/ruby/1.8/gems/crack-0.1.8/test/hash_test.rb +56 -0
  29. data/development/ruby/1.8/gems/crack-0.1.8/test/json_test.rb +69 -0
  30. data/development/ruby/1.8/gems/crack-0.1.8/test/string_test.rb +31 -0
  31. data/development/ruby/1.8/gems/crack-0.1.8/test/test_helper.rb +12 -0
  32. data/development/ruby/1.8/gems/crack-0.1.8/test/xml_test.rb +489 -0
  33. data/development/ruby/1.8/gems/fakeweb-1.3.0/.autotest +5 -0
  34. data/development/ruby/1.8/gems/fakeweb-1.3.0/.gitignore +7 -0
  35. data/development/ruby/1.8/gems/fakeweb-1.3.0/CHANGELOG +215 -0
  36. data/development/ruby/1.8/gems/fakeweb-1.3.0/LICENSE.txt +19 -0
  37. data/development/ruby/1.8/gems/fakeweb-1.3.0/README.rdoc +189 -0
  38. data/development/ruby/1.8/gems/fakeweb-1.3.0/Rakefile +67 -0
  39. data/development/ruby/1.8/gems/fakeweb-1.3.0/fakeweb.gemspec +126 -0
  40. data/development/ruby/1.8/gems/fakeweb-1.3.0/lib/fake_web/ext/net_http.rb +72 -0
  41. data/development/ruby/1.8/gems/fakeweb-1.3.0/lib/fake_web/registry.rb +127 -0
  42. data/development/ruby/1.8/gems/fakeweb-1.3.0/lib/fake_web/responder.rb +122 -0
  43. data/development/ruby/1.8/gems/fakeweb-1.3.0/lib/fake_web/response.rb +10 -0
  44. data/development/ruby/1.8/gems/fakeweb-1.3.0/lib/fake_web/stub_socket.rb +15 -0
  45. data/development/ruby/1.8/gems/fakeweb-1.3.0/lib/fake_web/utility.rb +87 -0
  46. data/development/ruby/1.8/gems/fakeweb-1.3.0/lib/fake_web.rb +215 -0
  47. data/development/ruby/1.8/gems/fakeweb-1.3.0/lib/fakeweb.rb +2 -0
  48. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/fixtures/google_response_from_curl +12 -0
  49. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/fixtures/google_response_with_transfer_encoding +17 -0
  50. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/fixtures/google_response_without_transfer_encoding +11 -0
  51. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/fixtures/test_example.txt +1 -0
  52. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/fixtures/test_txt_file +3 -0
  53. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/test_allow_net_connect.rb +168 -0
  54. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/test_deprecations.rb +54 -0
  55. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/test_fake_authentication.rb +92 -0
  56. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/test_fake_web.rb +590 -0
  57. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/test_fake_web_open_uri.rb +58 -0
  58. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/test_helper.rb +90 -0
  59. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/test_last_request.rb +29 -0
  60. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/test_missing_open_uri.rb +25 -0
  61. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/test_missing_pathname.rb +37 -0
  62. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/test_other_net_http_libraries.rb +36 -0
  63. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/test_precedence.rb +79 -0
  64. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/test_query_string.rb +45 -0
  65. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/test_regexes.rb +157 -0
  66. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/test_response_headers.rb +79 -0
  67. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/test_trailing_slashes.rb +53 -0
  68. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/test_utility.rb +83 -0
  69. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/vendor/right_http_connection-1.2.4/History.txt +59 -0
  70. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/vendor/right_http_connection-1.2.4/Manifest.txt +7 -0
  71. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/vendor/right_http_connection-1.2.4/README.txt +54 -0
  72. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/vendor/right_http_connection-1.2.4/Rakefile +103 -0
  73. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/vendor/right_http_connection-1.2.4/lib/net_fix.rb +160 -0
  74. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/vendor/right_http_connection-1.2.4/lib/right_http_connection.rb +435 -0
  75. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/vendor/right_http_connection-1.2.4/setup.rb +1585 -0
  76. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/vendor/samuel-0.2.1/.document +5 -0
  77. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/vendor/samuel-0.2.1/.gitignore +5 -0
  78. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/vendor/samuel-0.2.1/LICENSE +20 -0
  79. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/vendor/samuel-0.2.1/README.rdoc +70 -0
  80. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/vendor/samuel-0.2.1/Rakefile +62 -0
  81. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/vendor/samuel-0.2.1/VERSION +1 -0
  82. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/vendor/samuel-0.2.1/lib/samuel/net_http.rb +10 -0
  83. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/vendor/samuel-0.2.1/lib/samuel/request.rb +96 -0
  84. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/vendor/samuel-0.2.1/lib/samuel.rb +52 -0
  85. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/vendor/samuel-0.2.1/samuel.gemspec +69 -0
  86. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/vendor/samuel-0.2.1/test/request_test.rb +193 -0
  87. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/vendor/samuel-0.2.1/test/samuel_test.rb +42 -0
  88. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/vendor/samuel-0.2.1/test/test_helper.rb +66 -0
  89. data/development/ruby/1.8/gems/fakeweb-1.3.0/test/vendor/samuel-0.2.1/test/thread_test.rb +32 -0
  90. data/development/ruby/1.8/gems/hashie-0.4.0/.document +5 -0
  91. data/development/ruby/1.8/gems/hashie-0.4.0/.gitignore +7 -0
  92. data/development/ruby/1.8/gems/hashie-0.4.0/Gemfile +12 -0
  93. data/development/ruby/1.8/gems/hashie-0.4.0/Gemfile.lock +24 -0
  94. data/development/ruby/1.8/gems/hashie-0.4.0/LICENSE +20 -0
  95. data/development/ruby/1.8/gems/hashie-0.4.0/README.rdoc +119 -0
  96. data/development/ruby/1.8/gems/hashie-0.4.0/Rakefile +47 -0
  97. data/development/ruby/1.8/gems/hashie-0.4.0/VERSION +1 -0
  98. data/development/ruby/1.8/gems/hashie-0.4.0/hashie.gemspec +71 -0
  99. data/development/ruby/1.8/gems/hashie-0.4.0/lib/hashie/clash.rb +86 -0
  100. data/development/ruby/1.8/gems/hashie-0.4.0/lib/hashie/dash.rb +111 -0
  101. data/development/ruby/1.8/gems/hashie-0.4.0/lib/hashie/hash.rb +24 -0
  102. data/development/ruby/1.8/gems/hashie-0.4.0/lib/hashie/hash_extensions.rb +49 -0
  103. data/development/ruby/1.8/gems/hashie-0.4.0/lib/hashie/mash.rb +178 -0
  104. data/development/ruby/1.8/gems/hashie-0.4.0/lib/hashie/trash.rb +55 -0
  105. data/development/ruby/1.8/gems/hashie-0.4.0/lib/hashie.rb +9 -0
  106. data/development/ruby/1.8/gems/hashie-0.4.0/spec/hashie/clash_spec.rb +42 -0
  107. data/development/ruby/1.8/gems/hashie-0.4.0/spec/hashie/dash_spec.rb +156 -0
  108. data/development/ruby/1.8/gems/hashie-0.4.0/spec/hashie/hash_spec.rb +22 -0
  109. data/development/ruby/1.8/gems/hashie-0.4.0/spec/hashie/mash_spec.rb +241 -0
  110. data/development/ruby/1.8/gems/hashie-0.4.0/spec/hashie/trash_spec.rb +70 -0
  111. data/development/ruby/1.8/gems/hashie-0.4.0/spec/spec.opts +3 -0
  112. data/development/ruby/1.8/gems/hashie-0.4.0/spec/spec_helper.rb +13 -0
  113. data/development/ruby/1.8/gems/json-1.4.6/.require_paths +4 -0
  114. data/development/ruby/1.8/gems/json-1.4.6/CHANGES +179 -0
  115. data/development/ruby/1.8/gems/json-1.4.6/COPYING +58 -0
  116. data/development/ruby/1.8/gems/json-1.4.6/GPL +340 -0
  117. data/development/ruby/1.8/gems/json-1.4.6/README +356 -0
  118. data/development/ruby/1.8/gems/json-1.4.6/Rakefile +292 -0
  119. data/development/ruby/1.8/gems/json-1.4.6/TODO +1 -0
  120. data/development/ruby/1.8/gems/json-1.4.6/VERSION +1 -0
  121. data/development/ruby/1.8/gems/json-1.4.6/benchmarks/data-p4-3GHz-ruby18/GeneratorBenchmarkComparison.log +52 -0
  122. data/development/ruby/1.8/gems/json-1.4.6/benchmarks/data-p4-3GHz-ruby18/GeneratorBenchmarkExt#generator_fast-autocorrelation.dat +1000 -0
  123. data/development/ruby/1.8/gems/json-1.4.6/benchmarks/data-p4-3GHz-ruby18/GeneratorBenchmarkExt#generator_fast.dat +1001 -0
  124. data/development/ruby/1.8/gems/json-1.4.6/benchmarks/data-p4-3GHz-ruby18/GeneratorBenchmarkExt#generator_pretty-autocorrelation.dat +900 -0
  125. data/development/ruby/1.8/gems/json-1.4.6/benchmarks/data-p4-3GHz-ruby18/GeneratorBenchmarkExt#generator_pretty.dat +901 -0
  126. data/development/ruby/1.8/gems/json-1.4.6/benchmarks/data-p4-3GHz-ruby18/GeneratorBenchmarkExt#generator_safe-autocorrelation.dat +1000 -0
  127. data/development/ruby/1.8/gems/json-1.4.6/benchmarks/data-p4-3GHz-ruby18/GeneratorBenchmarkExt#generator_safe.dat +1001 -0
  128. data/development/ruby/1.8/gems/json-1.4.6/benchmarks/data-p4-3GHz-ruby18/GeneratorBenchmarkExt.log +261 -0
  129. data/development/ruby/1.8/gems/json-1.4.6/benchmarks/data-p4-3GHz-ruby18/GeneratorBenchmarkPure#generator_fast-autocorrelation.dat +1000 -0
  130. data/development/ruby/1.8/gems/json-1.4.6/benchmarks/data-p4-3GHz-ruby18/GeneratorBenchmarkPure#generator_fast.dat +1001 -0
  131. data/development/ruby/1.8/gems/json-1.4.6/benchmarks/data-p4-3GHz-ruby18/GeneratorBenchmarkPure#generator_pretty-autocorrelation.dat +1000 -0
  132. data/development/ruby/1.8/gems/json-1.4.6/benchmarks/data-p4-3GHz-ruby18/GeneratorBenchmarkPure#generator_pretty.dat +1001 -0
  133. data/development/ruby/1.8/gems/json-1.4.6/benchmarks/data-p4-3GHz-ruby18/GeneratorBenchmarkPure#generator_safe-autocorrelation.dat +1000 -0
  134. data/development/ruby/1.8/gems/json-1.4.6/benchmarks/data-p4-3GHz-ruby18/GeneratorBenchmarkPure#generator_safe.dat +1001 -0
  135. data/development/ruby/1.8/gems/json-1.4.6/benchmarks/data-p4-3GHz-ruby18/GeneratorBenchmarkPure.log +262 -0
  136. data/development/ruby/1.8/gems/json-1.4.6/benchmarks/data-p4-3GHz-ruby18/GeneratorBenchmarkRails#generator-autocorrelation.dat +1000 -0
  137. data/development/ruby/1.8/gems/json-1.4.6/benchmarks/data-p4-3GHz-ruby18/GeneratorBenchmarkRails#generator.dat +1001 -0
  138. data/development/ruby/1.8/gems/json-1.4.6/benchmarks/data-p4-3GHz-ruby18/GeneratorBenchmarkRails.log +82 -0
  139. data/development/ruby/1.8/gems/json-1.4.6/benchmarks/data-p4-3GHz-ruby18/ParserBenchmarkComparison.log +34 -0
  140. data/development/ruby/1.8/gems/json-1.4.6/benchmarks/data-p4-3GHz-ruby18/ParserBenchmarkExt#parser-autocorrelation.dat +900 -0
  141. data/development/ruby/1.8/gems/json-1.4.6/benchmarks/data-p4-3GHz-ruby18/ParserBenchmarkExt#parser.dat +901 -0
  142. data/development/ruby/1.8/gems/json-1.4.6/benchmarks/data-p4-3GHz-ruby18/ParserBenchmarkExt.log +81 -0
  143. data/development/ruby/1.8/gems/json-1.4.6/benchmarks/data-p4-3GHz-ruby18/ParserBenchmarkPure#parser-autocorrelation.dat +1000 -0
  144. data/development/ruby/1.8/gems/json-1.4.6/benchmarks/data-p4-3GHz-ruby18/ParserBenchmarkPure#parser.dat +1001 -0
  145. data/development/ruby/1.8/gems/json-1.4.6/benchmarks/data-p4-3GHz-ruby18/ParserBenchmarkPure.log +82 -0
  146. data/development/ruby/1.8/gems/json-1.4.6/benchmarks/data-p4-3GHz-ruby18/ParserBenchmarkRails#parser-autocorrelation.dat +1000 -0
  147. data/development/ruby/1.8/gems/json-1.4.6/benchmarks/data-p4-3GHz-ruby18/ParserBenchmarkRails#parser.dat +1001 -0
  148. data/development/ruby/1.8/gems/json-1.4.6/benchmarks/data-p4-3GHz-ruby18/ParserBenchmarkRails.log +82 -0
  149. data/development/ruby/1.8/gems/json-1.4.6/benchmarks/data-p4-3GHz-ruby18/ParserBenchmarkYAML#parser-autocorrelation.dat +1000 -0
  150. data/development/ruby/1.8/gems/json-1.4.6/benchmarks/data-p4-3GHz-ruby18/ParserBenchmarkYAML#parser.dat +1001 -0
  151. data/development/ruby/1.8/gems/json-1.4.6/benchmarks/data-p4-3GHz-ruby18/ParserBenchmarkYAML.log +82 -0
  152. data/development/ruby/1.8/gems/json-1.4.6/benchmarks/generator2_benchmark.rb +222 -0
  153. data/development/ruby/1.8/gems/json-1.4.6/benchmarks/generator_benchmark.rb +224 -0
  154. data/development/ruby/1.8/gems/json-1.4.6/benchmarks/ohai.json +1216 -0
  155. data/development/ruby/1.8/gems/json-1.4.6/benchmarks/ohai.ruby +1 -0
  156. data/development/ruby/1.8/gems/json-1.4.6/benchmarks/parser2_benchmark.rb +251 -0
  157. data/development/ruby/1.8/gems/json-1.4.6/benchmarks/parser_benchmark.rb +259 -0
  158. data/development/ruby/1.8/gems/json-1.4.6/bin/edit_json.rb +9 -0
  159. data/development/ruby/1.8/gems/json-1.4.6/bin/prettify_json.rb +75 -0
  160. data/development/ruby/1.8/gems/json-1.4.6/data/example.json +1 -0
  161. data/development/ruby/1.8/gems/json-1.4.6/data/index.html +38 -0
  162. data/development/ruby/1.8/gems/json-1.4.6/data/prototype.js +4184 -0
  163. data/development/ruby/1.8/gems/json-1.4.6/ext/json/ext/generator/Makefile +157 -0
  164. data/development/ruby/1.8/gems/json-1.4.6/ext/json/ext/generator/extconf.rb +20 -0
  165. data/development/ruby/1.8/gems/json-1.4.6/ext/json/ext/generator/generator.bundle +0 -0
  166. data/development/ruby/1.8/gems/json-1.4.6/ext/json/ext/generator/generator.c +1417 -0
  167. data/development/ruby/1.8/gems/json-1.4.6/ext/json/ext/generator/generator.h +197 -0
  168. data/development/ruby/1.8/gems/json-1.4.6/ext/json/ext/generator/generator.o +0 -0
  169. data/development/ruby/1.8/gems/json-1.4.6/ext/json/ext/generator/mkmf.log +10 -0
  170. data/development/ruby/1.8/gems/json-1.4.6/ext/json/ext/json/ext/generator.bundle +0 -0
  171. data/development/ruby/1.8/gems/json-1.4.6/ext/json/ext/json/ext/parser.bundle +0 -0
  172. data/development/ruby/1.8/gems/json-1.4.6/ext/json/ext/parser/Makefile +157 -0
  173. data/development/ruby/1.8/gems/json-1.4.6/ext/json/ext/parser/extconf.rb +15 -0
  174. data/development/ruby/1.8/gems/json-1.4.6/ext/json/ext/parser/mkmf.log +10 -0
  175. data/development/ruby/1.8/gems/json-1.4.6/ext/json/ext/parser/parser.bundle +0 -0
  176. data/development/ruby/1.8/gems/json-1.4.6/ext/json/ext/parser/parser.c +1935 -0
  177. data/development/ruby/1.8/gems/json-1.4.6/ext/json/ext/parser/parser.h +71 -0
  178. data/development/ruby/1.8/gems/json-1.4.6/ext/json/ext/parser/parser.o +0 -0
  179. data/development/ruby/1.8/gems/json-1.4.6/ext/json/ext/parser/parser.rl +792 -0
  180. data/development/ruby/1.8/gems/json-1.4.6/install.rb +26 -0
  181. data/development/ruby/1.8/gems/json-1.4.6/lib/json/Array.xpm +21 -0
  182. data/development/ruby/1.8/gems/json-1.4.6/lib/json/FalseClass.xpm +21 -0
  183. data/development/ruby/1.8/gems/json-1.4.6/lib/json/Hash.xpm +21 -0
  184. data/development/ruby/1.8/gems/json-1.4.6/lib/json/Key.xpm +73 -0
  185. data/development/ruby/1.8/gems/json-1.4.6/lib/json/NilClass.xpm +21 -0
  186. data/development/ruby/1.8/gems/json-1.4.6/lib/json/Numeric.xpm +28 -0
  187. data/development/ruby/1.8/gems/json-1.4.6/lib/json/String.xpm +96 -0
  188. data/development/ruby/1.8/gems/json-1.4.6/lib/json/TrueClass.xpm +21 -0
  189. data/development/ruby/1.8/gems/json-1.4.6/lib/json/add/core.rb +148 -0
  190. data/development/ruby/1.8/gems/json-1.4.6/lib/json/add/rails.rb +58 -0
  191. data/development/ruby/1.8/gems/json-1.4.6/lib/json/common.rb +391 -0
  192. data/development/ruby/1.8/gems/json-1.4.6/lib/json/editor.rb +1371 -0
  193. data/development/ruby/1.8/gems/json-1.4.6/lib/json/ext.rb +15 -0
  194. data/development/ruby/1.8/gems/json-1.4.6/lib/json/json.xpm +1499 -0
  195. data/development/ruby/1.8/gems/json-1.4.6/lib/json/pure/generator.rb +439 -0
  196. data/development/ruby/1.8/gems/json-1.4.6/lib/json/pure/parser.rb +309 -0
  197. data/development/ruby/1.8/gems/json-1.4.6/lib/json/pure.rb +77 -0
  198. data/development/ruby/1.8/gems/json-1.4.6/lib/json/version.rb +8 -0
  199. data/development/ruby/1.8/gems/json-1.4.6/lib/json.rb +10 -0
  200. data/development/ruby/1.8/gems/json-1.4.6/tests/fixtures/fail1.json +1 -0
  201. data/development/ruby/1.8/gems/json-1.4.6/tests/fixtures/fail10.json +1 -0
  202. data/development/ruby/1.8/gems/json-1.4.6/tests/fixtures/fail11.json +1 -0
  203. data/development/ruby/1.8/gems/json-1.4.6/tests/fixtures/fail12.json +1 -0
  204. data/development/ruby/1.8/gems/json-1.4.6/tests/fixtures/fail13.json +1 -0
  205. data/development/ruby/1.8/gems/json-1.4.6/tests/fixtures/fail14.json +1 -0
  206. data/development/ruby/1.8/gems/json-1.4.6/tests/fixtures/fail18.json +1 -0
  207. data/development/ruby/1.8/gems/json-1.4.6/tests/fixtures/fail19.json +1 -0
  208. data/development/ruby/1.8/gems/json-1.4.6/tests/fixtures/fail2.json +1 -0
  209. data/development/ruby/1.8/gems/json-1.4.6/tests/fixtures/fail20.json +1 -0
  210. data/development/ruby/1.8/gems/json-1.4.6/tests/fixtures/fail21.json +1 -0
  211. data/development/ruby/1.8/gems/json-1.4.6/tests/fixtures/fail22.json +1 -0
  212. data/development/ruby/1.8/gems/json-1.4.6/tests/fixtures/fail23.json +1 -0
  213. data/development/ruby/1.8/gems/json-1.4.6/tests/fixtures/fail24.json +1 -0
  214. data/development/ruby/1.8/gems/json-1.4.6/tests/fixtures/fail25.json +1 -0
  215. data/development/ruby/1.8/gems/json-1.4.6/tests/fixtures/fail27.json +2 -0
  216. data/development/ruby/1.8/gems/json-1.4.6/tests/fixtures/fail28.json +2 -0
  217. data/development/ruby/1.8/gems/json-1.4.6/tests/fixtures/fail3.json +1 -0
  218. data/development/ruby/1.8/gems/json-1.4.6/tests/fixtures/fail4.json +1 -0
  219. data/development/ruby/1.8/gems/json-1.4.6/tests/fixtures/fail5.json +1 -0
  220. data/development/ruby/1.8/gems/json-1.4.6/tests/fixtures/fail6.json +1 -0
  221. data/development/ruby/1.8/gems/json-1.4.6/tests/fixtures/fail7.json +1 -0
  222. data/development/ruby/1.8/gems/json-1.4.6/tests/fixtures/fail8.json +1 -0
  223. data/development/ruby/1.8/gems/json-1.4.6/tests/fixtures/fail9.json +1 -0
  224. data/development/ruby/1.8/gems/json-1.4.6/tests/fixtures/pass1.json +56 -0
  225. data/development/ruby/1.8/gems/json-1.4.6/tests/fixtures/pass15.json +1 -0
  226. data/development/ruby/1.8/gems/json-1.4.6/tests/fixtures/pass16.json +1 -0
  227. data/development/ruby/1.8/gems/json-1.4.6/tests/fixtures/pass17.json +1 -0
  228. data/development/ruby/1.8/gems/json-1.4.6/tests/fixtures/pass2.json +1 -0
  229. data/development/ruby/1.8/gems/json-1.4.6/tests/fixtures/pass26.json +1 -0
  230. data/development/ruby/1.8/gems/json-1.4.6/tests/fixtures/pass3.json +6 -0
  231. data/development/ruby/1.8/gems/json-1.4.6/tests/test_json.rb +394 -0
  232. data/development/ruby/1.8/gems/json-1.4.6/tests/test_json_addition.rb +162 -0
  233. data/development/ruby/1.8/gems/json-1.4.6/tests/test_json_encoding.rb +68 -0
  234. data/development/ruby/1.8/gems/json-1.4.6/tests/test_json_fixtures.rb +34 -0
  235. data/development/ruby/1.8/gems/json-1.4.6/tests/test_json_generate.rb +181 -0
  236. data/development/ruby/1.8/gems/json-1.4.6/tests/test_json_rails.rb +144 -0
  237. data/development/ruby/1.8/gems/json-1.4.6/tests/test_json_unicode.rb +76 -0
  238. data/development/ruby/1.8/gems/json-1.4.6/tools/fuzz.rb +139 -0
  239. data/development/ruby/1.8/gems/json-1.4.6/tools/server.rb +61 -0
  240. data/development/ruby/1.8/gems/omg-0.0.6/.document +5 -0
  241. data/development/ruby/1.8/gems/omg-0.0.6/.gitignore +21 -0
  242. data/development/ruby/1.8/gems/omg-0.0.6/LICENSE +20 -0
  243. data/development/ruby/1.8/gems/omg-0.0.6/README.rdoc +35 -0
  244. data/development/ruby/1.8/gems/omg-0.0.6/Rakefile +52 -0
  245. data/development/ruby/1.8/gems/omg-0.0.6/TODO +1 -0
  246. data/development/ruby/1.8/gems/omg-0.0.6/VERSION +1 -0
  247. data/development/ruby/1.8/gems/omg-0.0.6/lib/omg.rb +43 -0
  248. data/development/ruby/1.8/gems/omg-0.0.6/omg.gemspec +53 -0
  249. data/development/ruby/1.8/gems/omg-0.0.6/test/helper.rb +10 -0
  250. data/development/ruby/1.8/gems/omg-0.0.6/test/test_omg.rb +7 -0
  251. data/development/ruby/1.8/gems/shoulda-2.11.3/CONTRIBUTION_GUIDELINES.rdoc +10 -0
  252. data/development/ruby/1.8/gems/shoulda-2.11.3/MIT-LICENSE +22 -0
  253. data/development/ruby/1.8/gems/shoulda-2.11.3/README.rdoc +154 -0
  254. data/development/ruby/1.8/gems/shoulda-2.11.3/Rakefile +70 -0
  255. data/development/ruby/1.8/gems/shoulda-2.11.3/bin/convert_to_should_syntax +42 -0
  256. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/action_controller/macros.rb +221 -0
  257. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/action_controller/matchers/assign_to_matcher.rb +112 -0
  258. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/action_controller/matchers/filter_param_matcher.rb +74 -0
  259. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/action_controller/matchers/redirect_to_matcher.rb +62 -0
  260. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/action_controller/matchers/render_template_matcher.rb +54 -0
  261. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/action_controller/matchers/render_with_layout_matcher.rb +99 -0
  262. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/action_controller/matchers/respond_with_content_type_matcher.rb +74 -0
  263. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/action_controller/matchers/respond_with_matcher.rb +85 -0
  264. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/action_controller/matchers/route_matcher.rb +93 -0
  265. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/action_controller/matchers/set_session_matcher.rb +98 -0
  266. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/action_controller/matchers/set_the_flash_matcher.rb +100 -0
  267. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/action_controller/matchers.rb +39 -0
  268. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/action_controller.rb +34 -0
  269. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/action_mailer/assertions.rb +42 -0
  270. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/action_mailer/matchers/have_sent_email.rb +110 -0
  271. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/action_mailer/matchers.rb +22 -0
  272. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/action_mailer.rb +13 -0
  273. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/active_record/assertions.rb +69 -0
  274. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/active_record/helpers.rb +32 -0
  275. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/active_record/macros.rb +457 -0
  276. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/active_record/matchers/allow_mass_assignment_of_matcher.rb +83 -0
  277. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/active_record/matchers/allow_value_matcher.rb +110 -0
  278. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/active_record/matchers/association_matcher.rb +226 -0
  279. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/active_record/matchers/ensure_inclusion_of_matcher.rb +87 -0
  280. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/active_record/matchers/ensure_length_of_matcher.rb +141 -0
  281. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/active_record/matchers/have_db_column_matcher.rb +169 -0
  282. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/active_record/matchers/have_db_index_matcher.rb +112 -0
  283. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/active_record/matchers/have_readonly_attribute_matcher.rb +59 -0
  284. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/active_record/matchers/validate_acceptance_of_matcher.rb +41 -0
  285. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/active_record/matchers/validate_format_of_matcher.rb +65 -0
  286. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/active_record/matchers/validate_numericality_of_matcher.rb +39 -0
  287. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/active_record/matchers/validate_presence_of_matcher.rb +60 -0
  288. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/active_record/matchers/validate_uniqueness_of_matcher.rb +148 -0
  289. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/active_record/matchers/validation_matcher.rb +56 -0
  290. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/active_record/matchers.rb +42 -0
  291. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/active_record.rb +16 -0
  292. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/assertions.rb +79 -0
  293. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/autoload_macros.rb +46 -0
  294. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/context.rb +433 -0
  295. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/helpers.rb +8 -0
  296. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/integrations/rspec.rb +13 -0
  297. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/integrations/rspec2.rb +22 -0
  298. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/integrations/test_unit.rb +22 -0
  299. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/macros.rb +161 -0
  300. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/private_helpers.rb +13 -0
  301. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/proc_extensions.rb +14 -0
  302. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/rails.rb +8 -0
  303. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/tasks/list_tests.rake +29 -0
  304. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/tasks/yaml_to_shoulda.rake +28 -0
  305. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/tasks.rb +3 -0
  306. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda/version.rb +4 -0
  307. data/development/ruby/1.8/gems/shoulda-2.11.3/lib/shoulda.rb +9 -0
  308. data/development/ruby/1.8/gems/shoulda-2.11.3/rails/init.rb +8 -0
  309. data/development/ruby/1.8/gems/shoulda-2.11.3/test/README +36 -0
  310. data/development/ruby/1.8/gems/shoulda-2.11.3/test/fail_macros.rb +55 -0
  311. data/development/ruby/1.8/gems/shoulda-2.11.3/test/fixtures/addresses.yml +3 -0
  312. data/development/ruby/1.8/gems/shoulda-2.11.3/test/fixtures/friendships.yml +0 -0
  313. data/development/ruby/1.8/gems/shoulda-2.11.3/test/fixtures/posts.yml +5 -0
  314. data/development/ruby/1.8/gems/shoulda-2.11.3/test/fixtures/products.yml +0 -0
  315. data/development/ruby/1.8/gems/shoulda-2.11.3/test/fixtures/taggings.yml +0 -0
  316. data/development/ruby/1.8/gems/shoulda-2.11.3/test/fixtures/tags.yml +9 -0
  317. data/development/ruby/1.8/gems/shoulda-2.11.3/test/fixtures/users.yml +6 -0
  318. data/development/ruby/1.8/gems/shoulda-2.11.3/test/functional/posts_controller_test.rb +121 -0
  319. data/development/ruby/1.8/gems/shoulda-2.11.3/test/functional/users_controller_test.rb +19 -0
  320. data/development/ruby/1.8/gems/shoulda-2.11.3/test/matchers/action_mailer/have_sent_email_test.rb +70 -0
  321. data/development/ruby/1.8/gems/shoulda-2.11.3/test/matchers/active_record/allow_mass_assignment_of_matcher_test.rb +74 -0
  322. data/development/ruby/1.8/gems/shoulda-2.11.3/test/matchers/active_record/allow_value_matcher_test.rb +64 -0
  323. data/development/ruby/1.8/gems/shoulda-2.11.3/test/matchers/active_record/association_matcher_test.rb +263 -0
  324. data/development/ruby/1.8/gems/shoulda-2.11.3/test/matchers/active_record/ensure_inclusion_of_matcher_test.rb +81 -0
  325. data/development/ruby/1.8/gems/shoulda-2.11.3/test/matchers/active_record/ensure_length_of_matcher_test.rb +158 -0
  326. data/development/ruby/1.8/gems/shoulda-2.11.3/test/matchers/active_record/have_db_column_matcher_test.rb +169 -0
  327. data/development/ruby/1.8/gems/shoulda-2.11.3/test/matchers/active_record/have_db_index_matcher_test.rb +91 -0
  328. data/development/ruby/1.8/gems/shoulda-2.11.3/test/matchers/active_record/have_readonly_attributes_matcher_test.rb +29 -0
  329. data/development/ruby/1.8/gems/shoulda-2.11.3/test/matchers/active_record/validate_acceptance_of_matcher_test.rb +44 -0
  330. data/development/ruby/1.8/gems/shoulda-2.11.3/test/matchers/active_record/validate_format_of_matcher_test.rb +39 -0
  331. data/development/ruby/1.8/gems/shoulda-2.11.3/test/matchers/active_record/validate_numericality_of_matcher_test.rb +52 -0
  332. data/development/ruby/1.8/gems/shoulda-2.11.3/test/matchers/active_record/validate_presence_of_matcher_test.rb +86 -0
  333. data/development/ruby/1.8/gems/shoulda-2.11.3/test/matchers/active_record/validate_uniqueness_of_matcher_test.rb +147 -0
  334. data/development/ruby/1.8/gems/shoulda-2.11.3/test/matchers/controller/assign_to_matcher_test.rb +45 -0
  335. data/development/ruby/1.8/gems/shoulda-2.11.3/test/matchers/controller/filter_param_matcher_test.rb +40 -0
  336. data/development/ruby/1.8/gems/shoulda-2.11.3/test/matchers/controller/redirect_to_matcher_test.rb +37 -0
  337. data/development/ruby/1.8/gems/shoulda-2.11.3/test/matchers/controller/render_template_matcher_test.rb +37 -0
  338. data/development/ruby/1.8/gems/shoulda-2.11.3/test/matchers/controller/render_with_layout_matcher_test.rb +47 -0
  339. data/development/ruby/1.8/gems/shoulda-2.11.3/test/matchers/controller/respond_with_content_type_matcher_test.rb +32 -0
  340. data/development/ruby/1.8/gems/shoulda-2.11.3/test/matchers/controller/respond_with_matcher_test.rb +96 -0
  341. data/development/ruby/1.8/gems/shoulda-2.11.3/test/matchers/controller/route_matcher_test.rb +75 -0
  342. data/development/ruby/1.8/gems/shoulda-2.11.3/test/matchers/controller/set_session_matcher_test.rb +48 -0
  343. data/development/ruby/1.8/gems/shoulda-2.11.3/test/matchers/controller/set_the_flash_matcher.rb +95 -0
  344. data/development/ruby/1.8/gems/shoulda-2.11.3/test/other/autoload_macro_test.rb +18 -0
  345. data/development/ruby/1.8/gems/shoulda-2.11.3/test/other/context_test.rb +372 -0
  346. data/development/ruby/1.8/gems/shoulda-2.11.3/test/other/convert_to_should_syntax_test.rb +63 -0
  347. data/development/ruby/1.8/gems/shoulda-2.11.3/test/other/helpers_test.rb +317 -0
  348. data/development/ruby/1.8/gems/shoulda-2.11.3/test/other/private_helpers_test.rb +32 -0
  349. data/development/ruby/1.8/gems/shoulda-2.11.3/test/other/should_test.rb +271 -0
  350. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_model_builder.rb +130 -0
  351. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/app/controllers/application_controller.rb +22 -0
  352. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/app/controllers/posts_controller.rb +87 -0
  353. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/app/controllers/users_controller.rb +84 -0
  354. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/app/helpers/application_helper.rb +3 -0
  355. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/app/helpers/posts_helper.rb +2 -0
  356. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/app/helpers/users_helper.rb +2 -0
  357. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/app/models/address.rb +7 -0
  358. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/app/models/flea.rb +11 -0
  359. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/app/models/friendship.rb +4 -0
  360. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/app/models/notifier.rb +8 -0
  361. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/app/models/pets/cat.rb +7 -0
  362. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/app/models/pets/dog.rb +10 -0
  363. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/app/models/post.rb +12 -0
  364. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/app/models/product.rb +12 -0
  365. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/app/models/profile.rb +2 -0
  366. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/app/models/registration.rb +2 -0
  367. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/app/models/tag.rb +8 -0
  368. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/app/models/tagging.rb +4 -0
  369. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/app/models/treat.rb +3 -0
  370. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/app/models/user.rb +32 -0
  371. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/app/views/layouts/posts.rhtml +19 -0
  372. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/app/views/layouts/users.rhtml +17 -0
  373. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/app/views/layouts/wide.html.erb +1 -0
  374. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/app/views/notifier/the_email.html.erb +1 -0
  375. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/app/views/posts/edit.rhtml +27 -0
  376. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/app/views/posts/index.rhtml +25 -0
  377. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/app/views/posts/new.rhtml +26 -0
  378. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/app/views/posts/show.rhtml +18 -0
  379. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/app/views/users/edit.rhtml +22 -0
  380. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/app/views/users/index.rhtml +22 -0
  381. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/app/views/users/new.rhtml +21 -0
  382. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/app/views/users/show.rhtml +13 -0
  383. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/config/boot.rb +110 -0
  384. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/config/database.yml +4 -0
  385. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/config/environment.rb +17 -0
  386. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/config/environments/test.rb +23 -0
  387. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/config/initializers/new_rails_defaults.rb +15 -0
  388. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/config/initializers/shoulda.rb +8 -0
  389. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/config/routes.rb +6 -0
  390. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/db/migrate/001_create_users.rb +19 -0
  391. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/db/migrate/002_create_posts.rb +13 -0
  392. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/db/migrate/003_create_taggings.rb +12 -0
  393. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/db/migrate/004_create_tags.rb +11 -0
  394. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/db/migrate/005_create_dogs.rb +12 -0
  395. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/db/migrate/006_create_addresses.rb +14 -0
  396. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/db/migrate/007_create_fleas.rb +11 -0
  397. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/db/migrate/008_create_dogs_fleas.rb +12 -0
  398. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/db/migrate/009_create_products.rb +17 -0
  399. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/db/migrate/010_create_friendships.rb +14 -0
  400. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/db/migrate/011_create_treats.rb +12 -0
  401. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/db/migrate/20090506203502_create_profiles.rb +12 -0
  402. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/db/migrate/20090506203536_create_registrations.rb +14 -0
  403. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/db/migrate/20090513104502_create_cats.rb +12 -0
  404. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/db/schema.rb +0 -0
  405. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/log/test.log +50381 -0
  406. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/public/404.html +30 -0
  407. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/public/422.html +30 -0
  408. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/public/500.html +30 -0
  409. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/script/console +3 -0
  410. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/script/generate +3 -0
  411. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/test/shoulda_macros/custom_macro.rb +6 -0
  412. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/vendor/gems/gem_with_macro-0.0.1/shoulda_macros/gem_macro.rb +6 -0
  413. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_root/vendor/plugins/plugin_with_macro/shoulda_macros/plugin_macro.rb +6 -0
  414. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails2_test_helper.rb +6 -0
  415. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_model_builder.rb +118 -0
  416. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/Gemfile +28 -0
  417. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/README +244 -0
  418. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/Rakefile +10 -0
  419. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/app/controllers/application_controller.rb +22 -0
  420. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/app/controllers/posts_controller.rb +87 -0
  421. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/app/controllers/users_controller.rb +82 -0
  422. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/app/helpers/application_helper.rb +2 -0
  423. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/app/models/address.rb +7 -0
  424. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/app/models/flea.rb +11 -0
  425. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/app/models/friendship.rb +4 -0
  426. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/app/models/notifier.rb +8 -0
  427. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/app/models/pets/cat.rb +7 -0
  428. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/app/models/pets/dog.rb +10 -0
  429. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/app/models/post.rb +12 -0
  430. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/app/models/product.rb +12 -0
  431. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/app/models/profile.rb +2 -0
  432. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/app/models/registration.rb +2 -0
  433. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/app/models/tag.rb +8 -0
  434. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/app/models/tagging.rb +4 -0
  435. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/app/models/treat.rb +3 -0
  436. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/app/models/user.rb +32 -0
  437. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/app/views/layouts/application.html.erb +14 -0
  438. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/app/views/layouts/posts.rhtml +19 -0
  439. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/app/views/layouts/users.rhtml +17 -0
  440. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/app/views/layouts/wide.html.erb +1 -0
  441. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/app/views/notifier/the_email.html.erb +1 -0
  442. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/app/views/posts/edit.rhtml +27 -0
  443. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/app/views/posts/index.rhtml +25 -0
  444. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/app/views/posts/new.rhtml +24 -0
  445. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/app/views/posts/show.rhtml +18 -0
  446. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/app/views/users/edit.rhtml +22 -0
  447. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/app/views/users/index.rhtml +22 -0
  448. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/app/views/users/new.rhtml +21 -0
  449. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/app/views/users/show.rhtml +13 -0
  450. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/config/application.rb +46 -0
  451. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/config/boot.rb +6 -0
  452. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/config/database.yml +22 -0
  453. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/config/environment.rb +5 -0
  454. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/config/environments/development.rb +19 -0
  455. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/config/environments/production.rb +42 -0
  456. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/config/environments/test.rb +32 -0
  457. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/config/initializers/backtrace_silencers.rb +7 -0
  458. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/config/initializers/inflections.rb +10 -0
  459. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/config/initializers/mime_types.rb +5 -0
  460. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/config/initializers/secret_token.rb +7 -0
  461. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/config/initializers/session_store.rb +8 -0
  462. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/config/locales/en.yml +5 -0
  463. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/config/routes.rb +4 -0
  464. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/config.ru +4 -0
  465. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/db/migrate/001_create_users.rb +19 -0
  466. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/db/migrate/002_create_posts.rb +13 -0
  467. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/db/migrate/003_create_taggings.rb +12 -0
  468. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/db/migrate/004_create_tags.rb +11 -0
  469. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/db/migrate/005_create_dogs.rb +12 -0
  470. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/db/migrate/006_create_addresses.rb +14 -0
  471. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/db/migrate/007_create_fleas.rb +11 -0
  472. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/db/migrate/008_create_dogs_fleas.rb +12 -0
  473. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/db/migrate/009_create_products.rb +17 -0
  474. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/db/migrate/010_create_friendships.rb +14 -0
  475. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/db/migrate/011_create_treats.rb +12 -0
  476. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/db/migrate/20090506203502_create_profiles.rb +12 -0
  477. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/db/migrate/20090506203536_create_registrations.rb +14 -0
  478. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/db/migrate/20090513104502_create_cats.rb +12 -0
  479. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/db/seeds.rb +7 -0
  480. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/db/test.sqlite3 +0 -0
  481. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/log/test.log +10834 -0
  482. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/public/404.html +26 -0
  483. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/public/422.html +26 -0
  484. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/public/500.html +26 -0
  485. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/public/favicon.ico +0 -0
  486. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/public/images/rails.png +0 -0
  487. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/public/index.html +279 -0
  488. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/public/javascripts/application.js +2 -0
  489. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/public/javascripts/controls.js +965 -0
  490. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/public/javascripts/dragdrop.js +974 -0
  491. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/public/javascripts/effects.js +1123 -0
  492. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/public/javascripts/prototype.js +4874 -0
  493. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/public/javascripts/rails.js +118 -0
  494. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/public/robots.txt +5 -0
  495. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/script/rails +9 -0
  496. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/test/performance/browsing_test.rb +9 -0
  497. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_root/test/test_helper.rb +13 -0
  498. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rails3_test_helper.rb +6 -0
  499. data/development/ruby/1.8/gems/shoulda-2.11.3/test/rspec_test.rb +207 -0
  500. data/development/ruby/1.8/gems/shoulda-2.11.3/test/test_helper.rb +36 -0
  501. data/development/ruby/1.8/gems/shoulda-2.11.3/test/unit/address_test.rb +10 -0
  502. data/development/ruby/1.8/gems/shoulda-2.11.3/test/unit/cat_test.rb +7 -0
  503. data/development/ruby/1.8/gems/shoulda-2.11.3/test/unit/dog_test.rb +9 -0
  504. data/development/ruby/1.8/gems/shoulda-2.11.3/test/unit/flea_test.rb +14 -0
  505. data/development/ruby/1.8/gems/shoulda-2.11.3/test/unit/friendship_test.rb +6 -0
  506. data/development/ruby/1.8/gems/shoulda-2.11.3/test/unit/post_test.rb +15 -0
  507. data/development/ruby/1.8/gems/shoulda-2.11.3/test/unit/product_test.rb +23 -0
  508. data/development/ruby/1.8/gems/shoulda-2.11.3/test/unit/tag_test.rb +11 -0
  509. data/development/ruby/1.8/gems/shoulda-2.11.3/test/unit/tagging_test.rb +6 -0
  510. data/development/ruby/1.8/gems/shoulda-2.11.3/test/unit/user_test.rb +46 -0
  511. data/development/ruby/1.8/specifications/crack-0.1.8.gemspec +30 -0
  512. data/development/ruby/1.8/specifications/fakeweb-1.3.0.gemspec +34 -0
  513. data/development/ruby/1.8/specifications/hashie-0.4.0.gemspec +33 -0
  514. data/development/ruby/1.8/specifications/json-1.4.6.gemspec +34 -0
  515. data/development/ruby/1.8/specifications/omg-0.0.6.gemspec +30 -0
  516. data/development/ruby/1.8/specifications/shoulda-2.11.3.gemspec +32 -0
  517. data/lib/putio/client.rb +74 -0
  518. data/lib/putio/putio.rb +5 -0
  519. data/lib/putio.rb +4 -0
  520. data/putio.gemspec +25 -0
  521. data/test/fixtures/user_friends.json +1 -0
  522. data/test/fixtures/user_info.json +1 -0
  523. data/test/test_helper.rb +19 -0
  524. data/test/units/client_test.rb +11 -0
  525. data/test/units/putio_test.rb +11 -0
  526. data/test/units/user_test.rb +39 -0
  527. metadata +675 -0
@@ -0,0 +1,90 @@
1
+ require 'test/unit'
2
+ require 'open-uri'
3
+ require 'pathname'
4
+ require 'fake_web'
5
+ require 'rbconfig'
6
+ require 'rubygems'
7
+ require 'mocha'
8
+
9
+
10
+ # Give all tests a common setup and teardown that prevents shared state
11
+ class Test::Unit::TestCase
12
+ alias setup_without_fakeweb setup
13
+ def setup
14
+ FakeWeb.clean_registry
15
+ @original_allow_net_connect = FakeWeb.allow_net_connect?
16
+ FakeWeb.allow_net_connect = false
17
+ end
18
+
19
+ alias teardown_without_fakeweb teardown
20
+ def teardown
21
+ FakeWeb.allow_net_connect = @original_allow_net_connect
22
+ end
23
+ end
24
+
25
+
26
+ module FakeWebTestHelper
27
+
28
+ def fixture_path(basename)
29
+ "test/fixtures/#{basename}"
30
+ end
31
+
32
+ def capture_stderr
33
+ $stderr = StringIO.new
34
+ yield
35
+ $stderr.rewind && $stderr.read
36
+ ensure
37
+ $stderr = STDERR
38
+ end
39
+
40
+ # The path to the current ruby interpreter. Adapted from Rake's FileUtils.
41
+ def ruby_path
42
+ ext = ((RbConfig::CONFIG['ruby_install_name'] =~ /\.(com|cmd|exe|bat|rb|sh)$/) ? "" : RbConfig::CONFIG['EXEEXT'])
43
+ File.join(RbConfig::CONFIG['bindir'], RbConfig::CONFIG['ruby_install_name'] + ext).sub(/.*\s.*/m, '"\&"')
44
+ end
45
+
46
+ # Sets several expectations (using Mocha) that a real HTTP request makes it
47
+ # past FakeWeb to the socket layer. You can use this when you need to check
48
+ # that a request isn't handled by FakeWeb.
49
+ def setup_expectations_for_real_request(options = {})
50
+ # Socket handling
51
+ if options[:port] == 443
52
+ socket = mock("SSLSocket")
53
+ OpenSSL::SSL::SSLSocket.expects(:===).with(socket).returns(true).at_least_once
54
+ OpenSSL::SSL::SSLSocket.expects(:new).with(socket, instance_of(OpenSSL::SSL::SSLContext)).returns(socket).at_least_once
55
+ socket.stubs(:sync_close=).returns(true)
56
+ socket.expects(:connect).with().at_least_once
57
+ else
58
+ socket = mock("TCPSocket")
59
+ Socket.expects(:===).with(socket).at_least_once.returns(true)
60
+ end
61
+
62
+ TCPSocket.expects(:open).with(options[:host], options[:port]).returns(socket).at_least_once
63
+ socket.stubs(:closed?).returns(false)
64
+ socket.stubs(:close).returns(true)
65
+
66
+ # Request/response handling
67
+ request_parts = ["#{options[:method]} #{options[:path]} HTTP/1.1", "Host: #{options[:host]}"]
68
+ socket.expects(:write).with(all_of(includes(request_parts[0]), includes(request_parts[1]))).returns(100)
69
+ if !options[:request_body].nil?
70
+ socket.expects(:write).with(options[:request_body]).returns(100)
71
+ end
72
+
73
+ read_method = RUBY_VERSION >= "1.9.2" ? :read_nonblock : :sysread
74
+ socket.expects(read_method).at_least_once.returns("HTTP/1.1 #{options[:response_code]} #{options[:response_message]}\nContent-Length: #{options[:response_body].length}\n\n#{options[:response_body]}").then.raises(EOFError)
75
+ end
76
+
77
+
78
+ # A helper that calls #setup_expectations_for_real_request for you, using
79
+ # defaults for our commonly used test request to images.apple.com.
80
+ def setup_expectations_for_real_apple_hot_news_request(options = {})
81
+ defaults = { :host => "images.apple.com", :port => 80, :method => "GET",
82
+ :path => "/main/rss/hotnews/hotnews.rss",
83
+ :response_code => 200, :response_message => "OK",
84
+ :response_body => "<title>Apple Hot News</title>" }
85
+ setup_expectations_for_real_request(defaults.merge(options))
86
+ end
87
+
88
+ end
89
+
90
+ Test::Unit::TestCase.send(:include, FakeWebTestHelper)
@@ -0,0 +1,29 @@
1
+ require 'test_helper'
2
+
3
+ class TestLastRequest < Test::Unit::TestCase
4
+
5
+ def test_last_request_returns_correct_net_http_request_class
6
+ FakeWeb.register_uri(:get, "http://example.com", :status => [200, "OK"])
7
+ Net::HTTP.start("example.com") { |http| http.get("/") }
8
+ assert_instance_of Net::HTTP::Get, FakeWeb.last_request
9
+ end
10
+
11
+ def test_last_request_has_correct_method_path_and_body_for_get
12
+ FakeWeb.register_uri(:get, "http://example.com", :status => [200, "OK"])
13
+ Net::HTTP.start("example.com") { |http| http.get("/") }
14
+ assert_equal "GET", FakeWeb.last_request.method
15
+ assert_equal "/", FakeWeb.last_request.path
16
+ assert_nil FakeWeb.last_request.body
17
+ assert_nil FakeWeb.last_request.content_length
18
+ end
19
+
20
+ def test_last_request_has_correct_method_path_and_body_for_post
21
+ FakeWeb.register_uri(:post, "http://example.com/posts", :status => [201, "Created"])
22
+ Net::HTTP.start("example.com") { |http| http.post("/posts", "title=Test") }
23
+ assert_equal "POST", FakeWeb.last_request.method
24
+ assert_equal "/posts", FakeWeb.last_request.path
25
+ assert_equal "title=Test", FakeWeb.last_request.body
26
+ assert_equal 10, FakeWeb.last_request.content_length
27
+ end
28
+
29
+ end
@@ -0,0 +1,25 @@
1
+ require 'test_helper'
2
+
3
+ class TestMissingOpenURI < Test::Unit::TestCase
4
+
5
+ def setup
6
+ super
7
+ @saved_open_uri = OpenURI
8
+ Object.send(:remove_const, :OpenURI)
9
+ end
10
+
11
+ def teardown
12
+ super
13
+ Object.const_set(:OpenURI, @saved_open_uri)
14
+ end
15
+
16
+
17
+ def test_register_using_exception_without_open_uri
18
+ # regression test for Responder needing OpenURI::HTTPError to be defined
19
+ FakeWeb.register_uri(:get, "http://example.com/", :exception => StandardError)
20
+ assert_raises(StandardError) do
21
+ Net::HTTP.start("example.com") { |http| http.get("/") }
22
+ end
23
+ end
24
+
25
+ end
@@ -0,0 +1,37 @@
1
+ require 'test_helper'
2
+
3
+ class TestMissingPathname < Test::Unit::TestCase
4
+
5
+ def setup
6
+ super
7
+ @saved_pathname = Pathname
8
+ Object.send(:remove_const, :Pathname)
9
+ end
10
+
11
+ def teardown
12
+ super
13
+ Object.const_set(:Pathname, @saved_pathname)
14
+ end
15
+
16
+ # FakeWeb supports using Pathname objects where filenames are expected, but
17
+ # Pathname isn't required to use FakeWeb. Make sure everything still works
18
+ # when Pathname isn't in use.
19
+
20
+ def test_register_using_body_without_pathname
21
+ FakeWeb.register_uri(:get, "http://example.com/", :body => fixture_path("test_example.txt"))
22
+ Net::HTTP.start("example.com") { |http| http.get("/") }
23
+ end
24
+
25
+ def test_register_using_response_without_pathname
26
+ FakeWeb.register_uri(:get, "http://example.com/", :response => fixture_path("google_response_without_transfer_encoding"))
27
+ Net::HTTP.start("example.com") { |http| http.get("/") }
28
+ end
29
+
30
+ def test_register_using_unsupported_response_without_pathname
31
+ FakeWeb.register_uri(:get, "http://example.com/", :response => 1)
32
+ assert_raise StandardError do
33
+ Net::HTTP.start("example.com") { |http| http.get("/") }
34
+ end
35
+ end
36
+
37
+ end
@@ -0,0 +1,36 @@
1
+ require 'test_helper'
2
+
3
+ class TestOtherNetHttpLibraries < Test::Unit::TestCase
4
+
5
+ def capture_output_from_requiring(libs, additional_code = "")
6
+ requires = libs.map { |lib| "require '#{lib}'" }.join("; ")
7
+ fakeweb_dir = "#{File.dirname(__FILE__)}/../lib"
8
+ vendor_dirs = Dir["#{File.dirname(__FILE__)}/vendor/*/lib"]
9
+ load_path_opts = vendor_dirs.unshift(fakeweb_dir).map { |dir| "-I#{dir}" }.join(" ")
10
+
11
+ `#{ruby_path} #{load_path_opts} -e "#{requires}; #{additional_code}" 2>&1`
12
+ end
13
+
14
+ def test_requiring_samuel_before_fakeweb_prints_warning
15
+ output = capture_output_from_requiring %w(samuel fakeweb)
16
+ assert_match %r(Warning: FakeWeb was loaded after Samuel), output
17
+ end
18
+
19
+ def test_requiring_samuel_after_fakeweb_does_not_print_warning
20
+ output = capture_output_from_requiring %w(fakeweb samuel)
21
+ assert output.empty?
22
+ end
23
+
24
+ def test_requiring_right_http_connection_before_fakeweb_and_then_connecting_does_not_print_warning
25
+ additional_code = "Net::HTTP.start('example.com')"
26
+ output = capture_output_from_requiring %w(right_http_connection fakeweb), additional_code
27
+ assert output.empty?
28
+ end
29
+
30
+ def test_requiring_right_http_connection_after_fakeweb_and_then_connecting_prints_warning
31
+ additional_code = "Net::HTTP.start('example.com')"
32
+ output = capture_output_from_requiring %w(fakeweb right_http_connection), additional_code
33
+ assert_match %r(Warning: RightHttpConnection was loaded after FakeWeb), output
34
+ end
35
+
36
+ end
@@ -0,0 +1,79 @@
1
+ require 'test_helper'
2
+
3
+ class TestPrecedence < Test::Unit::TestCase
4
+
5
+ def test_matching_get_strings_have_precedence_over_matching_get_regexes
6
+ FakeWeb.register_uri(:get, "http://example.com/test", :body => "string")
7
+ FakeWeb.register_uri(:get, %r|http://example\.com/test|, :body => "regex")
8
+ response = Net::HTTP.start("example.com") { |query| query.get('/test') }
9
+ assert_equal "string", response.body
10
+ end
11
+
12
+ def test_matching_any_strings_have_precedence_over_matching_any_regexes
13
+ FakeWeb.register_uri(:any, "http://example.com/test", :body => "string")
14
+ FakeWeb.register_uri(:any, %r|http://example\.com/test|, :body => "regex")
15
+ response = Net::HTTP.start("example.com") { |query| query.get('/test') }
16
+ assert_equal "string", response.body
17
+ end
18
+
19
+ def test_matching_get_strings_have_precedence_over_matching_any_strings
20
+ FakeWeb.register_uri(:get, "http://example.com/test", :body => "get method")
21
+ FakeWeb.register_uri(:any, "http://example.com/test", :body => "any method")
22
+ response = Net::HTTP.start("example.com") { |query| query.get('/test') }
23
+ assert_equal "get method", response.body
24
+
25
+ # registration order should not matter
26
+ FakeWeb.register_uri(:any, "http://example.com/test2", :body => "any method")
27
+ FakeWeb.register_uri(:get, "http://example.com/test2", :body => "get method")
28
+ response = Net::HTTP.start("example.com") { |query| query.get('/test2') }
29
+ assert_equal "get method", response.body
30
+ end
31
+
32
+ def test_matching_any_strings_have_precedence_over_matching_get_regexes
33
+ FakeWeb.register_uri(:any, "http://example.com/test", :body => "any string")
34
+ FakeWeb.register_uri(:get, %r|http://example\.com/test|, :body => "get regex")
35
+ response = Net::HTTP.start("example.com") { |query| query.get('/test') }
36
+ assert_equal "any string", response.body
37
+ end
38
+
39
+ def test_registered_strings_and_uris_are_equivalent_so_second_takes_precedence
40
+ FakeWeb.register_uri(:get, "http://example.com/test", :body => "string")
41
+ FakeWeb.register_uri(:get, URI.parse("http://example.com/test"), :body => "uri")
42
+ response = Net::HTTP.start("example.com") { |query| query.get('/test') }
43
+ assert_equal "uri", response.body
44
+
45
+ FakeWeb.register_uri(:get, URI.parse("http://example.com/test2"), :body => "uri")
46
+ FakeWeb.register_uri(:get, "http://example.com/test2", :body => "string")
47
+ response = Net::HTTP.start("example.com") { |query| query.get('/test2') }
48
+ assert_equal "string", response.body
49
+ end
50
+
51
+ def test_identical_registration_replaces_previous_registration
52
+ FakeWeb.register_uri(:get, "http://example.com/test", :body => "first")
53
+ FakeWeb.register_uri(:get, "http://example.com/test", :body => "second")
54
+ response = Net::HTTP.start("example.com") { |query| query.get('/test') }
55
+ assert_equal "second", response.body
56
+ end
57
+
58
+ def test_identical_registration_replaces_previous_registration_accounting_for_normalization
59
+ FakeWeb.register_uri(:get, "http://example.com/test?", :body => "first")
60
+ FakeWeb.register_uri(:get, "http://example.com:80/test", :body => "second")
61
+ response = Net::HTTP.start("example.com") { |query| query.get('/test') }
62
+ assert_equal "second", response.body
63
+ end
64
+
65
+ def test_identical_registration_replaces_previous_registration_accounting_for_query_params
66
+ FakeWeb.register_uri(:get, "http://example.com/test?a=1&b=2", :body => "first")
67
+ FakeWeb.register_uri(:get, "http://example.com/test?b=2&a=1", :body => "second")
68
+ response = Net::HTTP.start("example.com") { |query| query.get('/test?a=1&b=2') }
69
+ assert_equal "second", response.body
70
+ end
71
+
72
+ def test_identical_registration_replaces_previous_registration_with_regexes
73
+ FakeWeb.register_uri(:get, /test/, :body => "first")
74
+ FakeWeb.register_uri(:get, /test/, :body => "second")
75
+ response = Net::HTTP.start("example.com") { |query| query.get('/test') }
76
+ assert_equal "second", response.body
77
+ end
78
+
79
+ end
@@ -0,0 +1,45 @@
1
+ require 'test_helper'
2
+
3
+ class TestFakeWebQueryString < Test::Unit::TestCase
4
+
5
+ def test_register_uri_string_with_query_params
6
+ FakeWeb.register_uri(:get, 'http://example.com/?a=1&b=1', :body => 'foo')
7
+ assert FakeWeb.registered_uri?(:get, 'http://example.com/?a=1&b=1')
8
+
9
+ FakeWeb.register_uri(:post, URI.parse("http://example.org/?a=1&b=1"), :body => "foo")
10
+ assert FakeWeb.registered_uri?(:post, "http://example.org/?a=1&b=1")
11
+ end
12
+
13
+ def test_register_uri_with_query_params_and_check_in_different_order
14
+ FakeWeb.register_uri(:get, 'http://example.com/?a=1&b=1', :body => 'foo')
15
+ assert FakeWeb.registered_uri?(:get, 'http://example.com/?b=1&a=1')
16
+
17
+ FakeWeb.register_uri(:post, URI.parse('http://example.org/?a=1&b=1'), :body => 'foo')
18
+ assert FakeWeb.registered_uri?(:post, 'http://example.org/?b=1&a=1')
19
+ end
20
+
21
+ def test_registered_uri_gets_recognized_with_empty_query_params
22
+ FakeWeb.register_uri(:get, 'http://example.com/', :body => 'foo')
23
+ assert FakeWeb.registered_uri?(:get, 'http://example.com/?')
24
+
25
+ FakeWeb.register_uri(:post, URI.parse('http://example.org/'), :body => 'foo')
26
+ assert FakeWeb.registered_uri?(:post, 'http://example.org/?')
27
+ end
28
+
29
+ def test_register_uri_with_empty_query_params_and_check_with_none
30
+ FakeWeb.register_uri(:get, 'http://example.com/?', :body => 'foo')
31
+ assert FakeWeb.registered_uri?(:get, 'http://example.com/')
32
+
33
+ FakeWeb.register_uri(:post, URI.parse('http://example.org/?'), :body => 'foo')
34
+ assert FakeWeb.registered_uri?(:post, 'http://example.org/')
35
+ end
36
+
37
+ def test_registry_sort_query_params
38
+ assert_equal "a=1&b=2", FakeWeb::Registry.instance.send(:sort_query_params, "b=2&a=1")
39
+ end
40
+
41
+ def test_registry_sort_query_params_sorts_by_value_if_keys_collide
42
+ assert_equal "a=1&a=2&b=2", FakeWeb::Registry.instance.send(:sort_query_params, "a=2&b=2&a=1")
43
+ end
44
+
45
+ end
@@ -0,0 +1,157 @@
1
+ require 'test_helper'
2
+
3
+ class TestRegexes < Test::Unit::TestCase
4
+
5
+ def test_registered_uri_with_pattern
6
+ FakeWeb.register_uri(:get, %r|http://example.com/test_example/\d+|, :body => "example")
7
+ assert FakeWeb.registered_uri?(:get, "http://example.com/test_example/25")
8
+ assert !FakeWeb.registered_uri?(:get, "http://example.com/test_example/abc")
9
+ end
10
+
11
+ def test_response_for_with_matching_registered_uri
12
+ FakeWeb.register_uri(:get, %r|http://www.google.com|, :body => "Welcome to Google!")
13
+ assert_equal "Welcome to Google!", FakeWeb.response_for(:get, "http://www.google.com").body
14
+ end
15
+
16
+ def test_response_for_with_matching_registered_uri_and_get_method_matching_to_any_method
17
+ FakeWeb.register_uri(:any, %r|http://www.example.com|, :body => "example")
18
+ assert_equal "example", FakeWeb.response_for(:get, "http://www.example.com").body
19
+ end
20
+
21
+ def test_registered_uri_with_authentication_and_pattern
22
+ FakeWeb.register_uri(:get, %r|http://user:pass@mock/example\.\w+|i, :body => "example")
23
+ assert FakeWeb.registered_uri?(:get, 'http://user:pass@mock/example.txt')
24
+ end
25
+
26
+ def test_registered_uri_with_authentication_and_pattern_handles_case_insensitivity
27
+ FakeWeb.register_uri(:get, %r|http://user:pass@mock/example\.\w+|i, :body => "example")
28
+ assert FakeWeb.registered_uri?(:get, 'http://uSeR:PAss@mock/example.txt')
29
+ end
30
+
31
+ def test_request_with_authentication_and_pattern_handles_case_insensitivity
32
+ FakeWeb.register_uri(:get, %r|http://user:pass@mock/example\.\w+|i, :body => "example")
33
+ http = Net::HTTP.new('mock', 80)
34
+ req = Net::HTTP::Get.new('/example.txt')
35
+ req.basic_auth 'uSeR', 'PAss'
36
+ assert_equal "example", http.request(req).body
37
+ end
38
+
39
+ def test_requesting_a_uri_that_matches_two_registered_regexes_raises_an_error
40
+ FakeWeb.register_uri(:get, %r|http://example\.com/|, :body => "first")
41
+ FakeWeb.register_uri(:get, %r|http://example\.com/a|, :body => "second")
42
+ assert_raise FakeWeb::MultipleMatchingURIsError do
43
+ Net::HTTP.start("example.com") { |query| query.get('/a') }
44
+ end
45
+ end
46
+
47
+ def test_requesting_a_uri_that_matches_two_registered_regexes_raises_an_error_including_request_info
48
+ FakeWeb.register_uri(:get, %r|http://example\.com/|, :body => "first")
49
+ FakeWeb.register_uri(:get, %r|http://example\.com/a|, :body => "second")
50
+ begin
51
+ Net::HTTP.start("example.com") { |query| query.get('/a') }
52
+ rescue FakeWeb::MultipleMatchingURIsError => exception
53
+ end
54
+ assert exception.message.include?("GET http://example.com/a")
55
+ end
56
+
57
+ def test_registry_does_not_find_using_mismatched_protocols_or_ports_when_registered_with_both
58
+ FakeWeb.register_uri(:get, %r|http://www.example.com:80|, :body => "example")
59
+ assert !FakeWeb.registered_uri?(:get, "https://www.example.com:80")
60
+ assert !FakeWeb.registered_uri?(:get, "http://www.example.com:443")
61
+ end
62
+
63
+ def test_registry_finds_using_non_default_port
64
+ FakeWeb.register_uri(:get, %r|example\.com:8080|, :body => "example")
65
+ assert FakeWeb.registered_uri?(:get, "http://www.example.com:8080/path")
66
+ assert FakeWeb.registered_uri?(:get, "https://www.example.com:8080/path")
67
+ end
68
+
69
+ def test_registry_finds_using_default_port_and_http_when_registered_with_explicit_port_80
70
+ FakeWeb.register_uri(:get, %r|example\.com:80|, :body => "example")
71
+ assert FakeWeb.registered_uri?(:get, "http://www.example.com/path")
72
+
73
+ # check other permutations, too
74
+ assert FakeWeb.registered_uri?(:get, "http://www.example.com:80/path")
75
+ assert FakeWeb.registered_uri?(:get, "http://www.example.com:8080/path")
76
+ assert FakeWeb.registered_uri?(:get, "https://www.example.com:80/path")
77
+ assert FakeWeb.registered_uri?(:get, "https://www.example.com:8080/path")
78
+ assert !FakeWeb.registered_uri?(:get, "https://www.example.com/path")
79
+ end
80
+
81
+ def test_registry_finds_using_default_port_and_https_when_registered_with_explicit_port_443
82
+ FakeWeb.register_uri(:get, %r|example\.com:443|, :body => "example")
83
+ assert FakeWeb.registered_uri?(:get, "https://www.example.com/path")
84
+
85
+ # check other permutations, too
86
+ assert FakeWeb.registered_uri?(:get, "https://www.example.com:443/path")
87
+ assert FakeWeb.registered_uri?(:get, "https://www.example.com:44321/path")
88
+ assert FakeWeb.registered_uri?(:get, "http://www.example.com:443/path")
89
+ assert FakeWeb.registered_uri?(:get, "http://www.example.com:44321/path")
90
+ assert !FakeWeb.registered_uri?(:get, "http://www.example.com/path")
91
+ end
92
+
93
+ def test_registry_only_finds_using_default_port_when_registered_without_if_protocol_matches
94
+ FakeWeb.register_uri(:get, %r|http://www.example.com/test|, :body => "example")
95
+ assert FakeWeb.registered_uri?(:get, "http://www.example.com:80/test")
96
+ assert !FakeWeb.registered_uri?(:get, "http://www.example.com:443/test")
97
+ assert !FakeWeb.registered_uri?(:get, "https://www.example.com:443/test")
98
+ FakeWeb.register_uri(:get, %r|https://www.example.org/test|, :body => "example")
99
+ assert FakeWeb.registered_uri?(:get, "https://www.example.org:443/test")
100
+ assert !FakeWeb.registered_uri?(:get, "https://www.example.org:80/test")
101
+ assert !FakeWeb.registered_uri?(:get, "http://www.example.org:80/test")
102
+ end
103
+
104
+ def test_registry_matches_using_mismatched_port_when_registered_without
105
+ FakeWeb.register_uri(:get, %r|http://www.example.com|, :body => "example")
106
+ assert FakeWeb.registered_uri?(:get, "http://www.example.com:80")
107
+ assert FakeWeb.registered_uri?(:get, "http://www.example.com:443")
108
+ assert FakeWeb.registered_uri?(:get, "http://www.example.com:12345")
109
+ assert !FakeWeb.registered_uri?(:get, "https://www.example.com:443")
110
+ assert !FakeWeb.registered_uri?(:get, "https://www.example.com")
111
+ end
112
+
113
+ def test_registry_matches_using_default_port_for_protocol_when_registered_without_protocol_or_port
114
+ FakeWeb.register_uri(:get, %r|www.example.com/home|, :body => "example")
115
+ assert FakeWeb.registered_uri?(:get, "http://www.example.com/home")
116
+ assert FakeWeb.registered_uri?(:get, "https://www.example.com/home")
117
+ assert FakeWeb.registered_uri?(:get, "http://www.example.com:80/home")
118
+ assert FakeWeb.registered_uri?(:get, "https://www.example.com:443/home")
119
+ assert !FakeWeb.registered_uri?(:get, "https://www.example.com:80/home")
120
+ assert !FakeWeb.registered_uri?(:get, "http://www.example.com:443/home")
121
+ end
122
+
123
+ def test_registry_matches_with_query_params
124
+ FakeWeb.register_uri(:get, %r[example.com/list\?(.*&|)important=1], :body => "example")
125
+ assert FakeWeb.registered_uri?(:get, "http://example.com/list?hash=123&important=1&unimportant=2")
126
+ assert FakeWeb.registered_uri?(:get, "http://example.com/list?hash=123&important=12&unimportant=2")
127
+ assert FakeWeb.registered_uri?(:get, "http://example.com/list?important=1&unimportant=2")
128
+ assert !FakeWeb.registered_uri?(:get, "http://example.com/list?important=2")
129
+ assert !FakeWeb.registered_uri?(:get, "http://example.com/list?important=2&unimportant=1")
130
+ assert !FakeWeb.registered_uri?(:get, "http://example.com/list?hash=123&important=2&unimportant=1")
131
+ assert !FakeWeb.registered_uri?(:get, "http://example.com/list?notimportant=1&unimportant=1")
132
+ end
133
+
134
+ def test_registry_does_not_match_when_regex_has_unsorted_query_params
135
+ FakeWeb.register_uri(:get, %r[example\.com/list\?b=2&a=1], :body => "example")
136
+ assert !FakeWeb.registered_uri?(:get, "http://example.com/list?b=2&a=1")
137
+ assert !FakeWeb.registered_uri?(:get, "http://example.com/list?a=1&b=2")
138
+ assert !FakeWeb.registered_uri?(:get, "https://example.com:443/list?b=2&a=1")
139
+ end
140
+
141
+ def test_registry_matches_when_regex_has_sorted_query_params
142
+ FakeWeb.register_uri(:get, %r[example\.com/list\?a=1&b=2], :body => "example")
143
+ assert FakeWeb.registered_uri?(:get, "http://example.com/list?b=2&a=1")
144
+ assert FakeWeb.registered_uri?(:get, "http://example.com/list?a=1&b=2")
145
+ assert FakeWeb.registered_uri?(:get, "https://example.com:443/list?b=2&a=1")
146
+ end
147
+
148
+ def test_registry_matches_quickly_with_lots_of_query_params
149
+ # regression test for code that tried to calculate the permutations of the
150
+ # query params, which hangs with a large number of params
151
+ FakeWeb.register_uri(:get, %r[example.com], :body => "example")
152
+ Timeout::timeout(1) do
153
+ FakeWeb.registered_uri?(:get, "http://example.com/?a=1&b=2&c=3&d=4&e=5&f=6&g=7&h=8")
154
+ end
155
+ end
156
+
157
+ end
@@ -0,0 +1,79 @@
1
+ require 'test_helper'
2
+
3
+ class TestResponseHeaders < Test::Unit::TestCase
4
+ def test_content_type_when_registering_with_string_and_content_type_header_as_symbol_option
5
+ FakeWeb.register_uri(:get, "http://example.com/users.json", :body => '[{"username": "chrisk"}]', :content_type => "application/json")
6
+ response = Net::HTTP.start("example.com") { |query| query.get("/users.json") }
7
+ assert_equal '[{"username": "chrisk"}]', response.body
8
+ assert_equal "application/json", response['Content-Type']
9
+ end
10
+
11
+ def test_content_type_when_registering_with_string_and_content_type_header_as_string_option
12
+ FakeWeb.register_uri(:get, "http://example.com/users.json", :body => '[{"username": "chrisk"}]', 'Content-Type' => "application/json")
13
+ response = Net::HTTP.start("example.com") { |query| query.get("/users.json") }
14
+ assert_equal "application/json", response['Content-Type']
15
+ end
16
+
17
+ def test_content_type_when_registering_with_string_only
18
+ FakeWeb.register_uri(:get, "http://example.com/users.json", :body => '[{"username": "chrisk"}]')
19
+ response = Net::HTTP.start("example.com") { |query| query.get("/users.json") }
20
+ assert_equal '[{"username": "chrisk"}]', response.body
21
+ assert_nil response['Content-Type']
22
+ end
23
+
24
+ def test_cookies_when_registering_with_file_and_set_cookie_header
25
+ FakeWeb.register_uri(:get, "http://example.com/", :body => fixture_path("test_example.txt"),
26
+ :set_cookie => "user_id=1; example=yes")
27
+ response = Net::HTTP.start("example.com") { |query| query.get("/") }
28
+ assert_equal "test example content", response.body
29
+ assert_equal "user_id=1; example=yes", response['Set-Cookie']
30
+ end
31
+
32
+ def test_multiple_set_cookie_headers
33
+ FakeWeb.register_uri(:get, "http://example.com", :set_cookie => ["user_id=1", "example=yes"])
34
+ response = Net::HTTP.start("example.com") { |query| query.get("/") }
35
+ assert_equal ["user_id=1", "example=yes"], response.get_fields('Set-Cookie')
36
+ assert_equal "user_id=1, example=yes", response['Set-Cookie']
37
+ end
38
+
39
+ def test_registering_with_baked_response_ignores_header_options
40
+ fake_response = Net::HTTPOK.new('1.1', '200', 'OK')
41
+ fake_response["Server"] = "Apache/1.3.27 (Unix)"
42
+ FakeWeb.register_uri(:get, "http://example.com/", :response => fake_response,
43
+ :server => "FakeWeb/1.2.3 (Ruby)")
44
+ response = Net::HTTP.start("example.com") { |query| query.get("/") }
45
+ assert_equal "200", response.code
46
+ assert_equal "OK", response.message
47
+ assert_equal "Apache/1.3.27 (Unix)", response["Server"]
48
+ end
49
+
50
+ def test_headers_are_rotated_when_registering_with_response_rotation
51
+ FakeWeb.register_uri(:get, "http://example.com",
52
+ [{:body => 'test1', :expires => "Thu, 14 Jun 2009 16:00:00 GMT",
53
+ :content_type => "text/plain"},
54
+ {:body => 'test2', :expires => "Thu, 14 Jun 2009 16:00:01 GMT"}])
55
+
56
+ first_response = second_response = nil
57
+ Net::HTTP.start("example.com") do |query|
58
+ first_response = query.get("/")
59
+ second_response = query.get("/")
60
+ end
61
+ assert_equal 'test1', first_response.body
62
+ assert_equal "Thu, 14 Jun 2009 16:00:00 GMT", first_response['Expires']
63
+ assert_equal "text/plain", first_response['Content-Type']
64
+ assert_equal 'test2', second_response.body
65
+ assert_equal "Thu, 14 Jun 2009 16:00:01 GMT", second_response['Expires']
66
+ assert_nil second_response['Content-Type']
67
+ end
68
+
69
+ def test_registering_with_status_option_and_response_headers
70
+ FakeWeb.register_uri(:get, "http://example.com", :status => ["301", "Moved Permanently"],
71
+ :location => "http://www.example.com")
72
+
73
+ response = Net::HTTP.start("example.com") { |query| query.get("/") }
74
+ assert_equal "301", response.code
75
+ assert_equal "Moved Permanently", response.message
76
+ assert_equal "http://www.example.com", response["Location"]
77
+ end
78
+
79
+ end
@@ -0,0 +1,53 @@
1
+ require 'test_helper'
2
+
3
+ class TestFakeWebTrailingSlashes < Test::Unit::TestCase
4
+
5
+ def test_registering_root_without_slash_and_ask_predicate_method_with_slash
6
+ FakeWeb.register_uri(:get, "http://www.example.com", :body => "root")
7
+ assert FakeWeb.registered_uri?(:get, "http://www.example.com/")
8
+ end
9
+
10
+ def test_registering_root_without_slash_and_request
11
+ FakeWeb.register_uri(:get, "http://www.example.com", :body => "root")
12
+ response = Net::HTTP.start("www.example.com") { |query| query.get('/') }
13
+ assert_equal "root", response.body
14
+ end
15
+
16
+ def test_registering_root_with_slash_and_ask_predicate_method_without_slash
17
+ FakeWeb.register_uri(:get, "http://www.example.com/", :body => "root")
18
+ assert FakeWeb.registered_uri?(:get, "http://www.example.com")
19
+ end
20
+
21
+ def test_registering_root_with_slash_and_request
22
+ FakeWeb.register_uri(:get, "http://www.example.com/", :body => "root")
23
+ response = Net::HTTP.start("www.example.com") { |query| query.get('/') }
24
+ assert_equal "root", response.body
25
+ end
26
+
27
+ def test_registering_path_without_slash_and_ask_predicate_method_with_slash
28
+ FakeWeb.register_uri(:get, "http://www.example.com/users", :body => "User list")
29
+ assert !FakeWeb.registered_uri?(:get, "http://www.example.com/users/")
30
+ end
31
+
32
+ def test_registering_path_without_slash_and_request_with_slash
33
+ FakeWeb.allow_net_connect = false
34
+ FakeWeb.register_uri(:get, "http://www.example.com/users", :body => "User list")
35
+ assert_raise FakeWeb::NetConnectNotAllowedError do
36
+ response = Net::HTTP.start("www.example.com") { |query| query.get('/users/') }
37
+ end
38
+ end
39
+
40
+ def test_registering_path_with_slash_and_ask_predicate_method_without_slash
41
+ FakeWeb.register_uri(:get, "http://www.example.com/users/", :body => "User list")
42
+ assert !FakeWeb.registered_uri?(:get, "http://www.example.com/users")
43
+ end
44
+
45
+ def test_registering_path_with_slash_and_request_without_slash
46
+ FakeWeb.allow_net_connect = false
47
+ FakeWeb.register_uri(:get, "http://www.example.com/users/", :body => "User list")
48
+ assert_raise FakeWeb::NetConnectNotAllowedError do
49
+ response = Net::HTTP.start("www.example.com") { |query| query.get('/users') }
50
+ end
51
+ end
52
+
53
+ end