sshp 0.0.1

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 (940) hide show
  1. data/.gitignore +17 -0
  2. data/Gemfile +4 -0
  3. data/LICENSE.txt +22 -0
  4. data/README.md +35 -0
  5. data/Rakefile +1 -0
  6. data/bin/sshp +16 -0
  7. data/bin/sshp-alias +17 -0
  8. data/lib/sshp.rb +3 -0
  9. data/lib/sshp/alias.rb +27 -0
  10. data/lib/sshp/version.rb +3 -0
  11. data/spec/spec_helper.rb +12 -0
  12. data/spec/sshp/alias_spec.rb +33 -0
  13. data/sshp.gemspec +24 -0
  14. data/vendor/ruby/1.9.1/bin/autospec +23 -0
  15. data/vendor/ruby/1.9.1/bin/coderay +23 -0
  16. data/vendor/ruby/1.9.1/bin/htmldiff +25 -0
  17. data/vendor/ruby/1.9.1/bin/ldiff +25 -0
  18. data/vendor/ruby/1.9.1/bin/pry +23 -0
  19. data/vendor/ruby/1.9.1/bin/rake +23 -0
  20. data/vendor/ruby/1.9.1/bin/rspec +23 -0
  21. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/README_INDEX.rdoc +123 -0
  22. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/Rakefile +35 -0
  23. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/bin/coderay +215 -0
  24. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay.rb +285 -0
  25. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/duo.rb +81 -0
  26. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/encoder.rb +201 -0
  27. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/encoders/_map.rb +17 -0
  28. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/encoders/comment_filter.rb +25 -0
  29. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/encoders/count.rb +39 -0
  30. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/encoders/debug.rb +61 -0
  31. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/encoders/div.rb +23 -0
  32. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/encoders/filter.rb +58 -0
  33. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/encoders/html.rb +327 -0
  34. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/encoders/html/css.rb +65 -0
  35. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/encoders/html/numbering.rb +103 -0
  36. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/encoders/html/output.rb +166 -0
  37. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/encoders/json.rb +83 -0
  38. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/encoders/lines_of_code.rb +45 -0
  39. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/encoders/null.rb +18 -0
  40. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/encoders/page.rb +24 -0
  41. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/encoders/span.rb +23 -0
  42. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/encoders/statistic.rb +96 -0
  43. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/encoders/terminal.rb +179 -0
  44. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/encoders/text.rb +46 -0
  45. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/encoders/token_kind_filter.rb +111 -0
  46. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/encoders/xml.rb +72 -0
  47. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/encoders/yaml.rb +50 -0
  48. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/for_redcloth.rb +95 -0
  49. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/helpers/file_type.rb +143 -0
  50. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/helpers/gzip.rb +41 -0
  51. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/helpers/plugin.rb +283 -0
  52. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/helpers/word_list.rb +72 -0
  53. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/scanner.rb +323 -0
  54. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/scanners/_map.rb +24 -0
  55. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/scanners/c.rb +189 -0
  56. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/scanners/clojure.rb +217 -0
  57. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/scanners/cpp.rb +215 -0
  58. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/scanners/css.rb +199 -0
  59. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/scanners/debug.rb +65 -0
  60. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/scanners/delphi.rb +144 -0
  61. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/scanners/diff.rb +199 -0
  62. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/scanners/erb.rb +81 -0
  63. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/scanners/groovy.rb +255 -0
  64. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/scanners/haml.rb +168 -0
  65. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/scanners/html.rb +253 -0
  66. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/scanners/java.rb +174 -0
  67. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/scanners/java/builtin_types.rb +421 -0
  68. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/scanners/java_script.rb +213 -0
  69. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/scanners/json.rb +95 -0
  70. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/scanners/php.rb +509 -0
  71. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/scanners/python.rb +287 -0
  72. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/scanners/raydebug.rb +66 -0
  73. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/scanners/ruby.rb +470 -0
  74. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/scanners/ruby/patterns.rb +175 -0
  75. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/scanners/ruby/string_state.rb +71 -0
  76. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/scanners/sql.rb +174 -0
  77. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/scanners/text.rb +26 -0
  78. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/scanners/xml.rb +17 -0
  79. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/scanners/yaml.rb +140 -0
  80. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/style.rb +23 -0
  81. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/styles/_map.rb +7 -0
  82. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/styles/alpha.rb +142 -0
  83. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/token_kinds.rb +90 -0
  84. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/tokens.rb +215 -0
  85. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/tokens_proxy.rb +55 -0
  86. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/lib/coderay/version.rb +3 -0
  87. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/test/functional/basic.rb +320 -0
  88. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/test/functional/examples.rb +129 -0
  89. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/test/functional/for_redcloth.rb +84 -0
  90. data/vendor/ruby/1.9.1/gems/coderay-1.0.9/test/functional/suite.rb +15 -0
  91. data/vendor/ruby/1.9.1/gems/diff-lcs-1.2.4/.autotest +3 -0
  92. data/vendor/ruby/1.9.1/gems/diff-lcs-1.2.4/.gemtest +0 -0
  93. data/vendor/ruby/1.9.1/gems/diff-lcs-1.2.4/.hoerc +2 -0
  94. data/vendor/ruby/1.9.1/gems/diff-lcs-1.2.4/.travis.yml +22 -0
  95. data/vendor/ruby/1.9.1/gems/diff-lcs-1.2.4/Contributing.rdoc +64 -0
  96. data/vendor/ruby/1.9.1/gems/diff-lcs-1.2.4/Gemfile +20 -0
  97. data/vendor/ruby/1.9.1/gems/diff-lcs-1.2.4/History.rdoc +146 -0
  98. data/vendor/ruby/1.9.1/gems/diff-lcs-1.2.4/License.rdoc +39 -0
  99. data/vendor/ruby/1.9.1/gems/diff-lcs-1.2.4/Manifest.txt +38 -0
  100. data/vendor/ruby/1.9.1/gems/diff-lcs-1.2.4/README.rdoc +85 -0
  101. data/vendor/ruby/1.9.1/gems/diff-lcs-1.2.4/Rakefile +39 -0
  102. data/vendor/ruby/1.9.1/gems/diff-lcs-1.2.4/autotest/discover.rb +1 -0
  103. data/vendor/ruby/1.9.1/gems/diff-lcs-1.2.4/bin/htmldiff +32 -0
  104. data/vendor/ruby/1.9.1/gems/diff-lcs-1.2.4/bin/ldiff +6 -0
  105. data/vendor/ruby/1.9.1/gems/diff-lcs-1.2.4/docs/COPYING.txt +339 -0
  106. data/vendor/ruby/1.9.1/gems/diff-lcs-1.2.4/docs/artistic.txt +127 -0
  107. data/vendor/ruby/1.9.1/gems/diff-lcs-1.2.4/lib/diff-lcs.rb +3 -0
  108. data/vendor/ruby/1.9.1/gems/diff-lcs-1.2.4/lib/diff/lcs.rb +805 -0
  109. data/vendor/ruby/1.9.1/gems/diff-lcs-1.2.4/lib/diff/lcs/array.rb +7 -0
  110. data/vendor/ruby/1.9.1/gems/diff-lcs-1.2.4/lib/diff/lcs/block.rb +37 -0
  111. data/vendor/ruby/1.9.1/gems/diff-lcs-1.2.4/lib/diff/lcs/callbacks.rb +322 -0
  112. data/vendor/ruby/1.9.1/gems/diff-lcs-1.2.4/lib/diff/lcs/change.rb +177 -0
  113. data/vendor/ruby/1.9.1/gems/diff-lcs-1.2.4/lib/diff/lcs/htmldiff.rb +149 -0
  114. data/vendor/ruby/1.9.1/gems/diff-lcs-1.2.4/lib/diff/lcs/hunk.rb +276 -0
  115. data/vendor/ruby/1.9.1/gems/diff-lcs-1.2.4/lib/diff/lcs/internals.rb +301 -0
  116. data/vendor/ruby/1.9.1/gems/diff-lcs-1.2.4/lib/diff/lcs/ldiff.rb +195 -0
  117. data/vendor/ruby/1.9.1/gems/diff-lcs-1.2.4/lib/diff/lcs/string.rb +5 -0
  118. data/vendor/ruby/1.9.1/gems/diff-lcs-1.2.4/spec/change_spec.rb +65 -0
  119. data/vendor/ruby/1.9.1/gems/diff-lcs-1.2.4/spec/diff_spec.rb +47 -0
  120. data/vendor/ruby/1.9.1/gems/diff-lcs-1.2.4/spec/hunk_spec.rb +72 -0
  121. data/vendor/ruby/1.9.1/gems/diff-lcs-1.2.4/spec/issues_spec.rb +24 -0
  122. data/vendor/ruby/1.9.1/gems/diff-lcs-1.2.4/spec/lcs_spec.rb +54 -0
  123. data/vendor/ruby/1.9.1/gems/diff-lcs-1.2.4/spec/patch_spec.rb +414 -0
  124. data/vendor/ruby/1.9.1/gems/diff-lcs-1.2.4/spec/sdiff_spec.rb +202 -0
  125. data/vendor/ruby/1.9.1/gems/diff-lcs-1.2.4/spec/spec_helper.rb +290 -0
  126. data/vendor/ruby/1.9.1/gems/diff-lcs-1.2.4/spec/traverse_balanced_spec.rb +310 -0
  127. data/vendor/ruby/1.9.1/gems/diff-lcs-1.2.4/spec/traverse_sequences_spec.rb +139 -0
  128. data/vendor/ruby/1.9.1/gems/highline-1.6.19/.gitignore +2 -0
  129. data/vendor/ruby/1.9.1/gems/highline-1.6.19/AUTHORS +3 -0
  130. data/vendor/ruby/1.9.1/gems/highline-1.6.19/CHANGELOG +346 -0
  131. data/vendor/ruby/1.9.1/gems/highline-1.6.19/COPYING +340 -0
  132. data/vendor/ruby/1.9.1/gems/highline-1.6.19/INSTALL +55 -0
  133. data/vendor/ruby/1.9.1/gems/highline-1.6.19/LICENSE +7 -0
  134. data/vendor/ruby/1.9.1/gems/highline-1.6.19/README.rdoc +63 -0
  135. data/vendor/ruby/1.9.1/gems/highline-1.6.19/Rakefile +50 -0
  136. data/vendor/ruby/1.9.1/gems/highline-1.6.19/TODO +6 -0
  137. data/vendor/ruby/1.9.1/gems/highline-1.6.19/examples/ansi_colors.rb +38 -0
  138. data/vendor/ruby/1.9.1/gems/highline-1.6.19/examples/asking_for_arrays.rb +18 -0
  139. data/vendor/ruby/1.9.1/gems/highline-1.6.19/examples/basic_usage.rb +75 -0
  140. data/vendor/ruby/1.9.1/gems/highline-1.6.19/examples/color_scheme.rb +32 -0
  141. data/vendor/ruby/1.9.1/gems/highline-1.6.19/examples/get_character.rb +12 -0
  142. data/vendor/ruby/1.9.1/gems/highline-1.6.19/examples/limit.rb +12 -0
  143. data/vendor/ruby/1.9.1/gems/highline-1.6.19/examples/menus.rb +65 -0
  144. data/vendor/ruby/1.9.1/gems/highline-1.6.19/examples/overwrite.rb +19 -0
  145. data/vendor/ruby/1.9.1/gems/highline-1.6.19/examples/page_and_wrap.rb +322 -0
  146. data/vendor/ruby/1.9.1/gems/highline-1.6.19/examples/password.rb +7 -0
  147. data/vendor/ruby/1.9.1/gems/highline-1.6.19/examples/repeat_entry.rb +21 -0
  148. data/vendor/ruby/1.9.1/gems/highline-1.6.19/examples/trapping_eof.rb +22 -0
  149. data/vendor/ruby/1.9.1/gems/highline-1.6.19/examples/using_readline.rb +17 -0
  150. data/vendor/ruby/1.9.1/gems/highline-1.6.19/highline.gemspec +37 -0
  151. data/vendor/ruby/1.9.1/gems/highline-1.6.19/lib/highline.rb +1012 -0
  152. data/vendor/ruby/1.9.1/gems/highline-1.6.19/lib/highline/color_scheme.rb +134 -0
  153. data/vendor/ruby/1.9.1/gems/highline-1.6.19/lib/highline/compatibility.rb +16 -0
  154. data/vendor/ruby/1.9.1/gems/highline-1.6.19/lib/highline/import.rb +41 -0
  155. data/vendor/ruby/1.9.1/gems/highline-1.6.19/lib/highline/menu.rb +398 -0
  156. data/vendor/ruby/1.9.1/gems/highline-1.6.19/lib/highline/question.rb +475 -0
  157. data/vendor/ruby/1.9.1/gems/highline-1.6.19/lib/highline/simulate.rb +48 -0
  158. data/vendor/ruby/1.9.1/gems/highline-1.6.19/lib/highline/string_extensions.rb +131 -0
  159. data/vendor/ruby/1.9.1/gems/highline-1.6.19/lib/highline/style.rb +181 -0
  160. data/vendor/ruby/1.9.1/gems/highline-1.6.19/lib/highline/system_extensions.rb +222 -0
  161. data/vendor/ruby/1.9.1/gems/highline-1.6.19/setup.rb +1360 -0
  162. data/vendor/ruby/1.9.1/gems/highline-1.6.19/site/.cvsignore +1 -0
  163. data/vendor/ruby/1.9.1/gems/highline-1.6.19/site/highline.css +65 -0
  164. data/vendor/ruby/1.9.1/gems/highline-1.6.19/site/images/logo.png +0 -0
  165. data/vendor/ruby/1.9.1/gems/highline-1.6.19/site/index.html +58 -0
  166. data/vendor/ruby/1.9.1/gems/highline-1.6.19/test/string_methods.rb +32 -0
  167. data/vendor/ruby/1.9.1/gems/highline-1.6.19/test/tc_color_scheme.rb +96 -0
  168. data/vendor/ruby/1.9.1/gems/highline-1.6.19/test/tc_highline.rb +1128 -0
  169. data/vendor/ruby/1.9.1/gems/highline-1.6.19/test/tc_import.rb +52 -0
  170. data/vendor/ruby/1.9.1/gems/highline-1.6.19/test/tc_menu.rb +439 -0
  171. data/vendor/ruby/1.9.1/gems/highline-1.6.19/test/tc_string_extension.rb +20 -0
  172. data/vendor/ruby/1.9.1/gems/highline-1.6.19/test/tc_string_highline.rb +38 -0
  173. data/vendor/ruby/1.9.1/gems/highline-1.6.19/test/tc_style.rb +567 -0
  174. data/vendor/ruby/1.9.1/gems/highline-1.6.19/test/ts_all.rb +16 -0
  175. data/vendor/ruby/1.9.1/gems/method_source-0.8.1/.gemtest +0 -0
  176. data/vendor/ruby/1.9.1/gems/method_source-0.8.1/.travis.yml +17 -0
  177. data/vendor/ruby/1.9.1/gems/method_source-0.8.1/.yardopts +1 -0
  178. data/vendor/ruby/1.9.1/gems/method_source-0.8.1/Gemfile +2 -0
  179. data/vendor/ruby/1.9.1/gems/method_source-0.8.1/LICENSE +25 -0
  180. data/vendor/ruby/1.9.1/gems/method_source-0.8.1/README.markdown +91 -0
  181. data/vendor/ruby/1.9.1/gems/method_source-0.8.1/Rakefile +79 -0
  182. data/vendor/ruby/1.9.1/gems/method_source-0.8.1/lib/method_source.rb +141 -0
  183. data/vendor/ruby/1.9.1/gems/method_source-0.8.1/lib/method_source/code_helpers.rb +139 -0
  184. data/vendor/ruby/1.9.1/gems/method_source-0.8.1/lib/method_source/source_location.rb +138 -0
  185. data/vendor/ruby/1.9.1/gems/method_source-0.8.1/lib/method_source/version.rb +3 -0
  186. data/vendor/ruby/1.9.1/gems/method_source-0.8.1/method_source.gemspec +33 -0
  187. data/vendor/ruby/1.9.1/gems/method_source-0.8.1/test/test.rb +138 -0
  188. data/vendor/ruby/1.9.1/gems/method_source-0.8.1/test/test_code_helpers.rb +41 -0
  189. data/vendor/ruby/1.9.1/gems/method_source-0.8.1/test/test_helper.rb +98 -0
  190. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/.document +2 -0
  191. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/.gitignore +16 -0
  192. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/.travis.yml +21 -0
  193. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/.yardopts +1 -0
  194. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/CHANGELOG +534 -0
  195. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/CONTRIBUTORS +55 -0
  196. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/Gemfile +9 -0
  197. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/Guardfile +62 -0
  198. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/LICENSE +25 -0
  199. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/README.markdown +400 -0
  200. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/Rakefile +140 -0
  201. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/TODO +117 -0
  202. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/bin/pry +16 -0
  203. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry.rb +271 -0
  204. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/cli.rb +202 -0
  205. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/code.rb +385 -0
  206. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/code/code_range.rb +70 -0
  207. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/code/loc.rb +92 -0
  208. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/code_object.rb +153 -0
  209. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/command.rb +689 -0
  210. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/command_set.rb +400 -0
  211. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands.rb +6 -0
  212. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/amend_line.rb +99 -0
  213. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/bang.rb +20 -0
  214. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/bang_pry.rb +17 -0
  215. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/cat.rb +53 -0
  216. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/cat/abstract_formatter.rb +27 -0
  217. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/cat/exception_formatter.rb +78 -0
  218. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/cat/file_formatter.rb +84 -0
  219. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/cat/input_expression_formatter.rb +43 -0
  220. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/cd.rb +30 -0
  221. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/code_collector.rb +165 -0
  222. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/disable_pry.rb +27 -0
  223. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/disabled_commands.rb +2 -0
  224. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/easter_eggs.rb +112 -0
  225. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/edit.rb +207 -0
  226. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/edit/exception_patcher.rb +25 -0
  227. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/edit/file_and_line_locator.rb +38 -0
  228. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/edit/method_patcher.rb +122 -0
  229. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/exit.rb +42 -0
  230. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/exit_all.rb +29 -0
  231. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/exit_program.rb +24 -0
  232. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/find_method.rb +199 -0
  233. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/fix_indent.rb +19 -0
  234. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/gem_cd.rb +26 -0
  235. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/gem_install.rb +29 -0
  236. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/gem_list.rb +33 -0
  237. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/gem_open.rb +29 -0
  238. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/gist.rb +102 -0
  239. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/help.rb +164 -0
  240. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/hist.rb +161 -0
  241. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/import_set.rb +22 -0
  242. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/install_command.rb +51 -0
  243. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/jump_to.rb +29 -0
  244. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/ls.rb +338 -0
  245. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/nesting.rb +25 -0
  246. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/play.rb +69 -0
  247. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/pry_backtrace.rb +26 -0
  248. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/pry_version.rb +17 -0
  249. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/raise_up.rb +32 -0
  250. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/reload_code.rb +65 -0
  251. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/reset.rb +18 -0
  252. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/ri.rb +56 -0
  253. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/save_file.rb +61 -0
  254. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/shell_command.rb +43 -0
  255. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/shell_mode.rb +27 -0
  256. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/show_doc.rb +78 -0
  257. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/show_info.rb +200 -0
  258. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/show_input.rb +17 -0
  259. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/show_source.rb +38 -0
  260. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/simple_prompt.rb +22 -0
  261. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/stat.rb +40 -0
  262. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/switch_to.rb +23 -0
  263. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/toggle_color.rb +20 -0
  264. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/whereami.rb +182 -0
  265. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/commands/wtf.rb +57 -0
  266. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/completion.rb +304 -0
  267. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/config.rb +244 -0
  268. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/core_extensions.rb +121 -0
  269. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/custom_completions.rb +6 -0
  270. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/editor.rb +129 -0
  271. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/helpers.rb +5 -0
  272. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/helpers/base_helpers.rb +200 -0
  273. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/helpers/command_helpers.rb +154 -0
  274. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/helpers/documentation_helpers.rb +76 -0
  275. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/helpers/options_helpers.rb +27 -0
  276. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/helpers/table.rb +109 -0
  277. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/helpers/text.rb +108 -0
  278. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/history.rb +122 -0
  279. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/history_array.rb +116 -0
  280. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/hooks.rb +250 -0
  281. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/indent.rb +406 -0
  282. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/method.rb +551 -0
  283. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/method/disowned.rb +53 -0
  284. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/method/weird_method_locator.rb +186 -0
  285. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/module_candidate.rb +146 -0
  286. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/pager.rb +90 -0
  287. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/plugins.rb +103 -0
  288. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/pry_class.rb +469 -0
  289. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/pry_instance.rb +763 -0
  290. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/rbx_method.rb +13 -0
  291. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/rbx_path.rb +22 -0
  292. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/repl_file_loader.rb +80 -0
  293. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/rubygem.rb +74 -0
  294. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/terminal.rb +78 -0
  295. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/test/helper.rb +185 -0
  296. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/version.rb +3 -0
  297. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/lib/pry/wrapped_module.rb +383 -0
  298. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/man/pry.1 +195 -0
  299. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/man/pry.1.html +204 -0
  300. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/man/pry.1.ronn +141 -0
  301. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/pry.gemspec +30 -0
  302. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/Procfile +3 -0
  303. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/cli_spec.rb +78 -0
  304. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/code_object_spec.rb +277 -0
  305. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/code_spec.rb +219 -0
  306. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/command_helpers_spec.rb +29 -0
  307. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/command_integration_spec.rb +644 -0
  308. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/command_set_spec.rb +627 -0
  309. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/command_spec.rb +821 -0
  310. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/commands/amend_line_spec.rb +247 -0
  311. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/commands/bang_spec.rb +19 -0
  312. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/commands/cat_spec.rb +164 -0
  313. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/commands/cd_spec.rb +250 -0
  314. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/commands/disable_pry_spec.rb +25 -0
  315. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/commands/edit_spec.rb +727 -0
  316. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/commands/exit_all_spec.rb +34 -0
  317. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/commands/exit_program_spec.rb +19 -0
  318. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/commands/exit_spec.rb +34 -0
  319. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/commands/find_method_spec.rb +70 -0
  320. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/commands/gem_list_spec.rb +26 -0
  321. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/commands/gist_spec.rb +79 -0
  322. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/commands/help_spec.rb +56 -0
  323. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/commands/hist_spec.rb +181 -0
  324. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/commands/jump_to_spec.rb +15 -0
  325. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/commands/ls_spec.rb +181 -0
  326. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/commands/play_spec.rb +140 -0
  327. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/commands/raise_up_spec.rb +56 -0
  328. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/commands/save_file_spec.rb +177 -0
  329. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/commands/show_doc_spec.rb +510 -0
  330. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/commands/show_input_spec.rb +17 -0
  331. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/commands/show_source_spec.rb +782 -0
  332. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/commands/whereami_spec.rb +203 -0
  333. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/completion_spec.rb +239 -0
  334. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/control_d_handler_spec.rb +58 -0
  335. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/documentation_helper_spec.rb +73 -0
  336. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/editor_spec.rb +79 -0
  337. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/exception_whitelist_spec.rb +21 -0
  338. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/fixtures/candidate_helper1.rb +11 -0
  339. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/fixtures/candidate_helper2.rb +8 -0
  340. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/fixtures/example.erb +5 -0
  341. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/fixtures/example_nesting.rb +33 -0
  342. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/fixtures/show_source_doc_examples.rb +15 -0
  343. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/fixtures/testrc +2 -0
  344. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/fixtures/testrcbad +2 -0
  345. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/fixtures/whereami_helper.rb +6 -0
  346. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/helper.rb +34 -0
  347. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/helpers/bacon.rb +86 -0
  348. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/helpers/mock_pry.rb +43 -0
  349. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/helpers/table_spec.rb +105 -0
  350. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/history_array_spec.rb +67 -0
  351. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/hooks_spec.rb +522 -0
  352. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/indent_spec.rb +301 -0
  353. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/input_stack_spec.rb +90 -0
  354. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/method_spec.rb +482 -0
  355. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/prompt_spec.rb +60 -0
  356. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/pry_defaults_spec.rb +419 -0
  357. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/pry_history_spec.rb +99 -0
  358. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/pry_output_spec.rb +95 -0
  359. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/pry_spec.rb +504 -0
  360. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/run_command_spec.rb +25 -0
  361. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/sticky_locals_spec.rb +157 -0
  362. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/syntax_checking_spec.rb +81 -0
  363. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/spec/wrapped_module_spec.rb +261 -0
  364. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/wiki/Customizing-pry.md +397 -0
  365. data/vendor/ruby/1.9.1/gems/pry-0.9.12.2/wiki/Home.md +4 -0
  366. data/vendor/ruby/1.9.1/gems/rake-10.0.4/.gemtest +0 -0
  367. data/vendor/ruby/1.9.1/gems/rake-10.0.4/CHANGES +530 -0
  368. data/vendor/ruby/1.9.1/gems/rake-10.0.4/MIT-LICENSE +21 -0
  369. data/vendor/ruby/1.9.1/gems/rake-10.0.4/README.rdoc +187 -0
  370. data/vendor/ruby/1.9.1/gems/rake-10.0.4/Rakefile +375 -0
  371. data/vendor/ruby/1.9.1/gems/rake-10.0.4/TODO +21 -0
  372. data/vendor/ruby/1.9.1/gems/rake-10.0.4/bin/rake +33 -0
  373. data/vendor/ruby/1.9.1/gems/rake-10.0.4/install.rb +90 -0
  374. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake.rb +71 -0
  375. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/alt_system.rb +109 -0
  376. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/application.rb +681 -0
  377. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/backtrace.rb +19 -0
  378. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/clean.rb +32 -0
  379. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/cloneable.rb +16 -0
  380. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/contrib/compositepublisher.rb +21 -0
  381. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/contrib/ftptools.rb +151 -0
  382. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/contrib/publisher.rb +73 -0
  383. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/contrib/rubyforgepublisher.rb +16 -0
  384. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/contrib/sshpublisher.rb +50 -0
  385. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/contrib/sys.rb +1 -0
  386. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/default_loader.rb +10 -0
  387. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/dsl_definition.rb +156 -0
  388. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/early_time.rb +18 -0
  389. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/ext/core.rb +27 -0
  390. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/ext/module.rb +0 -0
  391. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/ext/string.rb +168 -0
  392. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/ext/time.rb +15 -0
  393. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/file_creation_task.rb +24 -0
  394. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/file_list.rb +410 -0
  395. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/file_task.rb +47 -0
  396. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/file_utils.rb +114 -0
  397. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/file_utils_ext.rb +143 -0
  398. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/gempackagetask.rb +1 -0
  399. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/invocation_chain.rb +51 -0
  400. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/invocation_exception_mixin.rb +16 -0
  401. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/loaders/makefile.rb +40 -0
  402. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/multi_task.rb +13 -0
  403. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/name_space.rb +25 -0
  404. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/packagetask.rb +185 -0
  405. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/pathmap.rb +1 -0
  406. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/phony.rb +15 -0
  407. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/private_reader.rb +20 -0
  408. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/promise.rb +99 -0
  409. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/pseudo_status.rb +24 -0
  410. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/rake_module.rb +37 -0
  411. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/rake_test_loader.rb +22 -0
  412. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/rdoctask.rb +1 -0
  413. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/ruby182_test_unit_fix.rb +25 -0
  414. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/rule_recursion_overflow_error.rb +20 -0
  415. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/runtest.rb +22 -0
  416. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/task.rb +368 -0
  417. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/task_argument_error.rb +7 -0
  418. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/task_arguments.rb +78 -0
  419. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/task_manager.rb +296 -0
  420. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/tasklib.rb +22 -0
  421. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/testtask.rb +198 -0
  422. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/thread_history_display.rb +48 -0
  423. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/thread_pool.rb +155 -0
  424. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/trace_output.rb +22 -0
  425. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/version.rb +13 -0
  426. data/vendor/ruby/1.9.1/gems/rake-10.0.4/lib/rake/win32.rb +55 -0
  427. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/file_creation.rb +34 -0
  428. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/helper.rb +562 -0
  429. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_private_reader.rb +42 -0
  430. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_rake.rb +40 -0
  431. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_rake_application.rb +515 -0
  432. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_rake_application_options.rb +455 -0
  433. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_rake_backtrace.rb +89 -0
  434. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_rake_clean.rb +14 -0
  435. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_rake_definitions.rb +80 -0
  436. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_rake_directory_task.rb +57 -0
  437. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_rake_dsl.rb +40 -0
  438. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_rake_early_time.rb +31 -0
  439. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_rake_extension.rb +59 -0
  440. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_rake_file_creation_task.rb +56 -0
  441. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_rake_file_list.rb +628 -0
  442. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_rake_file_list_path_map.rb +8 -0
  443. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_rake_file_task.rb +122 -0
  444. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_rake_file_utils.rb +305 -0
  445. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_rake_ftp_file.rb +59 -0
  446. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_rake_functional.rb +496 -0
  447. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_rake_invocation_chain.rb +52 -0
  448. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_rake_makefile_loader.rb +44 -0
  449. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_rake_multi_task.rb +59 -0
  450. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_rake_name_space.rb +43 -0
  451. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_rake_package_task.rb +79 -0
  452. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_rake_path_map.rb +157 -0
  453. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_rake_path_map_explode.rb +34 -0
  454. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_rake_path_map_partial.rb +18 -0
  455. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_rake_pseudo_status.rb +21 -0
  456. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_rake_rake_test_loader.rb +21 -0
  457. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_rake_reduce_compat.rb +30 -0
  458. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_rake_require.rb +40 -0
  459. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_rake_rules.rb +327 -0
  460. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_rake_task.rb +340 -0
  461. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_rake_task_argument_parsing.rb +103 -0
  462. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_rake_task_arguments.rb +88 -0
  463. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_rake_task_lib.rb +9 -0
  464. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_rake_task_manager.rb +157 -0
  465. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_rake_task_manager_argument_resolution.rb +19 -0
  466. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_rake_task_with_arguments.rb +171 -0
  467. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_rake_test_task.rb +120 -0
  468. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_rake_thread_pool.rb +122 -0
  469. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_rake_top_level_functions.rb +71 -0
  470. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_rake_win32.rb +72 -0
  471. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_thread_history_display.rb +91 -0
  472. data/vendor/ruby/1.9.1/gems/rake-10.0.4/test/test_trace_output.rb +50 -0
  473. data/vendor/ruby/1.9.1/gems/rspec-2.13.0/License.txt +24 -0
  474. data/vendor/ruby/1.9.1/gems/rspec-2.13.0/README.md +47 -0
  475. data/vendor/ruby/1.9.1/gems/rspec-2.13.0/lib/rspec.rb +4 -0
  476. data/vendor/ruby/1.9.1/gems/rspec-2.13.0/lib/rspec/version.rb +5 -0
  477. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/.document +5 -0
  478. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/.yardopts +6 -0
  479. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/Changelog.md +718 -0
  480. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/License.txt +24 -0
  481. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/README.md +261 -0
  482. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/exe/autospec +13 -0
  483. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/exe/rspec +25 -0
  484. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/Autotest.md +38 -0
  485. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/README.md +17 -0
  486. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/Upgrade.md +364 -0
  487. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/command_line/README.md +28 -0
  488. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/command_line/example_name_option.feature +97 -0
  489. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/command_line/exit_status.feature +82 -0
  490. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/command_line/format_option.feature +81 -0
  491. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/command_line/init.feature +18 -0
  492. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/command_line/line_number_appended_to_path.feature +140 -0
  493. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/command_line/line_number_option.feature +58 -0
  494. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/command_line/order.feature +29 -0
  495. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/command_line/pattern_option.feature +31 -0
  496. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/command_line/rake_task.feature +122 -0
  497. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/command_line/ruby.feature +22 -0
  498. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/command_line/tag.feature +98 -0
  499. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/configuration/alias_example_to.feature +48 -0
  500. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/configuration/backtrace_clean_patterns.feature +102 -0
  501. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/configuration/custom_settings.feature +84 -0
  502. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/configuration/default_path.feature +38 -0
  503. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/configuration/fail_fast.feature +77 -0
  504. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/configuration/failure_exit_code.feature +36 -0
  505. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/configuration/order_and_seed.feature +3 -0
  506. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/configuration/output_stream.feature +24 -0
  507. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/configuration/pattern.feature +30 -0
  508. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/configuration/profile.feature +163 -0
  509. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/configuration/read_options_from_file.feature +87 -0
  510. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/configuration/run_all_when_everything_filtered.feature +60 -0
  511. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/configuration/show_failures_in_pending_blocks.feature +61 -0
  512. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/configuration/treat_symbols_as_metadata_keys_with_true_values.feature +52 -0
  513. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/example_groups/basic_structure.feature +55 -0
  514. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/example_groups/shared_context.feature +74 -0
  515. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/example_groups/shared_examples.feature +222 -0
  516. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/expectation_framework_integration/configure_expectation_framework.feature +102 -0
  517. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/filtering/exclusion_filters.feature +138 -0
  518. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/filtering/if_and_unless.feature +168 -0
  519. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/filtering/inclusion_filters.feature +105 -0
  520. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/filtering/run_all_when_everything_filtered.feature +46 -0
  521. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/formatters/configurable_colors.feature +31 -0
  522. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/formatters/custom_formatter.feature +36 -0
  523. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/formatters/json_formatter.feature +30 -0
  524. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/formatters/text_formatter.feature +46 -0
  525. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/helper_methods/arbitrary_methods.feature +40 -0
  526. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/helper_methods/let.feature +50 -0
  527. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/helper_methods/modules.feature +149 -0
  528. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/hooks/around_hooks.feature +343 -0
  529. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/hooks/before_and_after_hooks.feature +427 -0
  530. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/hooks/filtering.feature +234 -0
  531. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/metadata/current_example.feature +17 -0
  532. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/metadata/described_class.feature +17 -0
  533. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/metadata/user_defined.feature +113 -0
  534. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/mock_framework_integration/use_any_framework.feature +106 -0
  535. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/mock_framework_integration/use_flexmock.feature +96 -0
  536. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/mock_framework_integration/use_mocha.feature +97 -0
  537. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/mock_framework_integration/use_rr.feature +98 -0
  538. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/mock_framework_integration/use_rspec.feature +97 -0
  539. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/pending/pending_examples.feature +229 -0
  540. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/spec_files/arbitrary_file_suffix.feature +13 -0
  541. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/step_definitions/additional_cli_steps.rb +49 -0
  542. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/subject/attribute_of_subject.feature +124 -0
  543. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/subject/explicit_subject.feature +101 -0
  544. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/subject/implicit_receiver.feature +29 -0
  545. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/subject/implicit_subject.feature +63 -0
  546. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/features/support/env.rb +14 -0
  547. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/autotest/discover.rb +1 -0
  548. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/autotest/rspec2.rb +73 -0
  549. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/autorun.rb +2 -0
  550. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core.rb +146 -0
  551. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/backward_compatibility.rb +65 -0
  552. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/command_line.rb +36 -0
  553. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/configuration.rb +1087 -0
  554. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/configuration_options.rb +144 -0
  555. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/deprecation.rb +36 -0
  556. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/drb_command_line.rb +26 -0
  557. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/drb_options.rb +87 -0
  558. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/dsl.rb +26 -0
  559. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/example.rb +331 -0
  560. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/example_group.rb +478 -0
  561. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/extensions/instance_eval_with_args.rb +44 -0
  562. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/extensions/kernel.rb +9 -0
  563. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/extensions/module_eval_with_args.rb +38 -0
  564. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/extensions/ordered.rb +27 -0
  565. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/filter_manager.rb +203 -0
  566. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/formatters.rb +55 -0
  567. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/formatters/base_formatter.rb +237 -0
  568. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/formatters/base_text_formatter.rb +292 -0
  569. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/formatters/documentation_formatter.rb +67 -0
  570. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/formatters/helpers.rb +103 -0
  571. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/formatters/html_formatter.rb +154 -0
  572. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/formatters/html_printer.rb +407 -0
  573. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/formatters/json_formatter.rb +73 -0
  574. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/formatters/progress_formatter.rb +32 -0
  575. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/formatters/snippet_extractor.rb +92 -0
  576. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/formatters/text_mate_formatter.rb +34 -0
  577. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/hooks.rb +489 -0
  578. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/load_path.rb +3 -0
  579. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/memoized_helpers.rb +501 -0
  580. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/metadata.rb +297 -0
  581. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/metadata_hash_builder.rb +97 -0
  582. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/mocking/with_absolutely_nothing.rb +11 -0
  583. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/mocking/with_flexmock.rb +27 -0
  584. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/mocking/with_mocha.rb +52 -0
  585. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/mocking/with_rr.rb +27 -0
  586. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/mocking/with_rspec.rb +27 -0
  587. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/option_parser.rb +208 -0
  588. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/pending.rb +108 -0
  589. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/project_initializer.rb +86 -0
  590. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/rake_task.rb +202 -0
  591. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/reporter.rb +102 -0
  592. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/ruby_project.rb +44 -0
  593. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/runner.rb +87 -0
  594. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/shared_context.rb +49 -0
  595. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/shared_example_group.rb +144 -0
  596. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/version.rb +7 -0
  597. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/lib/rspec/core/world.rb +128 -0
  598. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/autotest/discover_spec.rb +19 -0
  599. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/autotest/failed_results_re_spec.rb +45 -0
  600. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/autotest/rspec_spec.rb +133 -0
  601. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/command_line/order_spec.rb +204 -0
  602. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/command_line_spec.rb +108 -0
  603. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/command_line_spec_output.txt +0 -0
  604. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/configuration_options_spec.rb +398 -0
  605. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/configuration_spec.rb +1376 -0
  606. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/deprecations_spec.rb +75 -0
  607. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/drb_command_line_spec.rb +102 -0
  608. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/drb_options_spec.rb +193 -0
  609. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/dsl_spec.rb +25 -0
  610. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/example_group_spec.rb +1176 -0
  611. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/example_spec.rb +418 -0
  612. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/filter_manager_spec.rb +246 -0
  613. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/formatters/base_formatter_spec.rb +108 -0
  614. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/formatters/base_text_formatter_spec.rb +429 -0
  615. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/formatters/documentation_formatter_spec.rb +88 -0
  616. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/formatters/helpers_spec.rb +78 -0
  617. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/formatters/html_formatted-1.8.7-jruby.html +398 -0
  618. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/formatters/html_formatted-1.8.7-rbx.html +577 -0
  619. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/formatters/html_formatted-1.8.7.html +409 -0
  620. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/formatters/html_formatted-1.9.2.html +416 -0
  621. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/formatters/html_formatted-1.9.3-jruby.html +410 -0
  622. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/formatters/html_formatted-1.9.3-rbx.html +577 -0
  623. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/formatters/html_formatted-1.9.3.html +416 -0
  624. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/formatters/html_formatted-2.0.0.html +416 -0
  625. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/formatters/html_formatter_spec.rb +94 -0
  626. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/formatters/json_formatter_spec.rb +110 -0
  627. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/formatters/progress_formatter_spec.rb +30 -0
  628. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/formatters/snippet_extractor_spec.rb +26 -0
  629. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/formatters/text_mate_formatted-1.8.7-jruby.html +398 -0
  630. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/formatters/text_mate_formatted-1.8.7-rbx.html +577 -0
  631. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/formatters/text_mate_formatted-1.8.7.html +409 -0
  632. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/formatters/text_mate_formatted-1.9.2.html +416 -0
  633. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/formatters/text_mate_formatted-1.9.3-jruby.html +398 -0
  634. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/formatters/text_mate_formatted-1.9.3-rbx.html +577 -0
  635. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/formatters/text_mate_formatted-1.9.3.html +416 -0
  636. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/formatters/text_mate_formatted-2.0.0.html +416 -0
  637. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/formatters/text_mate_formatter_spec.rb +95 -0
  638. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/hooks_filtering_spec.rb +227 -0
  639. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/hooks_spec.rb +267 -0
  640. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/kernel_extensions_spec.rb +9 -0
  641. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/memoized_helpers_spec.rb +642 -0
  642. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/metadata_spec.rb +486 -0
  643. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/option_parser_spec.rb +208 -0
  644. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/pending_example_spec.rb +220 -0
  645. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/project_initializer_spec.rb +130 -0
  646. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/rake_task_spec.rb +181 -0
  647. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/reporter_spec.rb +120 -0
  648. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/resources/a_bar.rb +0 -0
  649. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/resources/a_foo.rb +0 -0
  650. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/resources/a_spec.rb +1 -0
  651. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/resources/custom_example_group_runner.rb +14 -0
  652. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/resources/formatter_specs.rb +60 -0
  653. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/resources/utf8_encoded.rb +8 -0
  654. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/rspec_matchers_spec.rb +45 -0
  655. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/ruby_project_spec.rb +26 -0
  656. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/runner_spec.rb +82 -0
  657. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/shared_context_spec.rb +94 -0
  658. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/shared_example_group_spec.rb +96 -0
  659. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core/world_spec.rb +144 -0
  660. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/rspec/core_spec.rb +35 -0
  661. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/spec_helper.rb +132 -0
  662. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/support/config_options_helper.rb +15 -0
  663. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/support/helper_methods.rb +18 -0
  664. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/support/isolated_directory.rb +10 -0
  665. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/support/isolated_home_directory.rb +16 -0
  666. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/support/matchers.rb +65 -0
  667. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/support/shared_example_groups.rb +41 -0
  668. data/vendor/ruby/1.9.1/gems/rspec-core-2.13.1/spec/support/spec_files.rb +44 -0
  669. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/.document +5 -0
  670. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/.yardopts +6 -0
  671. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/Changelog.md +328 -0
  672. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/License.txt +23 -0
  673. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/README.md +228 -0
  674. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/features/README.md +49 -0
  675. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/features/Upgrade.md +53 -0
  676. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/features/built_in_matchers/README.md +90 -0
  677. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/features/built_in_matchers/be.feature +175 -0
  678. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/features/built_in_matchers/be_within.feature +48 -0
  679. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/features/built_in_matchers/cover.feature +47 -0
  680. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/features/built_in_matchers/end_with.feature +48 -0
  681. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/features/built_in_matchers/equality.feature +139 -0
  682. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/features/built_in_matchers/exist.feature +45 -0
  683. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/features/built_in_matchers/expect_change.feature +59 -0
  684. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/features/built_in_matchers/expect_error.feature +144 -0
  685. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/features/built_in_matchers/have.feature +109 -0
  686. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/features/built_in_matchers/include.feature +174 -0
  687. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/features/built_in_matchers/match.feature +52 -0
  688. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/features/built_in_matchers/operators.feature +227 -0
  689. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/features/built_in_matchers/predicates.feature +137 -0
  690. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/features/built_in_matchers/respond_to.feature +84 -0
  691. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/features/built_in_matchers/satisfy.feature +33 -0
  692. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/features/built_in_matchers/start_with.feature +48 -0
  693. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/features/built_in_matchers/throw_symbol.feature +91 -0
  694. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/features/built_in_matchers/types.feature +116 -0
  695. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/features/built_in_matchers/yield.feature +146 -0
  696. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/features/custom_matchers/access_running_example.feature +53 -0
  697. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/features/custom_matchers/define_diffable_matcher.feature +27 -0
  698. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/features/custom_matchers/define_matcher.feature +368 -0
  699. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/features/custom_matchers/define_matcher_outside_rspec.feature +38 -0
  700. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/features/custom_matchers/define_matcher_with_fluent_interface.feature +24 -0
  701. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/features/customized_message.feature +22 -0
  702. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/features/diffing.feature +85 -0
  703. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/features/implicit_docstrings.feature +52 -0
  704. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/features/step_definitions/additional_cli_steps.rb +22 -0
  705. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/features/support/env.rb +5 -0
  706. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/features/syntax_configuration.feature +68 -0
  707. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/features/test_frameworks/test_unit.feature +46 -0
  708. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec-expectations.rb +1 -0
  709. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/expectations.rb +47 -0
  710. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/expectations/deprecation.rb +38 -0
  711. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/expectations/differ.rb +115 -0
  712. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/expectations/errors.rb +9 -0
  713. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/expectations/expectation_target.rb +88 -0
  714. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/expectations/extensions.rb +2 -0
  715. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/expectations/extensions/array.rb +9 -0
  716. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/expectations/extensions/object.rb +39 -0
  717. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/expectations/fail_with.rb +69 -0
  718. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/expectations/handler.rb +63 -0
  719. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/expectations/syntax.rb +164 -0
  720. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/expectations/version.rb +8 -0
  721. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/matchers.rb +699 -0
  722. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/matchers/be_close.rb +9 -0
  723. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/matchers/built_in.rb +39 -0
  724. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/matchers/built_in/base_matcher.rb +68 -0
  725. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/matchers/built_in/be.rb +189 -0
  726. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/matchers/built_in/be_instance_of.rb +15 -0
  727. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/matchers/built_in/be_kind_of.rb +11 -0
  728. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/matchers/built_in/be_within.rb +55 -0
  729. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/matchers/built_in/change.rb +133 -0
  730. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/matchers/built_in/cover.rb +21 -0
  731. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/matchers/built_in/eq.rb +22 -0
  732. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/matchers/built_in/eql.rb +23 -0
  733. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/matchers/built_in/equal.rb +48 -0
  734. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/matchers/built_in/exist.rb +26 -0
  735. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/matchers/built_in/has.rb +48 -0
  736. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/matchers/built_in/have.rb +108 -0
  737. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/matchers/built_in/include.rb +69 -0
  738. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/matchers/built_in/match.rb +12 -0
  739. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/matchers/built_in/match_array.rb +51 -0
  740. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/matchers/built_in/raise_error.rb +107 -0
  741. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/matchers/built_in/respond_to.rb +74 -0
  742. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/matchers/built_in/satisfy.rb +30 -0
  743. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/matchers/built_in/start_and_end_with.rb +48 -0
  744. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/matchers/built_in/throw_symbol.rb +94 -0
  745. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/matchers/built_in/yield.rb +221 -0
  746. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/matchers/compatibility.rb +14 -0
  747. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/matchers/configuration.rb +108 -0
  748. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/matchers/dsl.rb +24 -0
  749. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/matchers/extensions/instance_eval_with_args.rb +39 -0
  750. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/matchers/generated_descriptions.rb +35 -0
  751. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/matchers/matcher.rb +300 -0
  752. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/matchers/method_missing.rb +12 -0
  753. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/matchers/operator_matcher.rb +109 -0
  754. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/lib/rspec/matchers/pretty.rb +64 -0
  755. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/rspec/expectations/differ_spec.rb +170 -0
  756. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/rspec/expectations/expectation_target_spec.rb +75 -0
  757. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/rspec/expectations/extensions/kernel_spec.rb +67 -0
  758. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/rspec/expectations/fail_with_spec.rb +95 -0
  759. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/rspec/expectations/handler_spec.rb +206 -0
  760. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/rspec/expectations/syntax_spec.rb +97 -0
  761. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/rspec/matchers/base_matcher_spec.rb +62 -0
  762. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/rspec/matchers/be_close_spec.rb +22 -0
  763. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/rspec/matchers/be_instance_of_spec.rb +63 -0
  764. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/rspec/matchers/be_kind_of_spec.rb +41 -0
  765. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/rspec/matchers/be_spec.rb +516 -0
  766. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/rspec/matchers/be_within_spec.rb +129 -0
  767. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/rspec/matchers/change_spec.rb +542 -0
  768. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/rspec/matchers/configuration_spec.rb +238 -0
  769. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/rspec/matchers/cover_spec.rb +69 -0
  770. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/rspec/matchers/description_generation_spec.rb +176 -0
  771. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/rspec/matchers/dsl_spec.rb +57 -0
  772. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/rspec/matchers/eq_spec.rb +60 -0
  773. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/rspec/matchers/eql_spec.rb +41 -0
  774. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/rspec/matchers/equal_spec.rb +78 -0
  775. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/rspec/matchers/exist_spec.rb +124 -0
  776. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/rspec/matchers/has_spec.rb +122 -0
  777. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/rspec/matchers/have_spec.rb +445 -0
  778. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/rspec/matchers/include_matcher_integration_spec.rb +30 -0
  779. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/rspec/matchers/include_spec.rb +531 -0
  780. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/rspec/matchers/match_array_spec.rb +194 -0
  781. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/rspec/matchers/match_spec.rb +61 -0
  782. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/rspec/matchers/matcher_spec.rb +471 -0
  783. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/rspec/matchers/matchers_spec.rb +37 -0
  784. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/rspec/matchers/method_missing_spec.rb +28 -0
  785. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/rspec/matchers/operator_matcher_spec.rb +223 -0
  786. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/rspec/matchers/raise_error_spec.rb +395 -0
  787. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/rspec/matchers/respond_to_spec.rb +292 -0
  788. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/rspec/matchers/satisfy_spec.rb +44 -0
  789. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/rspec/matchers/start_with_end_with_spec.rb +186 -0
  790. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/rspec/matchers/throw_symbol_spec.rb +116 -0
  791. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/rspec/matchers/yield_spec.rb +437 -0
  792. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/spec_helper.rb +54 -0
  793. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/support/classes.rb +56 -0
  794. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/support/in_sub_process.rb +38 -0
  795. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/support/matchers.rb +22 -0
  796. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/support/ruby_version.rb +10 -0
  797. data/vendor/ruby/1.9.1/gems/rspec-expectations-2.13.0/spec/support/shared_examples.rb +13 -0
  798. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/.document +5 -0
  799. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/.yardopts +6 -0
  800. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/Changelog.md +306 -0
  801. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/License.txt +23 -0
  802. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/README.md +315 -0
  803. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/features/README.md +67 -0
  804. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/features/Scope.md +17 -0
  805. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/features/Upgrade.md +22 -0
  806. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/features/argument_matchers/README.md +27 -0
  807. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/features/argument_matchers/explicit.feature +60 -0
  808. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/features/argument_matchers/general_matchers.feature +85 -0
  809. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/features/argument_matchers/type_matchers.feature +27 -0
  810. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/features/message_expectations/README.md +73 -0
  811. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/features/message_expectations/any_instance.feature +21 -0
  812. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/features/message_expectations/block_local_expectations.feature.pending +55 -0
  813. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/features/message_expectations/call_original.feature +24 -0
  814. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/features/message_expectations/expect_message.feature +94 -0
  815. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/features/message_expectations/receive_counts.feature +209 -0
  816. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/features/message_expectations/warn_when_expectation_is_set_on_nil.feature +50 -0
  817. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/features/method_stubs/README.md +47 -0
  818. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/features/method_stubs/any_instance.feature +132 -0
  819. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/features/method_stubs/as_null_object.feature +35 -0
  820. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/features/method_stubs/simple_return_value.feature +64 -0
  821. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/features/method_stubs/stub_chain.feature +51 -0
  822. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/features/method_stubs/stub_implementation.feature +26 -0
  823. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/features/method_stubs/to_ary.feature +47 -0
  824. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/features/mutating_constants/README.md +82 -0
  825. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/features/mutating_constants/hiding_defined_constant.feature +64 -0
  826. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/features/mutating_constants/stub_defined_constant.feature +79 -0
  827. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/features/mutating_constants/stub_undefined_constant.feature +50 -0
  828. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/features/outside_rspec/configuration.feature +82 -0
  829. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/features/outside_rspec/standalone.feature +33 -0
  830. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/features/step_definitions/additional_cli_steps.rb +4 -0
  831. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/features/support/env.rb +13 -0
  832. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/lib/rspec/mocks.rb +82 -0
  833. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/lib/rspec/mocks/any_instance.rb +81 -0
  834. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/lib/rspec/mocks/any_instance/chain.rb +78 -0
  835. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/lib/rspec/mocks/any_instance/expectation_chain.rb +66 -0
  836. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/lib/rspec/mocks/any_instance/message_chains.rb +60 -0
  837. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/lib/rspec/mocks/any_instance/recorder.rb +204 -0
  838. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/lib/rspec/mocks/any_instance/stub_chain.rb +37 -0
  839. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/lib/rspec/mocks/any_instance/stub_chain_chain.rb +25 -0
  840. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/lib/rspec/mocks/argument_list_matcher.rb +93 -0
  841. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/lib/rspec/mocks/argument_matchers.rb +238 -0
  842. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/lib/rspec/mocks/configuration.rb +28 -0
  843. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/lib/rspec/mocks/error_generator.rb +120 -0
  844. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/lib/rspec/mocks/errors.rb +12 -0
  845. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/lib/rspec/mocks/example_methods.rb +120 -0
  846. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/lib/rspec/mocks/extensions/instance_exec.rb +34 -0
  847. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/lib/rspec/mocks/extensions/marshal.rb +23 -0
  848. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/lib/rspec/mocks/extensions/psych.rb +23 -0
  849. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/lib/rspec/mocks/framework.rb +22 -0
  850. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/lib/rspec/mocks/instance_method_stasher.rb +85 -0
  851. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/lib/rspec/mocks/message_expectation.rb +567 -0
  852. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/lib/rspec/mocks/method_double.rb +267 -0
  853. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/lib/rspec/mocks/methods.rb +155 -0
  854. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/lib/rspec/mocks/mock.rb +7 -0
  855. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/lib/rspec/mocks/mutate_const.rb +415 -0
  856. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/lib/rspec/mocks/order_group.rb +40 -0
  857. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/lib/rspec/mocks/proxy.rb +205 -0
  858. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/lib/rspec/mocks/serialization.rb +34 -0
  859. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/lib/rspec/mocks/space.rb +34 -0
  860. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/lib/rspec/mocks/standalone.rb +3 -0
  861. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/lib/rspec/mocks/test_double.rb +103 -0
  862. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/lib/rspec/mocks/version.rb +7 -0
  863. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/lib/spec/mocks.rb +6 -0
  864. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/and_call_original_spec.rb +235 -0
  865. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/and_yield_spec.rb +127 -0
  866. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/any_instance/message_chains_spec.rb +40 -0
  867. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/any_instance_spec.rb +925 -0
  868. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/any_number_of_times_spec.rb +30 -0
  869. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/argument_expectation_spec.rb +34 -0
  870. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/at_least_spec.rb +142 -0
  871. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/at_most_spec.rb +90 -0
  872. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/block_return_value_spec.rb +53 -0
  873. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/bug_report_10260_spec.rb +8 -0
  874. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/bug_report_10263_spec.rb +27 -0
  875. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/bug_report_11545_spec.rb +32 -0
  876. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/bug_report_496_spec.rb +17 -0
  877. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/bug_report_600_spec.rb +22 -0
  878. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/bug_report_7611_spec.rb +16 -0
  879. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/bug_report_8165_spec.rb +31 -0
  880. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/bug_report_830_spec.rb +21 -0
  881. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/bug_report_957_spec.rb +22 -0
  882. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/combining_implementation_instructions_spec.rb +197 -0
  883. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/configuration_spec.rb +26 -0
  884. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/double_spec.rb +12 -0
  885. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/failing_argument_matchers_spec.rb +94 -0
  886. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/hash_excluding_matcher_spec.rb +67 -0
  887. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/hash_including_matcher_spec.rb +90 -0
  888. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/instance_method_stasher_spec.rb +58 -0
  889. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/mock_ordering_spec.rb +103 -0
  890. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/mock_space_spec.rb +58 -0
  891. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/mock_spec.rb +734 -0
  892. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/multiple_return_value_spec.rb +132 -0
  893. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/mutate_const_spec.rb +481 -0
  894. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/nil_expectation_warning_spec.rb +62 -0
  895. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/null_object_mock_spec.rb +107 -0
  896. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/once_counts_spec.rb +52 -0
  897. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/options_hash_spec.rb +35 -0
  898. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/partial_mock_spec.rb +196 -0
  899. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/partial_mock_using_mocks_directly_spec.rb +95 -0
  900. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/passing_argument_matchers_spec.rb +142 -0
  901. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/precise_counts_spec.rb +68 -0
  902. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/record_messages_spec.rb +26 -0
  903. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/serialization_spec.rb +110 -0
  904. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/stash_spec.rb +54 -0
  905. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/stub_chain_spec.rb +154 -0
  906. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/stub_implementation_spec.rb +81 -0
  907. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/stub_spec.rb +279 -0
  908. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/stubbed_message_expectations_spec.rb +58 -0
  909. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/test_double_spec.rb +57 -0
  910. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/to_ary_spec.rb +40 -0
  911. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks/twice_counts_spec.rb +66 -0
  912. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/rspec/mocks_spec.rb +67 -0
  913. data/vendor/ruby/1.9.1/gems/rspec-mocks-2.13.1/spec/spec_helper.rb +36 -0
  914. data/vendor/ruby/1.9.1/gems/slop-3.4.5/.gitignore +7 -0
  915. data/vendor/ruby/1.9.1/gems/slop-3.4.5/.travis.yml +12 -0
  916. data/vendor/ruby/1.9.1/gems/slop-3.4.5/CHANGES.md +290 -0
  917. data/vendor/ruby/1.9.1/gems/slop-3.4.5/Gemfile +3 -0
  918. data/vendor/ruby/1.9.1/gems/slop-3.4.5/LICENSE +20 -0
  919. data/vendor/ruby/1.9.1/gems/slop-3.4.5/README.md +182 -0
  920. data/vendor/ruby/1.9.1/gems/slop-3.4.5/Rakefile +29 -0
  921. data/vendor/ruby/1.9.1/gems/slop-3.4.5/lib/slop.rb +689 -0
  922. data/vendor/ruby/1.9.1/gems/slop-3.4.5/lib/slop/commands.rb +196 -0
  923. data/vendor/ruby/1.9.1/gems/slop-3.4.5/lib/slop/option.rb +208 -0
  924. data/vendor/ruby/1.9.1/gems/slop-3.4.5/slop.gemspec +17 -0
  925. data/vendor/ruby/1.9.1/gems/slop-3.4.5/test/commands_test.rb +26 -0
  926. data/vendor/ruby/1.9.1/gems/slop-3.4.5/test/helper.rb +12 -0
  927. data/vendor/ruby/1.9.1/gems/slop-3.4.5/test/option_test.rb +134 -0
  928. data/vendor/ruby/1.9.1/gems/slop-3.4.5/test/slop_test.rb +497 -0
  929. data/vendor/ruby/1.9.1/specifications/coderay-1.0.9.gemspec +32 -0
  930. data/vendor/ruby/1.9.1/specifications/diff-lcs-1.2.4.gemspec +64 -0
  931. data/vendor/ruby/1.9.1/specifications/highline-1.6.19.gemspec +30 -0
  932. data/vendor/ruby/1.9.1/specifications/method_source-0.8.1.gemspec +31 -0
  933. data/vendor/ruby/1.9.1/specifications/pry-0.9.12.2.gemspec +54 -0
  934. data/vendor/ruby/1.9.1/specifications/rake-10.0.4.gemspec +35 -0
  935. data/vendor/ruby/1.9.1/specifications/rspec-2.13.0.gemspec +39 -0
  936. data/vendor/ruby/1.9.1/specifications/rspec-core-2.13.1.gemspec +58 -0
  937. data/vendor/ruby/1.9.1/specifications/rspec-expectations-2.13.0.gemspec +40 -0
  938. data/vendor/ruby/1.9.1/specifications/rspec-mocks-2.13.1.gemspec +37 -0
  939. data/vendor/ruby/1.9.1/specifications/slop-3.4.5.gemspec +33 -0
  940. metadata +1105 -0
