sublimetheme 1.0.0

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 (276) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +9 -0
  3. data/.rspec +2 -0
  4. data/.travis.yml +4 -0
  5. data/CODE_OF_CONDUCT.md +13 -0
  6. data/Gemfile +4 -0
  7. data/LICENSE.txt +21 -0
  8. data/README.md +230 -0
  9. data/Rakefile +8 -0
  10. data/bin/console +14 -0
  11. data/bin/setup +7 -0
  12. data/lib/sublimetheme.rb +6832 -0
  13. data/lib/sublimetheme/version.rb +3 -0
  14. data/path/bin/htmldiff +25 -0
  15. data/path/bin/htmldiff.bat +6 -0
  16. data/path/bin/ldiff +25 -0
  17. data/path/bin/ldiff.bat +6 -0
  18. data/path/bin/rspec +23 -0
  19. data/path/bin/rspec.bat +6 -0
  20. data/path/cache/diff-lcs-1.2.5.gem +0 -0
  21. data/path/cache/rspec-3.3.0.gem +0 -0
  22. data/path/cache/rspec-core-3.3.2.gem +0 -0
  23. data/path/cache/rspec-expectations-3.3.1.gem +0 -0
  24. data/path/cache/rspec-mocks-3.3.2.gem +0 -0
  25. data/path/cache/rspec-support-3.3.0.gem +0 -0
  26. data/path/gems/diff-lcs-1.2.5/.autotest +3 -0
  27. data/path/gems/diff-lcs-1.2.5/.gemtest +0 -0
  28. data/path/gems/diff-lcs-1.2.5/.hoerc +2 -0
  29. data/path/gems/diff-lcs-1.2.5/.rspec +2 -0
  30. data/path/gems/diff-lcs-1.2.5/.travis.yml +22 -0
  31. data/path/gems/diff-lcs-1.2.5/Contributing.rdoc +64 -0
  32. data/path/gems/diff-lcs-1.2.5/Gemfile +20 -0
  33. data/path/gems/diff-lcs-1.2.5/History.rdoc +152 -0
  34. data/path/gems/diff-lcs-1.2.5/License.rdoc +39 -0
  35. data/path/gems/diff-lcs-1.2.5/Manifest.txt +38 -0
  36. data/path/gems/diff-lcs-1.2.5/README.rdoc +85 -0
  37. data/path/gems/diff-lcs-1.2.5/Rakefile +41 -0
  38. data/path/gems/diff-lcs-1.2.5/autotest/discover.rb +1 -0
  39. data/path/gems/diff-lcs-1.2.5/bin/htmldiff +32 -0
  40. data/path/gems/diff-lcs-1.2.5/bin/ldiff +6 -0
  41. data/path/gems/diff-lcs-1.2.5/docs/COPYING.txt +339 -0
  42. data/path/gems/diff-lcs-1.2.5/docs/artistic.txt +127 -0
  43. data/path/gems/diff-lcs-1.2.5/lib/diff-lcs.rb +3 -0
  44. data/path/gems/diff-lcs-1.2.5/lib/diff/lcs.rb +805 -0
  45. data/path/gems/diff-lcs-1.2.5/lib/diff/lcs/array.rb +7 -0
  46. data/path/gems/diff-lcs-1.2.5/lib/diff/lcs/block.rb +37 -0
  47. data/path/gems/diff-lcs-1.2.5/lib/diff/lcs/callbacks.rb +322 -0
  48. data/path/gems/diff-lcs-1.2.5/lib/diff/lcs/change.rb +177 -0
  49. data/path/gems/diff-lcs-1.2.5/lib/diff/lcs/htmldiff.rb +149 -0
  50. data/path/gems/diff-lcs-1.2.5/lib/diff/lcs/hunk.rb +276 -0
  51. data/path/gems/diff-lcs-1.2.5/lib/diff/lcs/internals.rb +301 -0
  52. data/path/gems/diff-lcs-1.2.5/lib/diff/lcs/ldiff.rb +195 -0
  53. data/path/gems/diff-lcs-1.2.5/lib/diff/lcs/string.rb +5 -0
  54. data/path/gems/diff-lcs-1.2.5/spec/change_spec.rb +65 -0
  55. data/path/gems/diff-lcs-1.2.5/spec/diff_spec.rb +47 -0
  56. data/path/gems/diff-lcs-1.2.5/spec/hunk_spec.rb +72 -0
  57. data/path/gems/diff-lcs-1.2.5/spec/issues_spec.rb +24 -0
  58. data/path/gems/diff-lcs-1.2.5/spec/lcs_spec.rb +54 -0
  59. data/path/gems/diff-lcs-1.2.5/spec/patch_spec.rb +414 -0
  60. data/path/gems/diff-lcs-1.2.5/spec/sdiff_spec.rb +214 -0
  61. data/path/gems/diff-lcs-1.2.5/spec/spec_helper.rb +290 -0
  62. data/path/gems/diff-lcs-1.2.5/spec/traverse_balanced_spec.rb +310 -0
  63. data/path/gems/diff-lcs-1.2.5/spec/traverse_sequences_spec.rb +139 -0
  64. data/path/gems/rspec-3.3.0/License.txt +24 -0
  65. data/path/gems/rspec-3.3.0/README.md +34 -0
  66. data/path/gems/rspec-3.3.0/lib/rspec.rb +3 -0
  67. data/path/gems/rspec-3.3.0/lib/rspec/version.rb +5 -0
  68. data/path/gems/rspec-core-3.3.2/.document +5 -0
  69. data/path/gems/rspec-core-3.3.2/.yardopts +8 -0
  70. data/path/gems/rspec-core-3.3.2/Changelog.md +1856 -0
  71. data/path/gems/rspec-core-3.3.2/License.txt +25 -0
  72. data/path/gems/rspec-core-3.3.2/README.md +369 -0
  73. data/path/gems/rspec-core-3.3.2/exe/rspec +4 -0
  74. data/path/gems/rspec-core-3.3.2/lib/rspec/autorun.rb +3 -0
  75. data/path/gems/rspec-core-3.3.2/lib/rspec/core.rb +181 -0
  76. data/path/gems/rspec-core-3.3.2/lib/rspec/core/backtrace_formatter.rb +64 -0
  77. data/path/gems/rspec-core-3.3.2/lib/rspec/core/bisect/coordinator.rb +66 -0
  78. data/path/gems/rspec-core-3.3.2/lib/rspec/core/bisect/example_minimizer.rb +130 -0
  79. data/path/gems/rspec-core-3.3.2/lib/rspec/core/bisect/runner.rb +139 -0
  80. data/path/gems/rspec-core-3.3.2/lib/rspec/core/bisect/server.rb +61 -0
  81. data/path/gems/rspec-core-3.3.2/lib/rspec/core/bisect/subset_enumerator.rb +39 -0
  82. data/path/gems/rspec-core-3.3.2/lib/rspec/core/configuration.rb +1807 -0
  83. data/path/gems/rspec-core-3.3.2/lib/rspec/core/configuration_options.rb +191 -0
  84. data/path/gems/rspec-core-3.3.2/lib/rspec/core/drb.rb +111 -0
  85. data/path/gems/rspec-core-3.3.2/lib/rspec/core/dsl.rb +96 -0
  86. data/path/gems/rspec-core-3.3.2/lib/rspec/core/example.rb +573 -0
  87. data/path/gems/rspec-core-3.3.2/lib/rspec/core/example_group.rb +796 -0
  88. data/path/gems/rspec-core-3.3.2/lib/rspec/core/example_status_persister.rb +235 -0
  89. data/path/gems/rspec-core-3.3.2/lib/rspec/core/filter_manager.rb +231 -0
  90. data/path/gems/rspec-core-3.3.2/lib/rspec/core/flat_map.rb +20 -0
  91. data/path/gems/rspec-core-3.3.2/lib/rspec/core/formatters.rb +254 -0
  92. data/path/gems/rspec-core-3.3.2/lib/rspec/core/formatters/base_formatter.rb +70 -0
  93. data/path/gems/rspec-core-3.3.2/lib/rspec/core/formatters/base_text_formatter.rb +77 -0
  94. data/path/gems/rspec-core-3.3.2/lib/rspec/core/formatters/bisect_formatter.rb +68 -0
  95. data/path/gems/rspec-core-3.3.2/lib/rspec/core/formatters/bisect_progress_formatter.rb +115 -0
  96. data/path/gems/rspec-core-3.3.2/lib/rspec/core/formatters/console_codes.rb +65 -0
  97. data/path/gems/rspec-core-3.3.2/lib/rspec/core/formatters/deprecation_formatter.rb +223 -0
  98. data/path/gems/rspec-core-3.3.2/lib/rspec/core/formatters/documentation_formatter.rb +70 -0
  99. data/path/gems/rspec-core-3.3.2/lib/rspec/core/formatters/exception_presenter.rb +393 -0
  100. data/path/gems/rspec-core-3.3.2/lib/rspec/core/formatters/fallback_message_formatter.rb +28 -0
  101. data/path/gems/rspec-core-3.3.2/lib/rspec/core/formatters/helpers.rb +109 -0
  102. data/path/gems/rspec-core-3.3.2/lib/rspec/core/formatters/html_formatter.rb +151 -0
  103. data/path/gems/rspec-core-3.3.2/lib/rspec/core/formatters/html_printer.rb +415 -0
  104. data/path/gems/rspec-core-3.3.2/lib/rspec/core/formatters/json_formatter.rb +96 -0
  105. data/path/gems/rspec-core-3.3.2/lib/rspec/core/formatters/profile_formatter.rb +68 -0
  106. data/path/gems/rspec-core-3.3.2/lib/rspec/core/formatters/progress_formatter.rb +28 -0
  107. data/path/gems/rspec-core-3.3.2/lib/rspec/core/formatters/protocol.rb +172 -0
  108. data/path/gems/rspec-core-3.3.2/lib/rspec/core/formatters/snippet_extractor.rb +116 -0
  109. data/path/gems/rspec-core-3.3.2/lib/rspec/core/hooks.rb +638 -0
  110. data/path/gems/rspec-core-3.3.2/lib/rspec/core/memoized_helpers.rb +532 -0
  111. data/path/gems/rspec-core-3.3.2/lib/rspec/core/metadata.rb +490 -0
  112. data/path/gems/rspec-core-3.3.2/lib/rspec/core/metadata_filter.rb +235 -0
  113. data/path/gems/rspec-core-3.3.2/lib/rspec/core/minitest_assertions_adapter.rb +31 -0
  114. data/path/gems/rspec-core-3.3.2/lib/rspec/core/mocking_adapters/flexmock.rb +31 -0
  115. data/path/gems/rspec-core-3.3.2/lib/rspec/core/mocking_adapters/mocha.rb +57 -0
  116. data/path/gems/rspec-core-3.3.2/lib/rspec/core/mocking_adapters/null.rb +14 -0
  117. data/path/gems/rspec-core-3.3.2/lib/rspec/core/mocking_adapters/rr.rb +31 -0
  118. data/path/gems/rspec-core-3.3.2/lib/rspec/core/mocking_adapters/rspec.rb +32 -0
  119. data/path/gems/rspec-core-3.3.2/lib/rspec/core/mutex.rb +63 -0
  120. data/path/gems/rspec-core-3.3.2/lib/rspec/core/notifications.rb +498 -0
  121. data/path/gems/rspec-core-3.3.2/lib/rspec/core/option_parser.rb +301 -0
  122. data/path/gems/rspec-core-3.3.2/lib/rspec/core/ordering.rb +158 -0
  123. data/path/gems/rspec-core-3.3.2/lib/rspec/core/pending.rb +165 -0
  124. data/path/gems/rspec-core-3.3.2/lib/rspec/core/profiler.rb +32 -0
  125. data/path/gems/rspec-core-3.3.2/lib/rspec/core/project_initializer.rb +48 -0
  126. data/path/gems/rspec-core-3.3.2/lib/rspec/core/project_initializer/.rspec +2 -0
  127. data/path/gems/rspec-core-3.3.2/lib/rspec/core/project_initializer/spec/spec_helper.rb +96 -0
  128. data/path/gems/rspec-core-3.3.2/lib/rspec/core/rake_task.rb +158 -0
  129. data/path/gems/rspec-core-3.3.2/lib/rspec/core/reentrant_mutex.rb +52 -0
  130. data/path/gems/rspec-core-3.3.2/lib/rspec/core/reporter.rb +220 -0
  131. data/path/gems/rspec-core-3.3.2/lib/rspec/core/ruby_project.rb +53 -0
  132. data/path/gems/rspec-core-3.3.2/lib/rspec/core/runner.rb +179 -0
  133. data/path/gems/rspec-core-3.3.2/lib/rspec/core/sandbox.rb +37 -0
  134. data/path/gems/rspec-core-3.3.2/lib/rspec/core/set.rb +49 -0
  135. data/path/gems/rspec-core-3.3.2/lib/rspec/core/shared_context.rb +55 -0
  136. data/path/gems/rspec-core-3.3.2/lib/rspec/core/shared_example_group.rb +210 -0
  137. data/path/gems/rspec-core-3.3.2/lib/rspec/core/shell_escape.rb +49 -0
  138. data/path/gems/rspec-core-3.3.2/lib/rspec/core/test_unit_assertions_adapter.rb +30 -0
  139. data/path/gems/rspec-core-3.3.2/lib/rspec/core/version.rb +9 -0
  140. data/path/gems/rspec-core-3.3.2/lib/rspec/core/warnings.rb +40 -0
  141. data/path/gems/rspec-core-3.3.2/lib/rspec/core/world.rb +178 -0
  142. data/path/gems/rspec-expectations-3.3.1/.document +5 -0
  143. data/path/gems/rspec-expectations-3.3.1/.yardopts +6 -0
  144. data/path/gems/rspec-expectations-3.3.1/Changelog.md +953 -0
  145. data/path/gems/rspec-expectations-3.3.1/License.txt +24 -0
  146. data/path/gems/rspec-expectations-3.3.1/README.md +289 -0
  147. data/path/gems/rspec-expectations-3.3.1/lib/rspec/expectations.rb +81 -0
  148. data/path/gems/rspec-expectations-3.3.1/lib/rspec/expectations/configuration.rb +164 -0
  149. data/path/gems/rspec-expectations-3.3.1/lib/rspec/expectations/expectation_target.rb +113 -0
  150. data/path/gems/rspec-expectations-3.3.1/lib/rspec/expectations/fail_with.rb +31 -0
  151. data/path/gems/rspec-expectations-3.3.1/lib/rspec/expectations/failure_aggregator.rb +194 -0
  152. data/path/gems/rspec-expectations-3.3.1/lib/rspec/expectations/handler.rb +170 -0
  153. data/path/gems/rspec-expectations-3.3.1/lib/rspec/expectations/minitest_integration.rb +31 -0
  154. data/path/gems/rspec-expectations-3.3.1/lib/rspec/expectations/syntax.rb +132 -0
  155. data/path/gems/rspec-expectations-3.3.1/lib/rspec/expectations/version.rb +8 -0
  156. data/path/gems/rspec-expectations-3.3.1/lib/rspec/matchers.rb +1009 -0
  157. data/path/gems/rspec-expectations-3.3.1/lib/rspec/matchers/aliased_matcher.rb +116 -0
  158. data/path/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in.rb +52 -0
  159. data/path/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/all.rb +85 -0
  160. data/path/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/base_matcher.rb +181 -0
  161. data/path/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/be.rb +285 -0
  162. data/path/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/be_between.rb +77 -0
  163. data/path/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/be_instance_of.rb +22 -0
  164. data/path/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/be_kind_of.rb +16 -0
  165. data/path/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/be_within.rb +72 -0
  166. data/path/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/change.rb +337 -0
  167. data/path/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/compound.rb +293 -0
  168. data/path/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/contain_exactly.rb +253 -0
  169. data/path/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/cover.rb +24 -0
  170. data/path/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/eq.rb +40 -0
  171. data/path/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/eql.rb +34 -0
  172. data/path/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/equal.rb +81 -0
  173. data/path/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/exist.rb +86 -0
  174. data/path/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/has.rb +103 -0
  175. data/path/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/have_attributes.rb +114 -0
  176. data/path/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/include.rb +130 -0
  177. data/path/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/match.rb +37 -0
  178. data/path/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/operators.rb +128 -0
  179. data/path/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/output.rb +200 -0
  180. data/path/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/raise_error.rb +216 -0
  181. data/path/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/respond_to.rb +90 -0
  182. data/path/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/satisfy.rb +37 -0
  183. data/path/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/start_or_end_with.rb +94 -0
  184. data/path/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/throw_symbol.rb +132 -0
  185. data/path/gems/rspec-expectations-3.3.1/lib/rspec/matchers/built_in/yield.rb +418 -0
  186. data/path/gems/rspec-expectations-3.3.1/lib/rspec/matchers/composable.rb +184 -0
  187. data/path/gems/rspec-expectations-3.3.1/lib/rspec/matchers/dsl.rb +453 -0
  188. data/path/gems/rspec-expectations-3.3.1/lib/rspec/matchers/english_phrasing.rb +42 -0
  189. data/path/gems/rspec-expectations-3.3.1/lib/rspec/matchers/expecteds_for_multiple_diffs.rb +73 -0
  190. data/path/gems/rspec-expectations-3.3.1/lib/rspec/matchers/fail_matchers.rb +42 -0
  191. data/path/gems/rspec-expectations-3.3.1/lib/rspec/matchers/generated_descriptions.rb +42 -0
  192. data/path/gems/rspec-expectations-3.3.1/lib/rspec/matchers/matcher_delegator.rb +35 -0
  193. data/path/gems/rspec-expectations-3.3.1/lib/rspec/matchers/matcher_protocol.rb +99 -0
  194. data/path/gems/rspec-mocks-3.3.2/.document +5 -0
  195. data/path/gems/rspec-mocks-3.3.2/.yardopts +6 -0
  196. data/path/gems/rspec-mocks-3.3.2/Changelog.md +965 -0
  197. data/path/gems/rspec-mocks-3.3.2/License.txt +24 -0
  198. data/path/gems/rspec-mocks-3.3.2/README.md +430 -0
  199. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks.rb +126 -0
  200. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks/any_instance.rb +11 -0
  201. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks/any_instance/chain.rb +110 -0
  202. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks/any_instance/error_generator.rb +31 -0
  203. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks/any_instance/expect_chain_chain.rb +35 -0
  204. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks/any_instance/expectation_chain.rb +48 -0
  205. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks/any_instance/message_chains.rb +83 -0
  206. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks/any_instance/proxy.rb +116 -0
  207. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks/any_instance/recorder.rb +264 -0
  208. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks/any_instance/stub_chain.rb +46 -0
  209. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks/any_instance/stub_chain_chain.rb +27 -0
  210. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks/argument_list_matcher.rb +100 -0
  211. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks/argument_matchers.rb +320 -0
  212. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks/configuration.rb +188 -0
  213. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks/error_generator.rb +362 -0
  214. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks/example_methods.rb +421 -0
  215. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks/instance_method_stasher.rb +135 -0
  216. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks/marshal_extension.rb +41 -0
  217. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks/matchers/expectation_customization.rb +20 -0
  218. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks/matchers/have_received.rb +116 -0
  219. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks/matchers/receive.rb +130 -0
  220. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks/matchers/receive_message_chain.rb +80 -0
  221. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks/matchers/receive_messages.rb +75 -0
  222. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks/message_chain.rb +87 -0
  223. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks/message_expectation.rb +717 -0
  224. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks/method_double.rb +287 -0
  225. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks/method_reference.rb +192 -0
  226. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks/mutate_const.rb +335 -0
  227. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks/mutex.rb +73 -0
  228. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks/object_reference.rb +149 -0
  229. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks/order_group.rb +81 -0
  230. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks/proxy.rb +439 -0
  231. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks/reentrant_mutex.rb +53 -0
  232. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks/space.rb +238 -0
  233. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks/standalone.rb +3 -0
  234. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks/syntax.rb +325 -0
  235. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks/targets.rb +97 -0
  236. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks/test_double.rb +170 -0
  237. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks/verifying_double.rb +129 -0
  238. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks/verifying_message_expecation.rb +54 -0
  239. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks/verifying_proxy.rb +213 -0
  240. data/path/gems/rspec-mocks-3.3.2/lib/rspec/mocks/version.rb +9 -0
  241. data/path/gems/rspec-support-3.3.0/Changelog.md +125 -0
  242. data/path/gems/rspec-support-3.3.0/LICENSE.txt +22 -0
  243. data/path/gems/rspec-support-3.3.0/README.md +26 -0
  244. data/path/gems/rspec-support-3.3.0/lib/rspec/support.rb +111 -0
  245. data/path/gems/rspec-support-3.3.0/lib/rspec/support/caller_filter.rb +83 -0
  246. data/path/gems/rspec-support-3.3.0/lib/rspec/support/differ.rb +215 -0
  247. data/path/gems/rspec-support-3.3.0/lib/rspec/support/directory_maker.rb +63 -0
  248. data/path/gems/rspec-support-3.3.0/lib/rspec/support/encoded_string.rb +155 -0
  249. data/path/gems/rspec-support-3.3.0/lib/rspec/support/fuzzy_matcher.rb +48 -0
  250. data/path/gems/rspec-support-3.3.0/lib/rspec/support/hunk_generator.rb +47 -0
  251. data/path/gems/rspec-support-3.3.0/lib/rspec/support/matcher_definition.rb +42 -0
  252. data/path/gems/rspec-support-3.3.0/lib/rspec/support/method_signature_verifier.rb +273 -0
  253. data/path/gems/rspec-support-3.3.0/lib/rspec/support/object_formatter.rb +93 -0
  254. data/path/gems/rspec-support-3.3.0/lib/rspec/support/recursive_const_methods.rb +76 -0
  255. data/path/gems/rspec-support-3.3.0/lib/rspec/support/ruby_features.rb +118 -0
  256. data/path/gems/rspec-support-3.3.0/lib/rspec/support/spec.rb +81 -0
  257. data/path/gems/rspec-support-3.3.0/lib/rspec/support/spec/deprecation_helpers.rb +64 -0
  258. data/path/gems/rspec-support-3.3.0/lib/rspec/support/spec/formatting_support.rb +9 -0
  259. data/path/gems/rspec-support-3.3.0/lib/rspec/support/spec/in_sub_process.rb +52 -0
  260. data/path/gems/rspec-support-3.3.0/lib/rspec/support/spec/library_wide_checks.rb +145 -0
  261. data/path/gems/rspec-support-3.3.0/lib/rspec/support/spec/shell_out.rb +71 -0
  262. data/path/gems/rspec-support-3.3.0/lib/rspec/support/spec/stderr_splitter.rb +63 -0
  263. data/path/gems/rspec-support-3.3.0/lib/rspec/support/spec/string_matcher.rb +46 -0
  264. data/path/gems/rspec-support-3.3.0/lib/rspec/support/spec/with_isolated_directory.rb +9 -0
  265. data/path/gems/rspec-support-3.3.0/lib/rspec/support/spec/with_isolated_stderr.rb +13 -0
  266. data/path/gems/rspec-support-3.3.0/lib/rspec/support/version.rb +7 -0
  267. data/path/gems/rspec-support-3.3.0/lib/rspec/support/version_checker.rb +53 -0
  268. data/path/gems/rspec-support-3.3.0/lib/rspec/support/warnings.rb +39 -0
  269. data/path/specifications/diff-lcs-1.2.5.gemspec +68 -0
  270. data/path/specifications/rspec-3.3.0.gemspec +42 -0
  271. data/path/specifications/rspec-core-3.3.2.gemspec +68 -0
  272. data/path/specifications/rspec-expectations-3.3.1.gemspec +50 -0
  273. data/path/specifications/rspec-mocks-3.3.2.gemspec +53 -0
  274. data/path/specifications/rspec-support-3.3.0.gemspec +38 -0
  275. data/sublimetheme.gemspec +32 -0
  276. metadata +363 -0