@@ -0,0 +1,3 @@
1
+ source "https://rubygems.org"
2
+
3
+ gemspec
@@ -0,0 +1,20 @@
1
+ Copyright (c) 2012 Lee Jarvis
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining
4
+ a copy of this software and associated documentation files (the
5
+ "Software"), to deal in the Software without restriction, including
6
+ without limitation the rights to use, copy, modify, merge, publish,
7
+ distribute, sublicense, and/or sell copies of the Software, and to
8
+ permit persons to whom the Software is furnished to do so, subject to
9
+ the following conditions:
10
+
11
+ The above copyright notice and this permission notice shall be
12
+ included in all copies or substantial portions of the Software.
13
+
14
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -0,0 +1,182 @@
1
+ Slop
2
+ ====
3
+
4
+ Slop is a simple option parser with an easy to remember syntax and friendly API.
5
+ API Documentation is available [here](http://injekt.github.com/rdoc/slop/).
6
+
7
+ [![Build Status](https://secure.travis-ci.org/injekt/slop.png)](http://travis-ci.org/injekt/slop)
8
+
9
+ Usage
10
+ -----
11
+
12
+ ```ruby
13
+ opts = Slop.parse do
14
+ banner 'Usage: foo.rb [options]'
15
+
16
+ on 'name=', 'Your name'
17
+ on 'p', 'password', 'An optional password', argument: :optional
18
+ on 'v', 'verbose', 'Enable verbose mode'
19
+ end
20
+
21
+ # if ARGV is `--name Lee -v`
22
+ opts.verbose? #=> true
23
+ opts.password? #=> false
24
+ opts[:name] #=> 'lee'
25
+ opts.to_hash #=> {:name=>"Lee", :password=>nil, :verbose=>true}
26
+ ```
27
+
28
+ Installation
29
+ ------------
30
+
31
+ gem install slop
32
+
33
+ Printing Help
34
+ -------------
35
+
36
+ Slop attempts to build a good looking help string to print to your users. You
37
+ can see this by calling `opts.help` or simply `puts opts`.
38
+
39
+ Configuration Options
40
+ ---------------------
41
+
42
+ All of these options can be sent to `Slop.new` or `Slop.parse` in Hash form.
43
+
44
+ * `strict` - Enable strict mode. When processing unknown options, Slop will
45
+ raise an `InvalidOptionError`. **default:** *false*.
46
+ * `help` - Automatically add the `--help` option. **default:** *false*.
47
+ * `banner` - Set this options banner text. **default:** *nil*.
48
+ * `ignore_case` - When enabled, `-A` will look for the `-a` option if `-A`
49
+ does not exist. **default:** *false*.
50
+ * `autocreate` - Autocreate options on the fly. **default:** *false*.
51
+ * `arguments` - Force all options to expect arguments. **default:** *false*.
52
+ * `optional_arguments` - Force all options to accept optional arguments.
53
+ **default:** *false*.
54
+ * `multiple_switches` - When disabled, Slop will parse `-abc` as the option `a`
55
+ with the argument `bc` rather than 3 separate options. **default:** *true*.
56
+ * `longest_flag` - The longest string flag, used to aid configuring help
57
+ text. **default:** *0*.
58
+
59
+ Lists
60
+ -----
61
+
62
+ ```ruby
63
+ opts = Slop.parse do
64
+ on :list=, as: Array
65
+ end
66
+ # ruby run.rb --list one,two
67
+ opts[:list] #=> ["one", "two"]
68
+ # ruby run.rb --list one,two --list three
69
+ opts[:list] #=> ["one", "two", "three"]
70
+ ```
71
+
72
+ You can also specify a delimiter and limit.
73
+
74
+ ```ruby
75
+ opts = Slop.parse do
76
+ on :list=, as: Array, delimiter: ':', limit: 2
77
+ end
78
+ # ruby run.rb --list one:two:three
79
+ opts[:list] #=> ["one", "two:three"]
80
+ ```
81
+
82
+ Ranges
83
+ ------
84
+
85
+ ```ruby
86
+ opts = Slop.parse do
87
+ on :range=, as: Range
88
+ end
89
+ # ruby run.rb --range 1..10
90
+ opts[:range] #=> 1..10
91
+ # ruby run.rb --range 1...10
92
+ opts[:range] #=> 1...10
93
+ # ruby run.rb --range 1-10
94
+ opts[:range] #=> 1..10
95
+ # ruby run.rb --range 1,10
96
+ opts[:range] #=> 1..10
97
+ ```
98
+
99
+ Autocreate
100
+ ----------
101
+
102
+ Slop has an 'autocreate' feature. This feature is intended to create
103
+ options on the fly, without having to specify them yourself. In some case,
104
+ uses this code could be all you need in your application:
105
+
106
+ ```ruby
107
+ # ruby run.rb --foo bar --baz --name lee
108
+ opts = Slop.parse(autocreate: true)
109
+ opts.to_hash #=> {:foo=>"bar", :baz=>true, :name=>"lee"}
110
+ opts.fetch_option(:name).expects_argument? #=> true
111
+ ```
112
+
113
+ Commands
114
+ --------
115
+
116
+ Slop supports git style sub-commands, like so:
117
+
118
+ ```ruby
119
+ opts = Slop.parse do
120
+ on '-v', 'Print the version' do
121
+ puts "Version 1.0"
122
+ end
123
+
124
+ command 'add' do
125
+ on :v, :verbose, 'Enable verbose mode'
126
+ on :name, 'Your name'
127
+
128
+ run do |opts, args|
129
+ puts "You ran 'add' with options #{opts.to_hash} and args: #{args.inspect}"
130
+ end
131
+ end
132
+ end
133
+
134
+ # ruby run.rb -v
135
+ #=> Version 1.0
136
+ # ruby run.rb add -v foo --name Lee
137
+ #=> You ran 'add' with options {:verbose=>true,:name=>"Lee"} and args ["foo"]
138
+ opts.to_hash(true) # Pass true to tell Slop to merge sub-command option values.
139
+ # => { :v => nil, :add => { :v => true, :name => "Lee" } }
140
+ ```
141
+
142
+ Woah woah, why you hating on OptionParser?
143
+ ------------------------------------------
144
+
145
+ I'm not, honestly! I love OptionParser. I really do, it's a fantastic library.
146
+ So why did I build Slop? Well, I find myself using OptionParser to simply
147
+ gather a bunch of key/value options, usually you would do something like this:
148
+
149
+ ```ruby
150
+ require 'optparse'
151
+
152
+ things = {}
153
+
154
+ opt = OptionParser.new do |opt|
155
+ opt.on('-n', '--name NAME', 'Your name') do |name|
156
+ things[:name] = name
157
+ end
158
+
159
+ opt.on('-a', '--age AGE', 'Your age') do |age|
160
+ things[:age] = age.to_i
161
+ end
162
+
163
+ # you get the point
164
+ end
165
+
166
+ opt.parse
167
+ things #=> { :name => 'lee', :age => 105 }
168
+ ```
169
+
170
+ Which is all great and stuff, but it can lead to some repetition. The same
171
+ thing in Slop:
172
+
173
+ ```ruby
174
+ require 'slop'
175
+
176
+ opts = Slop.parse do
177
+ on :n, :name=, 'Your name'
178
+ on :a, :age=, 'Your age', as: Integer
179
+ end
180
+
181
+ opts.to_hash #=> { :name => 'lee', :age => 105 }
182
+ ```
@@ -0,0 +1,29 @@
1
+ begin
2
+ require 'bundler/gem_tasks'
3
+ rescue LoadError
4
+ end
5
+
6
+ require 'rake/testtask'
7
+
8
+ Rake::TestTask.new do |t|
9
+ t.libs << 'test'
10
+ t.test_files = Dir['test/*_test.rb']
11
+ end
12
+
13
+ # begin
14
+ # require 'rdoc/task'
15
+
16
+ # # requires sdoc and horo gems
17
+ # RDoc::Task.new do |rdoc|
18
+ # rdoc.title = 'Slop API Documentation'
19
+ # rdoc.rdoc_dir = 'doc'
20
+ # rdoc.options << '-f' << 'sdoc'
21
+ # rdoc.options << '-T' << 'rails'
22
+ # rdoc.options << '-e' << 'UTF-8'
23
+ # rdoc.options << '-g'
24
+ # rdoc.rdoc_files.include('lib/**/*.rb')
25
+ # end
26
+ # rescue LoadError
27
+ # end
28
+
29
+ task :default => :test
@@ -0,0 +1,689 @@
1
+ require 'slop/option'
2
+ require 'slop/commands'
3
+
4
+ class Slop
5
+ include Enumerable
6
+
7
+ VERSION = '3.4.5'
8
+
9
+ # The main Error class, all Exception classes inherit from this class.
10
+ class Error < StandardError; end
11
+
12
+ # Raised when an option argument is expected but none are given.
13
+ class MissingArgumentError < Error; end
14
+
15
+ # Raised when an option is expected/required but not present.
16
+ class MissingOptionError < Error; end
17
+
18
+ # Raised when an argument does not match its intended match constraint.
19
+ class InvalidArgumentError < Error; end
20
+
21
+ # Raised when an invalid option is found and the strict flag is enabled.
22
+ class InvalidOptionError < Error; end
23
+
24
+ # Raised when an invalid command is found and the strict flag is enabled.
25
+ class InvalidCommandError < Error; end
26
+
27
+ # Returns a default Hash of configuration options this Slop instance uses.
28
+ DEFAULT_OPTIONS = {
29
+ :strict => false,
30
+ :help => false,
31
+ :banner => nil,
32
+ :ignore_case => false,
33
+ :autocreate => false,
34
+ :arguments => false,
35
+ :optional_arguments => false,
36
+ :multiple_switches => true,
37
+ :longest_flag => 0
38
+ }
39
+
40
+ class << self
41
+
42
+ # items - The Array of items to extract options from (default: ARGV).
43
+ # config - The Hash of configuration options to send to Slop.new().
44
+ # block - An optional block used to add options.
45
+ #
46
+ # Examples:
47
+ #
48
+ # Slop.parse(ARGV, :help => true) do
49
+ # on '-n', '--name', 'Your username', :argument => true
50
+ # end
51
+ #
52
+ # Returns a new instance of Slop.
53
+ def parse(items = ARGV, config = {}, &block)
54
+ parse! items.dup, config, &block
55
+ end
56
+
57
+ # items - The Array of items to extract options from (default: ARGV).
58
+ # config - The Hash of configuration options to send to Slop.new().
59
+ # block - An optional block used to add options.
60
+ #
61
+ # Returns a new instance of Slop.
62
+ def parse!(items = ARGV, config = {}, &block)
63
+ config, items = items, ARGV if items.is_a?(Hash) && config.empty?
64
+ slop = new config, &block
65
+ slop.parse! items
66
+ slop
67
+ end
68
+
69
+ # Build a Slop object from a option specification.
70
+ #
71
+ # This allows you to design your options via a simple String rather
72
+ # than programatically. Do note though that with this method, you're
73
+ # unable to pass any advanced options to the on() method when creating
74
+ # options.
75
+ #
76
+ # string - The optspec String
77
+ # config - A Hash of configuration options to pass to Slop.new
78
+ #
79
+ # Examples:
80
+ #
81
+ # opts = Slop.optspec(<<-SPEC)
82
+ # ruby foo.rb [options]
83
+ # ---
84
+ # n,name= Your name
85
+ # a,age= Your age
86
+ # A,auth Sign in with auth
87
+ # p,passcode= Your secret pass code
88
+ # SPEC
89
+ #
90
+ # opts.fetch_option(:name).description #=> "Your name"
91
+ #
92
+ # Returns a new instance of Slop.
93
+ def optspec(string, config = {})
94
+ warn "[DEPRECATED] `Slop.optspec` is deprecated and will be removed in version 4"
95
+ config[:banner], optspec = string.split(/^--+$/, 2) if string[/^--+$/]
96
+ lines = optspec.split("\n").reject(&:empty?)
97
+ opts = Slop.new(config)
98
+
99
+ lines.each do |line|
100
+ opt, description = line.split(' ', 2)
101
+ short, long = opt.split(',').map { |s| s.sub(/\A--?/, '') }
102
+ opt = opts.on(short, long, description)
103
+
104
+ if long && long.end_with?('=')
105
+ long.sub!(/\=$/, '')
106
+ opt.config[:argument] = true
107
+ end
108
+ end
109
+
110
+ opts
111
+ end
112
+
113
+ end
114
+
115
+ # The Hash of configuration options for this Slop instance.
116
+ attr_reader :config
117
+
118
+ # The Array of Slop::Option objects tied to this Slop instance.
119
+ attr_reader :options
120
+
121
+ # The Hash of sub-commands for this Slop instance.
122
+ attr_reader :commands
123
+
124
+ # Create a new instance of Slop and optionally build options via a block.
125
+ #
126
+ # config - A Hash of configuration options.
127
+ # block - An optional block used to specify options.
128
+ def initialize(config = {}, &block)
129
+ @config = DEFAULT_OPTIONS.merge(config)
130
+ @options = []
131
+ @commands = {}
132
+ @trash = []
133
+ @triggered_options = []
134
+ @unknown_options = []
135
+ @callbacks = {}
136
+ @separators = {}
137
+ @runner = nil
138
+ @command = config.delete(:command)
139
+
140
+ if block_given?
141
+ block.arity == 1 ? yield(self) : instance_eval(&block)
142
+ end
143
+
144
+ if config[:help]
145
+ on('-h', '--help', 'Display this help message.', :tail => true) do
146
+ puts help
147
+ exit
148
+ end
149
+ end
150
+ end
151
+
152
+ # Is strict mode enabled?
153
+ #
154
+ # Returns true if strict mode is enabled, false otherwise.
155
+ def strict?
156
+ config[:strict]
157
+ end
158
+
159
+ # Set the banner.
160
+ #
161
+ # banner - The String to set the banner.
162
+ def banner=(banner)
163
+ config[:banner] = banner
164
+ end
165
+
166
+ # Get or set the banner.
167
+ #
168
+ # banner - The String to set the banner.
169
+ #
170
+ # Returns the banner String.
171
+ def banner(banner = nil)
172
+ config[:banner] = banner if banner
173
+ config[:banner]
174
+ end
175
+
176
+ # Set the description (used for commands).
177
+ #
178
+ # desc - The String to set the description.
179
+ def description=(desc)
180
+ config[:description] = desc
181
+ end
182
+
183
+ # Get or set the description (used for commands).
184
+ #
185
+ # desc - The String to set the description.
186
+ #
187
+ # Returns the description String.
188
+ def description(desc = nil)
189
+ config[:description] = desc if desc
190
+ config[:description]
191
+ end
192
+
193
+ # Add a new command.
194
+ #
195
+ # command - The Symbol or String used to identify this command.
196
+ # options - A Hash of configuration options (see Slop::new)
197
+ #
198
+ # Returns a new instance of Slop mapped to this command.
199
+ def command(command, options = {}, &block)
200
+ options = @config.merge(options)
201
+ @commands[command.to_s] = Slop.new(options.merge(:command => command.to_s), &block)
202
+ end
203
+
204
+ # Parse a list of items, executing and gathering options along the way.
205
+ #
206
+ # items - The Array of items to extract options from (default: ARGV).
207
+ # block - An optional block which when used will yield non options.
208
+ #
209
+ # Returns an Array of original items.
210
+ def parse(items = ARGV, &block)
211
+ parse! items.dup, &block
212
+ items
213
+ end
214
+
215
+ # Parse a list of items, executing and gathering options along the way.
216
+ # unlike parse() this method will remove any options and option arguments
217
+ # from the original Array.
218
+ #
219
+ # items - The Array of items to extract options from (default: ARGV).
220
+ # block - An optional block which when used will yield non options.
221
+ #
222
+ # Returns an Array of original items with options removed.
223
+ def parse!(items = ARGV, &block)
224
+ if items.empty? && @callbacks[:empty]
225
+ @callbacks[:empty].each { |cb| cb.call(self) }
226
+ return items
227
+ end
228
+
229
+ if cmd = @commands[items[0]]
230
+ items.shift
231
+ return cmd.parse! items
232
+ end
233
+
234
+ items.each_with_index do |item, index|
235
+ @trash << index && break if item == '--'
236
+ autocreate(items, index) if config[:autocreate]
237
+ process_item(items, index, &block) unless @trash.include?(index)
238
+ end
239
+ items.reject!.with_index { |item, index| @trash.include?(index) }
240
+
241
+ missing_options = options.select { |opt| opt.required? && opt.count < 1 }
242
+ if missing_options.any?
243
+ raise MissingOptionError,
244
+ "Missing required option(s): #{missing_options.map(&:key).join(', ')}"
245
+ end
246
+
247
+ if @unknown_options.any?
248
+ raise InvalidOptionError, "Unknown options #{@unknown_options.join(', ')}"
249
+ end
250
+
251
+ if @triggered_options.empty? && @callbacks[:no_options]
252
+ @callbacks[:no_options].each { |cb| cb.call(self) }
253
+ end
254
+
255
+ if @runner.respond_to?(:call)
256
+ @runner.call(self, items) unless config[:help] and present?(:help)
257
+ end
258
+
259
+ items
260
+ end
261
+
262
+ # Add an Option.
263
+ #
264
+ # objects - An Array with an optional Hash as the last element.
265
+ #
266
+ # Examples:
267
+ #
268
+ # on '-u', '--username=', 'Your username'
269
+ # on :v, :verbose, 'Enable verbose mode'
270
+ #
271
+ # Returns the created instance of Slop::Option.
272
+ def on(*objects, &block)
273
+ option = build_option(objects, &block)
274
+ original = options.find do |o|
275
+ o.long and o.long == option.long or o.short and o.short == option.short
276
+ end
277
+ options.delete(original) if original
278
+ options << option
279
+ option
280
+ end
281
+ alias option on
282
+ alias opt on
283
+
284
+ # Fetch an options argument value.
285
+ #
286
+ # key - The Symbol or String option short or long flag.
287
+ #
288
+ # Returns the Object value for this option, or nil.
289
+ def [](key)
290
+ option = fetch_option(key)
291
+ option.value if option
292
+ end
293
+ alias get []
294
+
295
+ # Returns a new Hash with option flags as keys and option values as values.
296
+ #
297
+ # include_commands - If true, merge options from all sub-commands.
298
+ def to_hash(include_commands = false)
299
+ hash = Hash[options.map { |opt| [opt.key.to_sym, opt.value] }]
300
+ if include_commands
301
+ @commands.each { |cmd, opts| hash.merge!(cmd.to_sym => opts.to_hash) }
302
+ end
303
+ hash
304
+ end
305
+ alias to_h to_hash
306
+
307
+ # Enumerable interface. Yields each Slop::Option.
308
+ def each(&block)
309
+ options.each(&block)
310
+ end
311
+
312
+ # Specify code to be executed when these options are parsed.
313
+ #
314
+ # callable - An object responding to a call method.
315
+ #
316
+ # yields - The instance of Slop parsing these options
317
+ # An Array of unparsed arguments
318
+ #
319
+ # Example:
320
+ #
321
+ # Slop.parse do
322
+ # on :v, :verbose
323
+ #
324
+ # run do |opts, args|
325
+ # puts "Arguments: #{args.inspect}" if opts.verbose?
326
+ # end
327
+ # end
328
+ def run(callable = nil, &block)
329
+ @runner = callable || block
330
+ unless @runner.respond_to?(:call)
331
+ raise ArgumentError, "You must specify a callable object or a block to #run"
332
+ end
333
+ end
334
+
335
+ # Check for an options presence.
336
+ #
337
+ # Examples:
338
+ #
339
+ # opts.parse %w( --foo )
340
+ # opts.present?(:foo) #=> true
341
+ # opts.present?(:bar) #=> false
342
+ #
343
+ # Returns true if all of the keys are present in the parsed arguments.
344
+ def present?(*keys)
345
+ keys.all? { |key| (opt = fetch_option(key)) && opt.count > 0 }
346
+ end
347
+
348
+ # Override this method so we can check if an option? method exists.
349
+ #
350
+ # Returns true if this option key exists in our list of options.
351
+ def respond_to_missing?(method_name, include_private = false)
352
+ options.any? { |o| o.key == method_name.to_s.chop } || super
353
+ end
354
+
355
+ # Fetch a list of options which were missing from the parsed list.
356
+ #
357
+ # Examples:
358
+ #
359
+ # opts = Slop.new do
360
+ # on :n, :name=
361
+ # on :p, :password=
362
+ # end
363
+ #
364
+ # opts.parse %w[ --name Lee ]
365
+ # opts.missing #=> ['password']
366
+ #
367
+ # Returns an Array of Strings representing missing options.
368
+ def missing
369
+ (options - @triggered_options).map(&:key)
370
+ end
371
+
372
+ # Fetch a Slop::Option object.
373
+ #
374
+ # key - The Symbol or String option key.
375
+ #
376
+ # Examples:
377
+ #
378
+ # opts.on(:foo, 'Something fooey', :argument => :optional)
379
+ # opt = opts.fetch_option(:foo)
380
+ # opt.class #=> Slop::Option
381
+ # opt.accepts_optional_argument? #=> true
382
+ #
383
+ # Returns an Option or nil if none were found.
384
+ def fetch_option(key)
385
+ options.find { |option| [option.long, option.short].include?(clean(key)) }
386
+ end
387
+
388
+ # Fetch a Slop object associated with this command.
389
+ #
390
+ # command - The String or Symbol name of the command.
391
+ #
392
+ # Examples:
393
+ #
394
+ # opts.command :foo do
395
+ # on :v, :verbose, 'Enable verbose mode'
396
+ # end
397
+ #
398
+ # # ruby run.rb foo -v
399
+ # opts.fetch_command(:foo).verbose? #=> true
400
+ def fetch_command(command)
401
+ @commands[command.to_s]
402
+ end
403
+
404
+ # Add a callback.
405
+ #
406
+ # label - The Symbol identifier to attach this callback.
407
+ #
408
+ # Returns nothing.
409
+ def add_callback(label, &block)
410
+ (@callbacks[label] ||= []) << block
411
+ end
412
+
413
+ # Add string separators between options.
414
+ #
415
+ # text - The String text to print.
416
+ def separator(text)
417
+ if @separators[options.size]
418
+ @separators[options.size] << "\n#{text}"
419
+ else
420
+ @separators[options.size] = text
421
+ end
422
+ end
423
+
424
+ # Print a handy Slop help string.
425
+ #
426
+ # Returns the banner followed by available option help strings.
427
+ def to_s
428
+ heads = options.reject(&:tail?)
429
+ tails = (options - heads)
430
+ opts = (heads + tails).select(&:help).map(&:to_s)
431
+ optstr = opts.each_with_index.map { |o, i|
432
+ (str = @separators[i + 1]) ? [o, str].join("\n") : o
433
+ }.join("\n")
434
+
435
+ if @commands.any?
436
+ optstr << "\n" if !optstr.empty?
437
+ optstr << "\nAvailable commands:\n\n"
438
+ optstr << commands_to_help
439
+ optstr << "\n\nSee `<command> --help` for more information on a specific command."
440
+ end
441
+
442
+ banner = config[:banner]
443
+ if banner.nil?
444
+ banner = "Usage: #{File.basename($0, '.*')}"
445
+ banner << " #{@command}" if @command
446
+ banner << " [command]" if @commands.any?
447
+ banner << " [options]"
448
+ end
449
+ if banner
450
+ "#{banner}\n#{@separators[0] ? "#{@separators[0]}\n" : ''}#{optstr}"
451
+ else
452
+ optstr
453
+ end
454
+ end
455
+ alias help to_s
456
+
457
+ private
458
+
459
+ # Convenience method for present?(:option).
460
+ #
461
+ # Examples:
462
+ #
463
+ # opts.parse %( --verbose )
464
+ # opts.verbose? #=> true
465
+ # opts.other? #=> false
466
+ #
467
+ # Returns true if this option is present. If this method does not end
468
+ # with a ? character it will instead call super().
469
+ def method_missing(method, *args, &block)
470
+ meth = method.to_s
471
+ if meth.end_with?('?')
472
+ meth.chop!
473
+ present?(meth) || present?(meth.gsub('_', '-'))
474
+ else
475
+ super
476
+ end
477
+ end
478
+
479
+ # Process a list item, figure out if it's an option, execute any
480
+ # callbacks, assign any option arguments, and do some sanity checks.
481
+ #
482
+ # items - The Array of items to process.
483
+ # index - The current Integer index of the item we want to process.
484
+ # block - An optional block which when passed will yield non options.
485
+ #
486
+ # Returns nothing.
487
+ def process_item(items, index, &block)
488
+ return unless item = items[index]
489
+ option, argument = extract_option(item) if item.start_with?('-')
490
+
491
+ if option
492
+ option.count += 1 unless item.start_with?('--no-')
493
+ option.count += 1 if option.key[0, 3] == "no-"
494
+ @trash << index
495
+ @triggered_options << option
496
+
497
+ if option.expects_argument?
498
+ argument ||= items.at(index + 1)
499
+
500
+ if !argument || argument =~ /\A--?[a-zA-Z][a-zA-Z0-9_-]*\z/
501
+ raise MissingArgumentError, "#{option.key} expects an argument"
502
+ end
503
+
504
+ execute_option(option, argument, index, item)
505
+ elsif option.accepts_optional_argument?
506
+ argument ||= items.at(index + 1)
507
+
508
+ if argument && argument =~ /\A([^\-?]|-\d)+/
509
+ execute_option(option, argument, index, item)
510
+ else
511
+ option.call(nil)
512
+ end
513
+ elsif config[:multiple_switches] && argument
514
+ execute_multiple_switches(option, argument, items, index)
515
+ else
516
+ option.value = option.count > 0
517
+ option.call(nil)
518
+ end
519
+ else
520
+ @unknown_options << item if strict? && item =~ /\A--?/
521
+ block.call(item) if block && !@trash.include?(index)
522
+ end
523
+ end
524
+
525
+ # Execute an option, firing off callbacks and assigning arguments.
526
+ #
527
+ # option - The Slop::Option object found by #process_item.
528
+ # argument - The argument Object to assign to this option.
529
+ # index - The current Integer index of the object we're processing.
530
+ # item - The optional String item we're processing.
531
+ #
532
+ # Returns nothing.
533
+ def execute_option(option, argument, index, item = nil)
534
+ if !option
535
+ if config[:multiple_switches] && strict?
536
+ raise InvalidOptionError, "Unknown option -#{item}"
537
+ end
538
+ return
539
+ end
540
+
541
+ if argument
542
+ unless item && item.end_with?("=#{argument}")
543
+ @trash << index + 1 unless option.argument_in_value
544
+ end
545
+ option.value = argument
546
+ else
547
+ option.value = option.count > 0
548
+ end
549
+
550
+ if option.match? && !argument.match(option.config[:match])
551
+ raise InvalidArgumentError, "#{argument} is an invalid argument"
552
+ end
553
+
554
+ option.call(option.value)
555
+ end
556
+
557
+ # Execute a `-abc` type option where a, b and c are all options. This
558
+ # method is only executed if the multiple_switches argument is true.
559
+ #
560
+ # option - The first Option object.
561
+ # argument - The argument to this option. (Split into multiple Options).
562
+ # items - The Array of items currently being parsed.
563
+ # index - The index of the current item being processed.
564
+ #
565
+ # Returns nothing.
566
+ def execute_multiple_switches(option, argument, items, index)
567
+ execute_option(option, nil, index)
568
+ flags = argument.split('')
569
+ flags.each do |key|
570
+ next unless opt = fetch_option(key)
571
+ opt.count += 1
572
+ if (opt.expects_argument? || opt.accepts_optional_argument?) &&
573
+ (flags[-1] == opt.key) && (val = items[index+1])
574
+ execute_option(opt, val, index, key)
575
+ else
576
+ execute_option(opt, nil, index, key)
577
+ end
578
+ end
579
+ end
580
+
581
+ # Extract an option from a flag.
582
+ #
583
+ # flag - The flag key used to extract an option.
584
+ #
585
+ # Returns an Array of [option, argument].
586
+ def extract_option(flag)
587
+ option = fetch_option(flag)
588
+ option ||= fetch_option(flag.downcase) if config[:ignore_case]
589
+ option ||= fetch_option(flag.gsub(/([^-])-/, '\1_'))
590
+
591
+ unless option
592
+ case flag
593
+ when /\A--?([^=]+)=(.+)\z/, /\A-([a-zA-Z])(.+)\z/, /\A--no-(.+)\z/
594
+ option, argument = fetch_option($1), ($2 || false)
595
+ option.argument_in_value = true if option
596
+ end
597
+ end
598
+
599
+ [option, argument]
600
+ end
601
+
602
+ # Autocreate an option on the fly. See the :autocreate Slop config option.
603
+ #
604
+ # items - The Array of items we're parsing.
605
+ # index - The current Integer index for the item we're processing.
606
+ #
607
+ # Returns nothing.
608
+ def autocreate(items, index)
609
+ flag = items[index]
610
+ if !fetch_option(flag) && !@trash.include?(index)
611
+ option = build_option(Array(flag))
612
+ argument = items[index + 1]
613
+ option.config[:argument] = (argument && argument !~ /\A--?/)
614
+ option.config[:autocreated] = true
615
+ options << option
616
+ end
617
+ end
618
+
619
+ # Build an option from a list of objects.
620
+ #
621
+ # objects - An Array of objects used to build this option.
622
+ #
623
+ # Returns a new instance of Slop::Option.
624
+ def build_option(objects, &block)
625
+ config = {}
626
+ config[:argument] = true if @config[:arguments]
627
+ config[:optional_argument] = true if @config[:optional_arguments]
628
+
629
+ if objects.last.is_a?(Hash)
630
+ config.merge!(objects.last)
631
+ objects.pop
632
+ end
633
+ short = extract_short_flag(objects, config)
634
+ long = extract_long_flag(objects, config)
635
+ desc = objects[0].respond_to?(:to_str) ? objects.shift : nil
636
+
637
+ Option.new(self, short, long, desc, config, &block)
638
+ end
639
+
640
+ # Extract the short flag from an item.
641
+ #
642
+ # objects - The Array of objects passed from #build_option.
643
+ # config - The Hash of configuration options built in #build_option.
644
+ def extract_short_flag(objects, config)
645
+ flag = clean(objects.first)
646
+
647
+ if flag.size == 2 && flag.end_with?('=')
648
+ config[:argument] ||= true
649
+ flag.chop!
650
+ end
651
+
652
+ if flag.size == 1
653
+ objects.shift
654
+ flag
655
+ end
656
+ end
657
+
658
+ # Extract the long flag from an item.
659
+ #
660
+ # objects - The Array of objects passed from #build_option.
661
+ # config - The Hash of configuration options built in #build_option.
662
+ def extract_long_flag(objects, config)
663
+ flag = objects.first.to_s
664
+ if flag =~ /\A(?:--?)?[a-zA-Z0-9][a-zA-Z0-9_.-]+\=?\??\z/
665
+ config[:argument] ||= true if flag.end_with?('=')
666
+ config[:optional_argument] = true if flag.end_with?('=?')
667
+ objects.shift
668
+ clean(flag).sub(/\=\??\z/, '')
669
+ end
670
+ end
671
+
672
+ # Remove any leading -- characters from a string.
673
+ #
674
+ # object - The Object we want to cast to a String and clean.
675
+ #
676
+ # Returns the newly cleaned String with leading -- characters removed.
677
+ def clean(object)
678
+ object.to_s.sub(/\A--?/, '')
679
+ end
680
+
681
+ def commands_to_help
682
+ padding = 0
683
+ @commands.each { |c, _| padding = c.size if c.size > padding }
684
+ @commands.map do |cmd, opts|
685
+ " #{cmd}#{' ' * (padding - cmd.size)} #{opts.description}"
686
+ end.join("\n")
687
+ end
688
+
689
+ end