@@ -0,0 +1,20 @@
1
+ module RSpec
2
+ module Core
3
+ # @private
4
+ module FlatMap
5
+ if [].respond_to?(:flat_map)
6
+ def flat_map(array, &block)
7
+ array.flat_map(&block)
8
+ end
9
+ else # for 1.8.7
10
+ # :nocov:
11
+ def flat_map(array, &block)
12
+ array.map(&block).flatten(1)
13
+ end
14
+ # :nocov:
15
+ end
16
+
17
+ module_function :flat_map
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,254 @@
1
+ RSpec::Support.require_rspec_support "directory_maker"
2
+ # ## Built-in Formatters
3
+ #
4
+ # * progress (default) - Prints dots for passing examples, `F` for failures, `*`
5
+ # for pending.
6
+ # * documentation - Prints the docstrings passed to `describe` and `it` methods
7
+ # (and their aliases).
8
+ # * html
9
+ # * json - Useful for archiving data for subsequent analysis.
10
+ #
11
+ # The progress formatter is the default, but you can choose any one or more of
12
+ # the other formatters by passing with the `--format` (or `-f` for short)
13
+ # command-line option, e.g.
14
+ #
15
+ # rspec --format documentation
16
+ #
17
+ # You can also send the output of multiple formatters to different streams, e.g.
18
+ #
19
+ # rspec --format documentation --format html --out results.html
20
+ #
21
+ # This example sends the output of the documentation formatter to `$stdout`, and
22
+ # the output of the html formatter to results.html.
23
+ #
24
+ # ## Custom Formatters
25
+ #
26
+ # You can tell RSpec to use a custom formatter by passing its path and name to
27
+ # the `rspec` commmand. For example, if you define MyCustomFormatter in
28
+ # path/to/my_custom_formatter.rb, you would type this command:
29
+ #
30
+ # rspec --require path/to/my_custom_formatter.rb --format MyCustomFormatter
31
+ #
32
+ # The reporter calls every formatter with this protocol:
33
+ #
34
+ # * To start
35
+ # * `start(StartNotification)`
36
+ # * Once per example group
37
+ # * `example_group_started(GroupNotification)`
38
+ # * Once per example
39
+ # * `example_started(ExampleNotification)`
40
+ # * One of these per example, depending on outcome
41
+ # * `example_passed(ExampleNotification)`
42
+ # * `example_failed(FailedExampleNotification)`
43
+ # * `example_pending(ExampleNotification)`
44
+ # * Optionally at any time
45
+ # * `message(MessageNotification)`
46
+ # * At the end of the suite
47
+ # * `stop(ExamplesNotification)`
48
+ # * `start_dump(NullNotification)`
49
+ # * `dump_pending(ExamplesNotification)`
50
+ # * `dump_failures(ExamplesNotification)`
51
+ # * `dump_summary(SummaryNotification)`
52
+ # * `seed(SeedNotification)`
53
+ # * `close(NullNotification)`
54
+ #
55
+ # Only the notifications to which you subscribe your formatter will be called
56
+ # on your formatter. To subscribe your formatter use:
57
+ # `RSpec::Core::Formatters#register` e.g.
58
+ #
59
+ # `RSpec::Core::Formatters.register FormatterClassName, :example_passed, :example_failed`
60
+ #
61
+ # We recommend you implement the methods yourself; for simplicity we provide the
62
+ # default formatter output via our notification objects but if you prefer you
63
+ # can subclass `RSpec::Core::Formatters::BaseTextFormatter` and override the
64
+ # methods you wish to enhance.
65
+ #
66
+ # @see RSpec::Core::Formatters::BaseTextFormatter
67
+ # @see RSpec::Core::Reporter
68
+ module RSpec::Core::Formatters
69
+ autoload :DocumentationFormatter, 'rspec/core/formatters/documentation_formatter'
70
+ autoload :HtmlFormatter, 'rspec/core/formatters/html_formatter'
71
+ autoload :FallbackMessageFormatter, 'rspec/core/formatters/fallback_message_formatter'
72
+ autoload :ProgressFormatter, 'rspec/core/formatters/progress_formatter'
73
+ autoload :ProfileFormatter, 'rspec/core/formatters/profile_formatter'
74
+ autoload :JsonFormatter, 'rspec/core/formatters/json_formatter'
75
+ autoload :BisectFormatter, 'rspec/core/formatters/bisect_formatter'
76
+
77
+ # Register the formatter class
78
+ # @param formatter_class [Class] formatter class to register
79
+ # @param notifications [Symbol, ...] one or more notifications to be
80
+ # registered to the specified formatter
81
+ #
82
+ # @see RSpec::Core::Formatters::BaseFormatter
83
+ def self.register(formatter_class, *notifications)
84
+ Loader.formatters[formatter_class] = notifications
85
+ end
86
+
87
+ # @api private
88
+ #
89
+ # `RSpec::Core::Formatters::Loader` is an internal class for
90
+ # managing formatters used by a particular configuration. It is
91
+ # not expected to be used directly, but only through the configuration
92
+ # interface.
93
+ class Loader
94
+ # @api private
95
+ #
96
+ # Internal formatters are stored here when loaded.
97
+ def self.formatters
98
+ @formatters ||= {}
99
+ end
100
+
101
+ # @api private
102
+ def initialize(reporter)
103
+ @formatters = []
104
+ @reporter = reporter
105
+ self.default_formatter = 'progress'
106
+ end
107
+
108
+ # @return [Array] the loaded formatters
109
+ attr_reader :formatters
110
+
111
+ # @return [Reporter] the reporter
112
+ attr_reader :reporter
113
+
114
+ # @return [String] the default formatter to setup, defaults to `progress`
115
+ attr_accessor :default_formatter
116
+
117
+ # @private
118
+ def setup_default(output_stream, deprecation_stream)
119
+ add default_formatter, output_stream if @formatters.empty?
120
+
121
+ unless @formatters.any? { |formatter| DeprecationFormatter === formatter }
122
+ add DeprecationFormatter, deprecation_stream, output_stream
123
+ end
124
+
125
+ unless existing_formatter_implements?(:message)
126
+ add FallbackMessageFormatter, output_stream
127
+ end
128
+
129
+ return unless RSpec.configuration.profile_examples?
130
+
131
+ @reporter.setup_profiler
132
+
133
+ return if existing_formatter_implements?(:dump_profile)
134
+
135
+ add RSpec::Core::Formatters::ProfileFormatter, output_stream
136
+ end
137
+
138
+ # @private
139
+ def add(formatter_to_use, *paths)
140
+ formatter_class = find_formatter(formatter_to_use)
141
+
142
+ args = paths.map { |p| p.respond_to?(:puts) ? p : file_at(p) }
143
+
144
+ if !Loader.formatters[formatter_class].nil?
145
+ formatter = formatter_class.new(*args)
146
+ register formatter, notifications_for(formatter_class)
147
+ elsif defined?(RSpec::LegacyFormatters)
148
+ formatter = RSpec::LegacyFormatters.load_formatter formatter_class, *args
149
+ register formatter, formatter.notifications
150
+ else
151
+ call_site = "Formatter added at: #{::RSpec::CallerFilter.first_non_rspec_line}"
152
+
153
+ RSpec.warn_deprecation <<-WARNING.gsub(/\s*\|/, ' ')
154
+ |The #{formatter_class} formatter uses the deprecated formatter
155
+ |interface not supported directly by RSpec 3.
156
+ |
157
+ |To continue to use this formatter you must install the
158
+ |`rspec-legacy_formatters` gem, which provides support
159
+ |for legacy formatters or upgrade the formatter to a
160
+ |compatible version.
161
+ |
162
+ |#{call_site}
163
+ WARNING
164
+ end
165
+ end
166
+
167
+ private
168
+
169
+ def find_formatter(formatter_to_use)
170
+ built_in_formatter(formatter_to_use) ||
171
+ custom_formatter(formatter_to_use) ||
172
+ (raise ArgumentError, "Formatter '#{formatter_to_use}' unknown - " \
173
+ "maybe you meant 'documentation' or 'progress'?.")
174
+ end
175
+
176
+ def register(formatter, notifications)
177
+ return if duplicate_formatter_exists?(formatter)
178
+ @reporter.register_listener formatter, *notifications
179
+ @formatters << formatter
180
+ formatter
181
+ end
182
+
183
+ def duplicate_formatter_exists?(new_formatter)
184
+ @formatters.any? do |formatter|
185
+ formatter.class == new_formatter.class && formatter.output == new_formatter.output
186
+ end
187
+ end
188
+
189
+ def existing_formatter_implements?(notification)
190
+ @reporter.registered_listeners(notification).any?
191
+ end
192
+
193
+ def built_in_formatter(key)
194
+ case key.to_s
195
+ when 'd', 'doc', 'documentation'
196
+ DocumentationFormatter
197
+ when 'h', 'html'
198
+ HtmlFormatter
199
+ when 'p', 'progress'
200
+ ProgressFormatter
201
+ when 'j', 'json'
202
+ JsonFormatter
203
+ when 'bisect'
204
+ BisectFormatter
205
+ end
206
+ end
207
+
208
+ def notifications_for(formatter_class)
209
+ formatter_class.ancestors.inject(::RSpec::Core::Set.new) do |notifications, klass|
210
+ notifications.merge Loader.formatters.fetch(klass) { ::RSpec::Core::Set.new }
211
+ end
212
+ end
213
+
214
+ def custom_formatter(formatter_ref)
215
+ if Class === formatter_ref
216
+ formatter_ref
217
+ elsif string_const?(formatter_ref)
218
+ begin
219
+ formatter_ref.gsub(/^::/, '').split('::').inject(Object) { |a, e| a.const_get e }
220
+ rescue NameError
221
+ require(path_for(formatter_ref)) ? retry : raise
222
+ end
223
+ end
224
+ end
225
+
226
+ def string_const?(str)
227
+ str.is_a?(String) && /\A[A-Z][a-zA-Z0-9_:]*\z/ =~ str
228
+ end
229
+
230
+ def path_for(const_ref)
231
+ underscore_with_fix_for_non_standard_rspec_naming(const_ref)
232
+ end
233
+
234
+ def underscore_with_fix_for_non_standard_rspec_naming(string)
235
+ underscore(string).sub(%r{(^|/)r_spec($|/)}, '\\1rspec\\2')
236
+ end
237
+
238
+ # activesupport/lib/active_support/inflector/methods.rb, line 48
239
+ def underscore(camel_cased_word)
240
+ word = camel_cased_word.to_s.dup
241
+ word.gsub!(/::/, '/')
242
+ word.gsub!(/([A-Z]+)([A-Z][a-z])/, '\1_\2')
243
+ word.gsub!(/([a-z\d])([A-Z])/, '\1_\2')
244
+ word.tr!("-", "_")
245
+ word.downcase!
246
+ word
247
+ end
248
+
249
+ def file_at(path)
250
+ RSpec::Support::DirectoryMaker.mkdir_p(File.dirname(path))
251
+ File.new(path, 'w')
252
+ end
253
+ end
254
+ end
@@ -0,0 +1,70 @@
1
+ RSpec::Support.require_rspec_core "formatters/helpers"
2
+ require 'stringio'
3
+
4
+ module RSpec
5
+ module Core
6
+ module Formatters
7
+ # RSpec's built-in formatters are all subclasses of
8
+ # RSpec::Core::Formatters::BaseTextFormatter.
9
+ #
10
+ # @see RSpec::Core::Formatters::BaseTextFormatter
11
+ # @see RSpec::Core::Reporter
12
+ # @see RSpec::Core::Formatters::Protocol
13
+ class BaseFormatter
14
+ # All formatters inheriting from this formatter will receive these
15
+ # notifications.
16
+ Formatters.register self, :start, :example_group_started, :close
17
+ attr_accessor :example_group
18
+ attr_reader :output
19
+
20
+ # @api public
21
+ # @param output [IO] the formatter output
22
+ # @see RSpec::Core::Formatters::Protocol#initialize
23
+ def initialize(output)
24
+ @output = output || StringIO.new
25
+ @example_group = nil
26
+ end
27
+
28
+ # @api public
29
+ #
30
+ # @param notification [StartNotification]
31
+ # @see RSpec::Core::Formatters::Protocol#start
32
+ def start(notification)
33
+ start_sync_output
34
+ @example_count = notification.count
35
+ end
36
+
37
+ # @api public
38
+ #
39
+ # @param notification [GroupNotification] containing example_group
40
+ # subclass of `RSpec::Core::ExampleGroup`
41
+ # @see RSpec::Core::Formatters::Protocol#example_group_started
42
+ def example_group_started(notification)
43
+ @example_group = notification.group
44
+ end
45
+
46
+ # @api public
47
+ #
48
+ # @param _notification [NullNotification] (Ignored)
49
+ # @see RSpec::Core::Formatters::Protocol#close
50
+ def close(_notification)
51
+ restore_sync_output
52
+ end
53
+
54
+ private
55
+
56
+ def start_sync_output
57
+ @old_sync, output.sync = output.sync, true if output_supports_sync
58
+ end
59
+
60
+ def restore_sync_output
61
+ output.sync = @old_sync if output_supports_sync && !output.closed?
62
+ end
63
+
64
+ def output_supports_sync
65
+ output.respond_to?(:sync=)
66
+ end
67
+ end
68
+ end
69
+ end
70
+ end
@@ -0,0 +1,77 @@
1
+ RSpec::Support.require_rspec_core "formatters/base_formatter"
2
+ RSpec::Support.require_rspec_core "formatters/console_codes"
3
+
4
+ module RSpec
5
+ module Core
6
+ module Formatters
7
+ # Base for all of RSpec's built-in formatters. See
8
+ # RSpec::Core::Formatters::BaseFormatter to learn more about all of the
9
+ # methods called by the reporter.
10
+ #
11
+ # @see RSpec::Core::Formatters::BaseFormatter
12
+ # @see RSpec::Core::Reporter
13
+ class BaseTextFormatter < BaseFormatter
14
+ Formatters.register self,
15
+ :message, :dump_summary, :dump_failures, :dump_pending, :seed
16
+
17
+ # @api public
18
+ #
19
+ # Used by the reporter to send messages to the output stream.
20
+ #
21
+ # @param notification [MessageNotification] containing message
22
+ def message(notification)
23
+ output.puts notification.message
24
+ end
25
+
26
+ # @api public
27
+ #
28
+ # Dumps detailed information about each example failure.
29
+ #
30
+ # @param notification [NullNotification]
31
+ def dump_failures(notification)
32
+ return if notification.failure_notifications.empty?
33
+ output.puts notification.fully_formatted_failed_examples
34
+ end
35
+
36
+ # @api public
37
+ #
38
+ # This method is invoked after the dumping of examples and failures.
39
+ # Each parameter is assigned to a corresponding attribute.
40
+ #
41
+ # @param summary [SummaryNotification] containing duration,
42
+ # example_count, failure_count and pending_count
43
+ def dump_summary(summary)
44
+ output.puts summary.fully_formatted
45
+ end
46
+
47
+ # @private
48
+ def dump_pending(notification)
49
+ return if notification.pending_examples.empty?
50
+ output.puts notification.fully_formatted_pending_examples
51
+ end
52
+
53
+ # @private
54
+ def seed(notification)
55
+ return unless notification.seed_used?
56
+ output.puts notification.fully_formatted
57
+ end
58
+
59
+ # @api public
60
+ #
61
+ # Invoked at the very end, `close` allows the formatter to clean
62
+ # up resources, e.g. open streams, etc.
63
+ #
64
+ # @param _notification [NullNotification] (Ignored)
65
+ def close(_notification)
66
+ return unless IO === output
67
+ return if output.closed?
68
+
69
+ output.puts
70
+
71
+ output.flush
72
+ output.close unless output == $stdout
73
+ end
74
+ end
75
+ end
76
+ end
77
+ end
@@ -0,0 +1,68 @@
1
+ require 'drb/drb'
2
+
3
+ module RSpec
4
+ module Core
5
+ module Formatters
6
+ # Used by `--bisect`. When it shells out and runs a portion of the suite, it uses
7
+ # this formatter as a means to have the status reported back to it, via DRb.
8
+ #
9
+ # Note that since DRb calls carry considerable overhead compared to normal
10
+ # method calls, we try to minimize the number of DRb calls for perf reasons,
11
+ # opting to communicate only at the start and the end of the run, rather than
12
+ # after each example.
13
+ # @private
14
+ class BisectFormatter
15
+ Formatters.register self, :start, :start_dump, :example_started,
16
+ :example_failed, :example_passed, :example_pending
17
+
18
+ def initialize(_output)
19
+ port = RSpec.configuration.drb_port
20
+ drb_uri = "druby://localhost:#{port}"
21
+ @all_example_ids = []
22
+ @failed_example_ids = []
23
+ @bisect_server = DRbObject.new_with_uri(drb_uri)
24
+ @remaining_failures = []
25
+ end
26
+
27
+ def start(_notification)
28
+ @remaining_failures = Set.new(@bisect_server.expected_failures)
29
+ end
30
+
31
+ def example_started(notification)
32
+ @all_example_ids << notification.example.id
33
+ end
34
+
35
+ def example_failed(notification)
36
+ @failed_example_ids << notification.example.id
37
+ example_finished(notification, :failed)
38
+ end
39
+
40
+ def example_passed(notification)
41
+ example_finished(notification, :passed)
42
+ end
43
+
44
+ def example_pending(notification)
45
+ example_finished(notification, :pending)
46
+ end
47
+
48
+ def start_dump(_notification)
49
+ @bisect_server.latest_run_results = RunResults.new(
50
+ @all_example_ids, @failed_example_ids
51
+ )
52
+ end
53
+
54
+ RunResults = Struct.new(:all_example_ids, :failed_example_ids)
55
+
56
+ private
57
+
58
+ def example_finished(notification, status)
59
+ return unless @remaining_failures.include?(notification.example.id)
60
+ @remaining_failures.delete(notification.example.id)
61
+
62
+ return if status == :failed && !@remaining_failures.empty?
63
+ RSpec.world.wants_to_quit = true
64
+ end
65
+ end
66
+ end
67
+ end
68
+ end