lazy_record 0.1.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 (1351) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +9 -0
  3. data/.rspec +2 -0
  4. data/.rubocop.yml +5 -0
  5. data/.ruby-gemset +1 -0
  6. data/.ruby-version +1 -0
  7. data/Gemfile +5 -0
  8. data/LICENSE.txt +21 -0
  9. data/README.md +41 -0
  10. data/Rakefile +3 -0
  11. data/bin/console +15 -0
  12. data/bin/setup +8 -0
  13. data/lazy_record.gemspec +39 -0
  14. data/lib/lazy_record.rb +14 -0
  15. data/lib/lazy_record/associations.rb +48 -0
  16. data/lib/lazy_record/attributes.rb +56 -0
  17. data/lib/lazy_record/base.rb +62 -0
  18. data/lib/lazy_record/callbacks.rb +30 -0
  19. data/lib/lazy_record/dynamic_modules.rb +17 -0
  20. data/lib/lazy_record/methods.rb +36 -0
  21. data/lib/lazy_record/relation.rb +37 -0
  22. data/lib/lazy_record/scopes.rb +20 -0
  23. data/lib/lazy_record/validations.rb +31 -0
  24. data/lib/lazy_record/version.rb +4 -0
  25. data/vendor/bundle/bin/coderay +22 -0
  26. data/vendor/bundle/bin/htmldiff +24 -0
  27. data/vendor/bundle/bin/ldiff +24 -0
  28. data/vendor/bundle/bin/pry +22 -0
  29. data/vendor/bundle/bin/rake +22 -0
  30. data/vendor/bundle/bin/rspec +22 -0
  31. data/vendor/bundle/cache/activesupport-5.0.2.gem +0 -0
  32. data/vendor/bundle/cache/coderay-1.1.1.gem +0 -0
  33. data/vendor/bundle/cache/concurrent-ruby-1.0.5.gem +0 -0
  34. data/vendor/bundle/cache/diff-lcs-1.3.gem +0 -0
  35. data/vendor/bundle/cache/i18n-0.8.1.gem +0 -0
  36. data/vendor/bundle/cache/method_source-0.8.2.gem +0 -0
  37. data/vendor/bundle/cache/minitest-5.10.1.gem +0 -0
  38. data/vendor/bundle/cache/pry-0.10.4.gem +0 -0
  39. data/vendor/bundle/cache/rake-10.5.0.gem +0 -0
  40. data/vendor/bundle/cache/rspec-3.5.0.gem +0 -0
  41. data/vendor/bundle/cache/rspec-core-3.5.4.gem +0 -0
  42. data/vendor/bundle/cache/rspec-expectations-3.5.0.gem +0 -0
  43. data/vendor/bundle/cache/rspec-mocks-3.5.0.gem +0 -0
  44. data/vendor/bundle/cache/rspec-support-3.5.0.gem +0 -0
  45. data/vendor/bundle/cache/slop-3.6.0.gem +0 -0
  46. data/vendor/bundle/cache/thread_safe-0.3.6.gem +0 -0
  47. data/vendor/bundle/cache/tzinfo-1.2.2.gem +0 -0
  48. data/vendor/bundle/gems/activesupport-5.0.2/CHANGELOG.md +922 -0
  49. data/vendor/bundle/gems/activesupport-5.0.2/MIT-LICENSE +20 -0
  50. data/vendor/bundle/gems/activesupport-5.0.2/README.rdoc +39 -0
  51. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support.rb +99 -0
  52. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/all.rb +3 -0
  53. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/array_inquirer.rb +44 -0
  54. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/backtrace_cleaner.rb +103 -0
  55. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/benchmarkable.rb +49 -0
  56. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/builder.rb +6 -0
  57. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/cache.rb +701 -0
  58. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/cache/file_store.rb +204 -0
  59. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/cache/mem_cache_store.rb +207 -0
  60. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/cache/memory_store.rb +167 -0
  61. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/cache/null_store.rb +41 -0
  62. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/cache/strategy/local_cache.rb +172 -0
  63. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/cache/strategy/local_cache_middleware.rb +44 -0
  64. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/callbacks.rb +791 -0
  65. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/concern.rb +142 -0
  66. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/concurrency/latch.rb +26 -0
  67. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/concurrency/share_lock.rb +226 -0
  68. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/configurable.rb +148 -0
  69. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext.rb +4 -0
  70. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/array.rb +7 -0
  71. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/array/access.rb +90 -0
  72. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/array/conversions.rb +211 -0
  73. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/array/extract_options.rb +29 -0
  74. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/array/grouping.rb +107 -0
  75. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/array/inquiry.rb +17 -0
  76. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/array/prepend_and_append.rb +7 -0
  77. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/array/wrap.rb +46 -0
  78. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/benchmark.rb +14 -0
  79. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/big_decimal.rb +1 -0
  80. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/big_decimal/conversions.rb +14 -0
  81. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/class.rb +2 -0
  82. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/class/attribute.rb +128 -0
  83. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/class/attribute_accessors.rb +4 -0
  84. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/class/subclasses.rb +41 -0
  85. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/date.rb +5 -0
  86. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/date/acts_like.rb +8 -0
  87. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/date/blank.rb +12 -0
  88. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/date/calculations.rb +143 -0
  89. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/date/conversions.rb +95 -0
  90. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/date/zones.rb +6 -0
  91. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/date_and_time/calculations.rb +335 -0
  92. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/date_and_time/compatibility.rb +22 -0
  93. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/date_and_time/zones.rb +40 -0
  94. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/date_time.rb +5 -0
  95. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/date_time/acts_like.rb +14 -0
  96. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/date_time/blank.rb +12 -0
  97. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/date_time/calculations.rb +199 -0
  98. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/date_time/compatibility.rb +5 -0
  99. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/date_time/conversions.rb +105 -0
  100. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/digest/uuid.rb +51 -0
  101. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/enumerable.rb +124 -0
  102. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/file.rb +1 -0
  103. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/file/atomic.rb +68 -0
  104. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/hash.rb +9 -0
  105. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/hash/compact.rb +24 -0
  106. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/hash/conversions.rb +262 -0
  107. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/hash/deep_merge.rb +38 -0
  108. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/hash/except.rb +22 -0
  109. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/hash/indifferent_access.rb +23 -0
  110. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/hash/keys.rb +170 -0
  111. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/hash/reverse_merge.rb +22 -0
  112. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/hash/slice.rb +48 -0
  113. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/hash/transform_values.rb +29 -0
  114. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/integer.rb +3 -0
  115. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/integer/inflections.rb +29 -0
  116. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/integer/multiple.rb +10 -0
  117. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/integer/time.rb +29 -0
  118. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/kernel.rb +4 -0
  119. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/kernel/agnostics.rb +11 -0
  120. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/kernel/concern.rb +12 -0
  121. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/kernel/debugger.rb +3 -0
  122. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/kernel/reporting.rb +43 -0
  123. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/kernel/singleton_class.rb +6 -0
  124. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/load_error.rb +31 -0
  125. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/marshal.rb +22 -0
  126. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/module.rb +12 -0
  127. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/module/aliasing.rb +74 -0
  128. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/module/anonymous.rb +28 -0
  129. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/module/attr_internal.rb +36 -0
  130. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/module/attribute_accessors.rb +212 -0
  131. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/module/attribute_accessors_per_thread.rb +141 -0
  132. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/module/concerning.rb +135 -0
  133. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/module/delegation.rb +216 -0
  134. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/module/deprecation.rb +23 -0
  135. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/module/introspection.rb +68 -0
  136. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/module/method_transplanting.rb +3 -0
  137. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/module/qualified_const.rb +70 -0
  138. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/module/reachable.rb +8 -0
  139. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/module/remove_method.rb +35 -0
  140. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/name_error.rb +31 -0
  141. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/numeric.rb +4 -0
  142. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/numeric/bytes.rb +64 -0
  143. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/numeric/conversions.rb +144 -0
  144. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/numeric/inquiry.rb +26 -0
  145. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/numeric/time.rb +74 -0
  146. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/object.rb +14 -0
  147. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/object/acts_like.rb +10 -0
  148. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/object/blank.rb +143 -0
  149. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/object/conversions.rb +4 -0
  150. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/object/deep_dup.rb +53 -0
  151. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/object/duplicable.rb +124 -0
  152. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/object/inclusion.rb +27 -0
  153. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/object/instance_variables.rb +28 -0
  154. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/object/json.rb +205 -0
  155. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/object/to_param.rb +1 -0
  156. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/object/to_query.rb +84 -0
  157. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/object/try.rb +146 -0
  158. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/object/with_options.rb +69 -0
  159. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/range.rb +4 -0
  160. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/range/conversions.rb +31 -0
  161. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/range/each.rb +21 -0
  162. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/range/include_range.rb +23 -0
  163. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/range/overlaps.rb +8 -0
  164. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/regexp.rb +5 -0
  165. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/securerandom.rb +23 -0
  166. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/string.rb +13 -0
  167. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/string/access.rb +104 -0
  168. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/string/behavior.rb +6 -0
  169. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/string/conversions.rb +57 -0
  170. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/string/exclude.rb +11 -0
  171. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/string/filters.rb +102 -0
  172. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/string/indent.rb +43 -0
  173. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/string/inflections.rb +244 -0
  174. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/string/inquiry.rb +13 -0
  175. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/string/multibyte.rb +53 -0
  176. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/string/output_safety.rb +260 -0
  177. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/string/starts_ends_with.rb +4 -0
  178. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/string/strip.rb +23 -0
  179. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/string/zones.rb +14 -0
  180. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/struct.rb +3 -0
  181. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/time.rb +5 -0
  182. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/time/acts_like.rb +8 -0
  183. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/time/calculations.rb +290 -0
  184. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/time/compatibility.rb +5 -0
  185. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/time/conversions.rb +67 -0
  186. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/time/marshal.rb +3 -0
  187. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/time/zones.rb +111 -0
  188. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/core_ext/uri.rb +24 -0
  189. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/dependencies.rb +754 -0
  190. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/dependencies/autoload.rb +77 -0
  191. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/dependencies/interlock.rb +55 -0
  192. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/deprecation.rb +43 -0
  193. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/deprecation/behaviors.rb +90 -0
  194. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/deprecation/instance_delegator.rb +37 -0
  195. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/deprecation/method_wrappers.rb +70 -0
  196. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/deprecation/proxy_wrappers.rb +149 -0
  197. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/deprecation/reporting.rb +112 -0
  198. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/descendants_tracker.rb +60 -0
  199. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/duration.rb +182 -0
  200. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/duration/iso8601_parser.rb +122 -0
  201. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/duration/iso8601_serializer.rb +51 -0
  202. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/evented_file_update_checker.rb +194 -0
  203. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/execution_wrapper.rb +126 -0
  204. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/executor.rb +6 -0
  205. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/file_update_checker.rb +157 -0
  206. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/gem_version.rb +15 -0
  207. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/gzip.rb +36 -0
  208. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/hash_with_indifferent_access.rb +329 -0
  209. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/i18n.rb +13 -0
  210. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/i18n_railtie.rb +115 -0
  211. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/inflections.rb +70 -0
  212. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/inflector.rb +7 -0
  213. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/inflector/inflections.rb +242 -0
  214. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/inflector/methods.rb +390 -0
  215. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/inflector/transliterate.rb +112 -0
  216. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/json.rb +2 -0
  217. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/json/decoding.rb +74 -0
  218. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/json/encoding.rb +127 -0
  219. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/key_generator.rb +71 -0
  220. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/lazy_load_hooks.rb +56 -0
  221. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/locale/en.yml +135 -0
  222. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/log_subscriber.rb +109 -0
  223. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/log_subscriber/test_helper.rb +104 -0
  224. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/logger.rb +106 -0
  225. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/logger_silence.rb +28 -0
  226. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/logger_thread_safe_level.rb +31 -0
  227. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/message_encryptor.rb +114 -0
  228. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/message_verifier.rb +134 -0
  229. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/multibyte.rb +21 -0
  230. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/multibyte/chars.rb +231 -0
  231. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/multibyte/unicode.rb +413 -0
  232. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/notifications.rb +212 -0
  233. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/notifications/fanout.rb +157 -0
  234. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/notifications/instrumenter.rb +91 -0
  235. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/number_helper.rb +368 -0
  236. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/number_helper/number_converter.rb +182 -0
  237. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/number_helper/number_to_currency_converter.rb +44 -0
  238. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/number_helper/number_to_delimited_converter.rb +28 -0
  239. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/number_helper/number_to_human_converter.rb +68 -0
  240. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/number_helper/number_to_human_size_converter.rb +62 -0
  241. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/number_helper/number_to_percentage_converter.rb +12 -0
  242. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/number_helper/number_to_phone_converter.rb +58 -0
  243. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/number_helper/number_to_rounded_converter.rb +92 -0
  244. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/option_merger.rb +25 -0
  245. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/ordered_hash.rb +48 -0
  246. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/ordered_options.rb +81 -0
  247. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/per_thread_registry.rb +58 -0
  248. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/proxy_object.rb +13 -0
  249. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/rails.rb +27 -0
  250. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/railtie.rb +51 -0
  251. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/reloader.rb +129 -0
  252. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/rescuable.rb +167 -0
  253. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/security_utils.rb +27 -0
  254. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/string_inquirer.rb +26 -0
  255. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/subscriber.rb +120 -0
  256. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/tagged_logging.rb +77 -0
  257. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/test_case.rb +88 -0
  258. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/testing/assertions.rb +99 -0
  259. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/testing/autorun.rb +9 -0
  260. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/testing/constant_lookup.rb +50 -0
  261. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/testing/declarative.rb +26 -0
  262. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/testing/deprecation.rb +36 -0
  263. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/testing/file_fixtures.rb +34 -0
  264. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/testing/isolation.rb +115 -0
  265. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/testing/method_call_assertions.rb +41 -0
  266. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/testing/setup_and_teardown.rb +50 -0
  267. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/testing/stream.rb +42 -0
  268. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/testing/tagged_logging.rb +25 -0
  269. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/testing/time_helpers.rb +134 -0
  270. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/time.rb +18 -0
  271. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/time_with_zone.rb +500 -0
  272. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/values/time_zone.rb +474 -0
  273. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/values/unicode_tables.dat +0 -0
  274. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/version.rb +8 -0
  275. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/xml_mini.rb +209 -0
  276. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/xml_mini/jdom.rb +181 -0
  277. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/xml_mini/libxml.rb +79 -0
  278. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/xml_mini/libxmlsax.rb +85 -0
  279. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/xml_mini/nokogiri.rb +83 -0
  280. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/xml_mini/nokogirisax.rb +87 -0
  281. data/vendor/bundle/gems/activesupport-5.0.2/lib/active_support/xml_mini/rexml.rb +128 -0
  282. data/vendor/bundle/gems/coderay-1.1.1/README_INDEX.rdoc +123 -0
  283. data/vendor/bundle/gems/coderay-1.1.1/Rakefile +37 -0
  284. data/vendor/bundle/gems/coderay-1.1.1/bin/coderay +215 -0
  285. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay.rb +284 -0
  286. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/duo.rb +81 -0
  287. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/encoders.rb +18 -0
  288. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/encoders/_map.rb +17 -0
  289. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/encoders/comment_filter.rb +25 -0
  290. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/encoders/count.rb +39 -0
  291. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/encoders/debug.rb +49 -0
  292. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/encoders/debug_lint.rb +63 -0
  293. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/encoders/div.rb +23 -0
  294. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/encoders/encoder.rb +190 -0
  295. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/encoders/filter.rb +58 -0
  296. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/encoders/html.rb +333 -0
  297. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/encoders/html/css.rb +65 -0
  298. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/encoders/html/numbering.rb +108 -0
  299. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/encoders/html/output.rb +166 -0
  300. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/encoders/json.rb +83 -0
  301. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/encoders/lines_of_code.rb +45 -0
  302. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/encoders/lint.rb +59 -0
  303. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/encoders/null.rb +18 -0
  304. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/encoders/page.rb +24 -0
  305. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/encoders/span.rb +23 -0
  306. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/encoders/statistic.rb +95 -0
  307. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/encoders/terminal.rb +195 -0
  308. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/encoders/text.rb +46 -0
  309. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/encoders/token_kind_filter.rb +111 -0
  310. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/encoders/xml.rb +72 -0
  311. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/encoders/yaml.rb +50 -0
  312. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/for_redcloth.rb +95 -0
  313. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/helpers/file_type.rb +151 -0
  314. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/helpers/plugin.rb +55 -0
  315. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/helpers/plugin_host.rb +221 -0
  316. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/helpers/word_list.rb +72 -0
  317. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/scanners.rb +27 -0
  318. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/scanners/_map.rb +24 -0
  319. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/scanners/c.rb +189 -0
  320. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/scanners/clojure.rb +217 -0
  321. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/scanners/cpp.rb +215 -0
  322. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/scanners/css.rb +196 -0
  323. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/scanners/debug.rb +75 -0
  324. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/scanners/delphi.rb +144 -0
  325. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/scanners/diff.rb +221 -0
  326. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/scanners/erb.rb +81 -0
  327. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/scanners/go.rb +208 -0
  328. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/scanners/groovy.rb +268 -0
  329. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/scanners/haml.rb +168 -0
  330. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/scanners/html.rb +275 -0
  331. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/scanners/java.rb +174 -0
  332. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/scanners/java/builtin_types.rb +421 -0
  333. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/scanners/java_script.rb +237 -0
  334. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/scanners/json.rb +98 -0
  335. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/scanners/lua.rb +280 -0
  336. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/scanners/php.rb +527 -0
  337. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/scanners/python.rb +287 -0
  338. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/scanners/raydebug.rb +75 -0
  339. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/scanners/ruby.rb +477 -0
  340. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/scanners/ruby/patterns.rb +178 -0
  341. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/scanners/ruby/string_state.rb +79 -0
  342. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/scanners/sass.rb +232 -0
  343. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/scanners/scanner.rb +337 -0
  344. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/scanners/sql.rb +169 -0
  345. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/scanners/taskpaper.rb +36 -0
  346. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/scanners/text.rb +26 -0
  347. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/scanners/xml.rb +17 -0
  348. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/scanners/yaml.rb +140 -0
  349. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/styles.rb +15 -0
  350. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/styles/_map.rb +7 -0
  351. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/styles/alpha.rb +153 -0
  352. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/styles/style.rb +18 -0
  353. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/token_kinds.rb +85 -0
  354. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/tokens.rb +161 -0
  355. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/tokens_proxy.rb +55 -0
  356. data/vendor/bundle/gems/coderay-1.1.1/lib/coderay/version.rb +3 -0
  357. data/vendor/bundle/gems/coderay-1.1.1/test/functional/basic.rb +318 -0
  358. data/vendor/bundle/gems/coderay-1.1.1/test/functional/examples.rb +129 -0
  359. data/vendor/bundle/gems/coderay-1.1.1/test/functional/for_redcloth.rb +78 -0
  360. data/vendor/bundle/gems/coderay-1.1.1/test/functional/suite.rb +15 -0
  361. data/vendor/bundle/gems/concurrent-ruby-1.0.5/CHANGELOG.md +387 -0
  362. data/vendor/bundle/gems/concurrent-ruby-1.0.5/LICENSE.txt +21 -0
  363. data/vendor/bundle/gems/concurrent-ruby-1.0.5/README.md +247 -0
  364. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent.rb +130 -0
  365. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/agent.rb +587 -0
  366. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/array.rb +39 -0
  367. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/async.rb +445 -0
  368. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atom.rb +222 -0
  369. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic/abstract_thread_local_var.rb +66 -0
  370. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic/atomic_boolean.rb +122 -0
  371. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic/atomic_fixnum.rb +139 -0
  372. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic/atomic_reference.rb +51 -0
  373. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic/count_down_latch.rb +100 -0
  374. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic/cyclic_barrier.rb +128 -0
  375. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic/event.rb +109 -0
  376. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic/java_count_down_latch.rb +39 -0
  377. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic/java_thread_local_var.rb +37 -0
  378. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic/mutex_atomic_boolean.rb +60 -0
  379. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic/mutex_atomic_fixnum.rb +75 -0
  380. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic/mutex_count_down_latch.rb +43 -0
  381. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic/mutex_semaphore.rb +115 -0
  382. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic/read_write_lock.rb +253 -0
  383. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic/reentrant_read_write_lock.rb +377 -0
  384. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic/ruby_thread_local_var.rb +161 -0
  385. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic/semaphore.rb +145 -0
  386. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic/thread_local_var.rb +104 -0
  387. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic_reference/concurrent_update_error.rb +8 -0
  388. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic_reference/direct_update.rb +81 -0
  389. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic_reference/jruby+truffle.rb +2 -0
  390. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic_reference/jruby.rb +16 -0
  391. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic_reference/mutex_atomic.rb +61 -0
  392. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic_reference/numeric_cas_wrapper.rb +28 -0
  393. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic_reference/rbx.rb +22 -0
  394. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic_reference/ruby.rb +32 -0
  395. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomics.rb +53 -0
  396. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/collection/copy_on_notify_observer_set.rb +107 -0
  397. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/collection/copy_on_write_observer_set.rb +111 -0
  398. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/collection/java_non_concurrent_priority_queue.rb +84 -0
  399. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/collection/map/atomic_reference_map_backend.rb +927 -0
  400. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/collection/map/mri_map_backend.rb +66 -0
  401. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/collection/map/non_concurrent_map_backend.rb +141 -0
  402. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/collection/map/synchronized_map_backend.rb +82 -0
  403. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/collection/non_concurrent_priority_queue.rb +143 -0
  404. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/collection/ruby_non_concurrent_priority_queue.rb +150 -0
  405. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/concern/deprecation.rb +34 -0
  406. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/concern/dereferenceable.rb +73 -0
  407. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/concern/logging.rb +27 -0
  408. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/concern/obligation.rb +220 -0
  409. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/concern/observable.rb +110 -0
  410. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/configuration.rb +188 -0
  411. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/constants.rb +8 -0
  412. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/dataflow.rb +80 -0
  413. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/delay.rb +197 -0
  414. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/edge.rb +26 -0
  415. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/errors.rb +69 -0
  416. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/exchanger.rb +356 -0
  417. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executor/abstract_executor_service.rb +134 -0
  418. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executor/cached_thread_pool.rb +62 -0
  419. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executor/executor_service.rb +185 -0
  420. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executor/fixed_thread_pool.rb +206 -0
  421. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executor/immediate_executor.rb +66 -0
  422. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executor/indirect_immediate_executor.rb +44 -0
  423. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executor/java_executor_service.rb +100 -0
  424. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executor/java_single_thread_executor.rb +29 -0
  425. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executor/java_thread_pool_executor.rb +120 -0
  426. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executor/ruby_executor_service.rb +78 -0
  427. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executor/ruby_single_thread_executor.rb +22 -0
  428. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executor/ruby_thread_pool_executor.rb +362 -0
  429. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executor/safe_task_executor.rb +35 -0
  430. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executor/serial_executor_service.rb +34 -0
  431. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executor/serialized_execution.rb +107 -0
  432. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executor/serialized_execution_delegator.rb +28 -0
  433. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executor/simple_executor_service.rb +100 -0
  434. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executor/single_thread_executor.rb +56 -0
  435. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executor/thread_pool_executor.rb +87 -0
  436. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executor/timer_set.rb +175 -0
  437. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executors.rb +20 -0
  438. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/future.rb +138 -0
  439. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/hash.rb +36 -0
  440. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/immutable_struct.rb +93 -0
  441. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/ivar.rb +208 -0
  442. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/lazy_register.rb +81 -0
  443. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/map.rb +240 -0
  444. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/maybe.rb +229 -0
  445. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/mutable_struct.rb +228 -0
  446. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/mvar.rb +242 -0
  447. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/options.rb +42 -0
  448. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/promise.rb +547 -0
  449. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/scheduled_task.rb +318 -0
  450. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/settable_struct.rb +128 -0
  451. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/synchronization.rb +31 -0
  452. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/synchronization/abstract_lockable_object.rb +98 -0
  453. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/synchronization/abstract_object.rb +24 -0
  454. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/synchronization/abstract_struct.rb +157 -0
  455. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/synchronization/condition.rb +58 -0
  456. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/synchronization/jruby_lockable_object.rb +13 -0
  457. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/synchronization/jruby_object.rb +44 -0
  458. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/synchronization/lock.rb +34 -0
  459. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/synchronization/lockable_object.rb +74 -0
  460. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/synchronization/mri_lockable_object.rb +71 -0
  461. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/synchronization/mri_object.rb +43 -0
  462. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/synchronization/object.rb +153 -0
  463. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/synchronization/rbx_lockable_object.rb +65 -0
  464. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/synchronization/rbx_object.rb +48 -0
  465. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/synchronization/truffle_lockable_object.rb +9 -0
  466. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/synchronization/truffle_object.rb +31 -0
  467. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/synchronization/volatile.rb +34 -0
  468. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/thread_safe/synchronized_delegator.rb +50 -0
  469. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/thread_safe/util.rb +16 -0
  470. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/thread_safe/util/adder.rb +74 -0
  471. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/thread_safe/util/array_hash_rbx.rb +30 -0
  472. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/thread_safe/util/cheap_lockable.rb +118 -0
  473. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/thread_safe/util/power_of_two_tuple.rb +38 -0
  474. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/thread_safe/util/striped64.rb +241 -0
  475. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/thread_safe/util/volatile.rb +75 -0
  476. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/thread_safe/util/xor_shift_random.rb +50 -0
  477. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/timer_task.rb +331 -0
  478. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/tuple.rb +86 -0
  479. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/tvar.rb +258 -0
  480. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/utility/at_exit.rb +97 -0
  481. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/utility/engine.rb +56 -0
  482. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/utility/monotonic_time.rb +58 -0
  483. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/utility/native_extension_loader.rb +73 -0
  484. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/utility/native_integer.rb +53 -0
  485. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/utility/processor_counter.rb +160 -0
  486. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/version.rb +4 -0
  487. data/vendor/bundle/gems/diff-lcs-1.3/.rspec +1 -0
  488. data/vendor/bundle/gems/diff-lcs-1.3/Code-of-Conduct.md +74 -0
  489. data/vendor/bundle/gems/diff-lcs-1.3/Contributing.md +83 -0
  490. data/vendor/bundle/gems/diff-lcs-1.3/History.md +220 -0
  491. data/vendor/bundle/gems/diff-lcs-1.3/License.md +39 -0
  492. data/vendor/bundle/gems/diff-lcs-1.3/Manifest.txt +37 -0
  493. data/vendor/bundle/gems/diff-lcs-1.3/README.rdoc +84 -0
  494. data/vendor/bundle/gems/diff-lcs-1.3/Rakefile +57 -0
  495. data/vendor/bundle/gems/diff-lcs-1.3/autotest/discover.rb +1 -0
  496. data/vendor/bundle/gems/diff-lcs-1.3/bin/htmldiff +32 -0
  497. data/vendor/bundle/gems/diff-lcs-1.3/bin/ldiff +6 -0
  498. data/vendor/bundle/gems/diff-lcs-1.3/docs/COPYING.txt +339 -0
  499. data/vendor/bundle/gems/diff-lcs-1.3/docs/artistic.txt +127 -0
  500. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff-lcs.rb +3 -0
  501. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs.rb +725 -0
  502. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/array.rb +7 -0
  503. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/block.rb +37 -0
  504. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/callbacks.rb +322 -0
  505. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/change.rb +181 -0
  506. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/htmldiff.rb +149 -0
  507. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/hunk.rb +276 -0
  508. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/internals.rb +307 -0
  509. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/ldiff.rb +167 -0
  510. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/string.rb +5 -0
  511. data/vendor/bundle/gems/diff-lcs-1.3/spec/change_spec.rb +65 -0
  512. data/vendor/bundle/gems/diff-lcs-1.3/spec/diff_spec.rb +47 -0
  513. data/vendor/bundle/gems/diff-lcs-1.3/spec/fixtures/ds1.csv +50 -0
  514. data/vendor/bundle/gems/diff-lcs-1.3/spec/fixtures/ds2.csv +51 -0
  515. data/vendor/bundle/gems/diff-lcs-1.3/spec/hunk_spec.rb +72 -0
  516. data/vendor/bundle/gems/diff-lcs-1.3/spec/issues_spec.rb +49 -0
  517. data/vendor/bundle/gems/diff-lcs-1.3/spec/lcs_spec.rb +56 -0
  518. data/vendor/bundle/gems/diff-lcs-1.3/spec/ldiff_spec.rb +47 -0
  519. data/vendor/bundle/gems/diff-lcs-1.3/spec/patch_spec.rb +422 -0
  520. data/vendor/bundle/gems/diff-lcs-1.3/spec/sdiff_spec.rb +214 -0
  521. data/vendor/bundle/gems/diff-lcs-1.3/spec/spec_helper.rb +321 -0
  522. data/vendor/bundle/gems/diff-lcs-1.3/spec/traverse_balanced_spec.rb +310 -0
  523. data/vendor/bundle/gems/diff-lcs-1.3/spec/traverse_sequences_spec.rb +139 -0
  524. data/vendor/bundle/gems/i18n-0.8.1/MIT-LICENSE +20 -0
  525. data/vendor/bundle/gems/i18n-0.8.1/README.md +84 -0
  526. data/vendor/bundle/gems/i18n-0.8.1/gemfiles/Gemfile.rails-3.2.x +9 -0
  527. data/vendor/bundle/gems/i18n-0.8.1/gemfiles/Gemfile.rails-4.0.x +9 -0
  528. data/vendor/bundle/gems/i18n-0.8.1/gemfiles/Gemfile.rails-4.1.x +9 -0
  529. data/vendor/bundle/gems/i18n-0.8.1/gemfiles/Gemfile.rails-4.2.x +9 -0
  530. data/vendor/bundle/gems/i18n-0.8.1/gemfiles/Gemfile.rails-5.0.x +9 -0
  531. data/vendor/bundle/gems/i18n-0.8.1/gemfiles/Gemfile.rails-master +9 -0
  532. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n.rb +343 -0
  533. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/backend.rb +18 -0
  534. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/backend/base.rb +230 -0
  535. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/backend/cache.rb +114 -0
  536. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/backend/cascade.rb +54 -0
  537. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/backend/chain.rb +97 -0
  538. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/backend/fallbacks.rb +84 -0
  539. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/backend/flatten.rb +113 -0
  540. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/backend/gettext.rb +81 -0
  541. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/backend/interpolation_compiler.rb +121 -0
  542. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/backend/key_value.rb +100 -0
  543. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/backend/memoize.rb +46 -0
  544. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/backend/metadata.rb +69 -0
  545. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/backend/pluralization.rb +53 -0
  546. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/backend/simple.rb +87 -0
  547. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/backend/transliterator.rb +106 -0
  548. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/config.rb +142 -0
  549. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/core_ext/hash.rb +29 -0
  550. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/core_ext/kernel/suppress_warnings.rb +8 -0
  551. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/core_ext/string/interpolate.rb +9 -0
  552. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/exceptions.rb +104 -0
  553. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/gettext.rb +25 -0
  554. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/gettext/helpers.rb +73 -0
  555. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/gettext/po_parser.rb +329 -0
  556. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/interpolate/ruby.rb +37 -0
  557. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/locale.rb +6 -0
  558. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/locale/fallbacks.rb +96 -0
  559. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/locale/tag.rb +28 -0
  560. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/locale/tag/parents.rb +22 -0
  561. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/locale/tag/rfc4646.rb +74 -0
  562. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/locale/tag/simple.rb +39 -0
  563. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/tests.rb +12 -0
  564. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/tests/basics.rb +60 -0
  565. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/tests/defaults.rb +48 -0
  566. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/tests/interpolation.rb +153 -0
  567. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/tests/link.rb +56 -0
  568. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/tests/localization.rb +19 -0
  569. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/tests/localization/date.rb +95 -0
  570. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/tests/localization/date_time.rb +82 -0
  571. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/tests/localization/procs.rb +116 -0
  572. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/tests/localization/time.rb +81 -0
  573. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/tests/lookup.rb +81 -0
  574. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/tests/pluralization.rb +35 -0
  575. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/tests/procs.rb +55 -0
  576. data/vendor/bundle/gems/i18n-0.8.1/lib/i18n/version.rb +3 -0
  577. data/vendor/bundle/gems/i18n-0.8.1/test/api/all_features_test.rb +58 -0
  578. data/vendor/bundle/gems/i18n-0.8.1/test/api/cascade_test.rb +28 -0
  579. data/vendor/bundle/gems/i18n-0.8.1/test/api/chain_test.rb +24 -0
  580. data/vendor/bundle/gems/i18n-0.8.1/test/api/fallbacks_test.rb +30 -0
  581. data/vendor/bundle/gems/i18n-0.8.1/test/api/key_value_test.rb +24 -0
  582. data/vendor/bundle/gems/i18n-0.8.1/test/api/memoize_test.rb +56 -0
  583. data/vendor/bundle/gems/i18n-0.8.1/test/api/override_test.rb +42 -0
  584. data/vendor/bundle/gems/i18n-0.8.1/test/api/pluralization_test.rb +30 -0
  585. data/vendor/bundle/gems/i18n-0.8.1/test/api/simple_test.rb +28 -0
  586. data/vendor/bundle/gems/i18n-0.8.1/test/backend/cache_test.rb +108 -0
  587. data/vendor/bundle/gems/i18n-0.8.1/test/backend/cascade_test.rb +86 -0
  588. data/vendor/bundle/gems/i18n-0.8.1/test/backend/chain_test.rb +91 -0
  589. data/vendor/bundle/gems/i18n-0.8.1/test/backend/exceptions_test.rb +36 -0
  590. data/vendor/bundle/gems/i18n-0.8.1/test/backend/fallbacks_test.rb +206 -0
  591. data/vendor/bundle/gems/i18n-0.8.1/test/backend/interpolation_compiler_test.rb +118 -0
  592. data/vendor/bundle/gems/i18n-0.8.1/test/backend/key_value_test.rb +43 -0
  593. data/vendor/bundle/gems/i18n-0.8.1/test/backend/memoize_test.rb +47 -0
  594. data/vendor/bundle/gems/i18n-0.8.1/test/backend/metadata_test.rb +48 -0
  595. data/vendor/bundle/gems/i18n-0.8.1/test/backend/pluralization_test.rb +45 -0
  596. data/vendor/bundle/gems/i18n-0.8.1/test/backend/simple_test.rb +84 -0
  597. data/vendor/bundle/gems/i18n-0.8.1/test/backend/transliterator_test.rb +84 -0
  598. data/vendor/bundle/gems/i18n-0.8.1/test/core_ext/hash_test.rb +42 -0
  599. data/vendor/bundle/gems/i18n-0.8.1/test/gettext/api_test.rb +214 -0
  600. data/vendor/bundle/gems/i18n-0.8.1/test/gettext/backend_test.rb +92 -0
  601. data/vendor/bundle/gems/i18n-0.8.1/test/i18n/exceptions_test.rb +114 -0
  602. data/vendor/bundle/gems/i18n-0.8.1/test/i18n/interpolate_test.rb +91 -0
  603. data/vendor/bundle/gems/i18n-0.8.1/test/i18n/load_path_test.rb +34 -0
  604. data/vendor/bundle/gems/i18n-0.8.1/test/i18n_test.rb +437 -0
  605. data/vendor/bundle/gems/i18n-0.8.1/test/locale/fallbacks_test.rb +133 -0
  606. data/vendor/bundle/gems/i18n-0.8.1/test/locale/tag/rfc4646_test.rb +143 -0
  607. data/vendor/bundle/gems/i18n-0.8.1/test/locale/tag/simple_test.rb +32 -0
  608. data/vendor/bundle/gems/i18n-0.8.1/test/run_all.rb +20 -0
  609. data/vendor/bundle/gems/i18n-0.8.1/test/test_data/locales/de.po +82 -0
  610. data/vendor/bundle/gems/i18n-0.8.1/test/test_data/locales/en.rb +3 -0
  611. data/vendor/bundle/gems/i18n-0.8.1/test/test_data/locales/en.yml +3 -0
  612. data/vendor/bundle/gems/i18n-0.8.1/test/test_data/locales/invalid/empty.yml +0 -0
  613. data/vendor/bundle/gems/i18n-0.8.1/test/test_data/locales/invalid/syntax.yml +4 -0
  614. data/vendor/bundle/gems/i18n-0.8.1/test/test_data/locales/plurals.rb +113 -0
  615. data/vendor/bundle/gems/i18n-0.8.1/test/test_helper.rb +55 -0
  616. data/vendor/bundle/gems/method_source-0.8.2/.gemtest +0 -0
  617. data/vendor/bundle/gems/method_source-0.8.2/.travis.yml +13 -0
  618. data/vendor/bundle/gems/method_source-0.8.2/.yardopts +1 -0
  619. data/vendor/bundle/gems/method_source-0.8.2/Gemfile +2 -0
  620. data/vendor/bundle/gems/method_source-0.8.2/LICENSE +25 -0
  621. data/vendor/bundle/gems/method_source-0.8.2/README.markdown +91 -0
  622. data/vendor/bundle/gems/method_source-0.8.2/Rakefile +79 -0
  623. data/vendor/bundle/gems/method_source-0.8.2/lib/method_source.rb +141 -0
  624. data/vendor/bundle/gems/method_source-0.8.2/lib/method_source/code_helpers.rb +154 -0
  625. data/vendor/bundle/gems/method_source-0.8.2/lib/method_source/source_location.rb +138 -0
  626. data/vendor/bundle/gems/method_source-0.8.2/lib/method_source/version.rb +3 -0
  627. data/vendor/bundle/gems/method_source-0.8.2/method_source.gemspec +33 -0
  628. data/vendor/bundle/gems/method_source-0.8.2/test/test.rb +138 -0
  629. data/vendor/bundle/gems/method_source-0.8.2/test/test_code_helpers.rb +41 -0
  630. data/vendor/bundle/gems/method_source-0.8.2/test/test_helper.rb +98 -0
  631. data/vendor/bundle/gems/minitest-5.10.1/.autotest +34 -0
  632. data/vendor/bundle/gems/minitest-5.10.1/History.rdoc +1207 -0
  633. data/vendor/bundle/gems/minitest-5.10.1/Manifest.txt +26 -0
  634. data/vendor/bundle/gems/minitest-5.10.1/README.rdoc +660 -0
  635. data/vendor/bundle/gems/minitest-5.10.1/Rakefile +86 -0
  636. data/vendor/bundle/gems/minitest-5.10.1/design_rationale.rb +52 -0
  637. data/vendor/bundle/gems/minitest-5.10.1/lib/hoe/minitest.rb +32 -0
  638. data/vendor/bundle/gems/minitest-5.10.1/lib/minitest.rb +842 -0
  639. data/vendor/bundle/gems/minitest-5.10.1/lib/minitest/assertions.rb +688 -0
  640. data/vendor/bundle/gems/minitest-5.10.1/lib/minitest/autorun.rb +13 -0
  641. data/vendor/bundle/gems/minitest-5.10.1/lib/minitest/benchmark.rb +424 -0
  642. data/vendor/bundle/gems/minitest-5.10.1/lib/minitest/expectations.rb +284 -0
  643. data/vendor/bundle/gems/minitest-5.10.1/lib/minitest/hell.rb +17 -0
  644. data/vendor/bundle/gems/minitest-5.10.1/lib/minitest/mock.rb +232 -0
  645. data/vendor/bundle/gems/minitest-5.10.1/lib/minitest/parallel.rb +69 -0
  646. data/vendor/bundle/gems/minitest-5.10.1/lib/minitest/pride.rb +4 -0
  647. data/vendor/bundle/gems/minitest-5.10.1/lib/minitest/pride_plugin.rb +142 -0
  648. data/vendor/bundle/gems/minitest-5.10.1/lib/minitest/spec.rb +331 -0
  649. data/vendor/bundle/gems/minitest-5.10.1/lib/minitest/test.rb +282 -0
  650. data/vendor/bundle/gems/minitest-5.10.1/lib/minitest/unit.rb +45 -0
  651. data/vendor/bundle/gems/minitest-5.10.1/test/minitest/metametameta.rb +101 -0
  652. data/vendor/bundle/gems/minitest-5.10.1/test/minitest/test_minitest_benchmark.rb +137 -0
  653. data/vendor/bundle/gems/minitest-5.10.1/test/minitest/test_minitest_mock.rb +512 -0
  654. data/vendor/bundle/gems/minitest-5.10.1/test/minitest/test_minitest_reporter.rb +281 -0
  655. data/vendor/bundle/gems/minitest-5.10.1/test/minitest/test_minitest_spec.rb +970 -0
  656. data/vendor/bundle/gems/minitest-5.10.1/test/minitest/test_minitest_test.rb +2058 -0
  657. data/vendor/bundle/gems/pry-0.10.4/CHANGELOG.md +718 -0
  658. data/vendor/bundle/gems/pry-0.10.4/LICENSE +25 -0
  659. data/vendor/bundle/gems/pry-0.10.4/README.md +406 -0
  660. data/vendor/bundle/gems/pry-0.10.4/bin/pry +16 -0
  661. data/vendor/bundle/gems/pry-0.10.4/lib/pry.rb +161 -0
  662. data/vendor/bundle/gems/pry-0.10.4/lib/pry/cli.rb +220 -0
  663. data/vendor/bundle/gems/pry-0.10.4/lib/pry/code.rb +348 -0
  664. data/vendor/bundle/gems/pry-0.10.4/lib/pry/code/code_file.rb +103 -0
  665. data/vendor/bundle/gems/pry-0.10.4/lib/pry/code/code_range.rb +71 -0
  666. data/vendor/bundle/gems/pry-0.10.4/lib/pry/code/loc.rb +92 -0
  667. data/vendor/bundle/gems/pry-0.10.4/lib/pry/code_object.rb +172 -0
  668. data/vendor/bundle/gems/pry-0.10.4/lib/pry/color_printer.rb +55 -0
  669. data/vendor/bundle/gems/pry-0.10.4/lib/pry/command.rb +692 -0
  670. data/vendor/bundle/gems/pry-0.10.4/lib/pry/command_set.rb +443 -0
  671. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands.rb +6 -0
  672. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/amend_line.rb +99 -0
  673. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/bang.rb +20 -0
  674. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/bang_pry.rb +17 -0
  675. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/cat.rb +62 -0
  676. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/cat/abstract_formatter.rb +27 -0
  677. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/cat/exception_formatter.rb +77 -0
  678. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/cat/file_formatter.rb +67 -0
  679. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/cat/input_expression_formatter.rb +43 -0
  680. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/cd.rb +41 -0
  681. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/change_inspector.rb +27 -0
  682. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/change_prompt.rb +26 -0
  683. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/code_collector.rb +165 -0
  684. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/disable_pry.rb +27 -0
  685. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/disabled_commands.rb +2 -0
  686. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/easter_eggs.rb +112 -0
  687. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/edit.rb +195 -0
  688. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/edit/exception_patcher.rb +25 -0
  689. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/edit/file_and_line_locator.rb +36 -0
  690. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/exit.rb +42 -0
  691. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/exit_all.rb +29 -0
  692. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/exit_program.rb +23 -0
  693. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/find_method.rb +193 -0
  694. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/fix_indent.rb +19 -0
  695. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/gem_cd.rb +26 -0
  696. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/gem_install.rb +32 -0
  697. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/gem_list.rb +33 -0
  698. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/gem_open.rb +29 -0
  699. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/gist.rb +101 -0
  700. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/help.rb +164 -0
  701. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/hist.rb +180 -0
  702. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/import_set.rb +22 -0
  703. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/install_command.rb +53 -0
  704. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/jump_to.rb +29 -0
  705. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/list_inspectors.rb +35 -0
  706. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/list_prompts.rb +35 -0
  707. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/ls.rb +114 -0
  708. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/ls/constants.rb +47 -0
  709. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/ls/formatter.rb +49 -0
  710. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/ls/globals.rb +48 -0
  711. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/ls/grep.rb +21 -0
  712. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/ls/instance_vars.rb +39 -0
  713. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/ls/interrogatable.rb +18 -0
  714. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/ls/jruby_hacks.rb +49 -0
  715. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/ls/local_names.rb +35 -0
  716. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/ls/local_vars.rb +39 -0
  717. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/ls/ls_entity.rb +70 -0
  718. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/ls/methods.rb +57 -0
  719. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/ls/methods_helper.rb +46 -0
  720. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/ls/self_methods.rb +32 -0
  721. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/nesting.rb +25 -0
  722. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/play.rb +103 -0
  723. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/pry_backtrace.rb +25 -0
  724. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/pry_version.rb +17 -0
  725. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/raise_up.rb +32 -0
  726. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/reload_code.rb +62 -0
  727. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/reset.rb +18 -0
  728. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/ri.rb +60 -0
  729. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/save_file.rb +61 -0
  730. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/shell_command.rb +48 -0
  731. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/shell_mode.rb +25 -0
  732. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/show_doc.rb +83 -0
  733. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/show_info.rb +201 -0
  734. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/show_input.rb +17 -0
  735. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/show_source.rb +50 -0
  736. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/simple_prompt.rb +22 -0
  737. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/stat.rb +40 -0
  738. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/switch_to.rb +23 -0
  739. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/toggle_color.rb +24 -0
  740. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/watch_expression.rb +105 -0
  741. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/watch_expression/expression.rb +38 -0
  742. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/whereami.rb +196 -0
  743. data/vendor/bundle/gems/pry-0.10.4/lib/pry/commands/wtf.rb +57 -0
  744. data/vendor/bundle/gems/pry-0.10.4/lib/pry/config.rb +24 -0
  745. data/vendor/bundle/gems/pry-0.10.4/lib/pry/config/behavior.rb +139 -0
  746. data/vendor/bundle/gems/pry-0.10.4/lib/pry/config/convenience.rb +25 -0
  747. data/vendor/bundle/gems/pry-0.10.4/lib/pry/config/default.rb +161 -0
  748. data/vendor/bundle/gems/pry-0.10.4/lib/pry/core_extensions.rb +131 -0
  749. data/vendor/bundle/gems/pry-0.10.4/lib/pry/editor.rb +135 -0
  750. data/vendor/bundle/gems/pry-0.10.4/lib/pry/exceptions.rb +78 -0
  751. data/vendor/bundle/gems/pry-0.10.4/lib/pry/helpers.rb +5 -0
  752. data/vendor/bundle/gems/pry-0.10.4/lib/pry/helpers/base_helpers.rb +113 -0
  753. data/vendor/bundle/gems/pry-0.10.4/lib/pry/helpers/command_helpers.rb +156 -0
  754. data/vendor/bundle/gems/pry-0.10.4/lib/pry/helpers/documentation_helpers.rb +75 -0
  755. data/vendor/bundle/gems/pry-0.10.4/lib/pry/helpers/options_helpers.rb +27 -0
  756. data/vendor/bundle/gems/pry-0.10.4/lib/pry/helpers/table.rb +109 -0
  757. data/vendor/bundle/gems/pry-0.10.4/lib/pry/helpers/text.rb +107 -0
  758. data/vendor/bundle/gems/pry-0.10.4/lib/pry/history.rb +127 -0
  759. data/vendor/bundle/gems/pry-0.10.4/lib/pry/history_array.rb +121 -0
  760. data/vendor/bundle/gems/pry-0.10.4/lib/pry/hooks.rb +230 -0
  761. data/vendor/bundle/gems/pry-0.10.4/lib/pry/indent.rb +406 -0
  762. data/vendor/bundle/gems/pry-0.10.4/lib/pry/input_completer.rb +242 -0
  763. data/vendor/bundle/gems/pry-0.10.4/lib/pry/input_lock.rb +132 -0
  764. data/vendor/bundle/gems/pry-0.10.4/lib/pry/inspector.rb +27 -0
  765. data/vendor/bundle/gems/pry-0.10.4/lib/pry/last_exception.rb +61 -0
  766. data/vendor/bundle/gems/pry-0.10.4/lib/pry/method.rb +546 -0
  767. data/vendor/bundle/gems/pry-0.10.4/lib/pry/method/disowned.rb +53 -0
  768. data/vendor/bundle/gems/pry-0.10.4/lib/pry/method/patcher.rb +125 -0
  769. data/vendor/bundle/gems/pry-0.10.4/lib/pry/method/weird_method_locator.rb +188 -0
  770. data/vendor/bundle/gems/pry-0.10.4/lib/pry/module_candidate.rb +137 -0
  771. data/vendor/bundle/gems/pry-0.10.4/lib/pry/object_path.rb +82 -0
  772. data/vendor/bundle/gems/pry-0.10.4/lib/pry/output.rb +50 -0
  773. data/vendor/bundle/gems/pry-0.10.4/lib/pry/pager.rb +239 -0
  774. data/vendor/bundle/gems/pry-0.10.4/lib/pry/plugins.rb +103 -0
  775. data/vendor/bundle/gems/pry-0.10.4/lib/pry/prompt.rb +26 -0
  776. data/vendor/bundle/gems/pry-0.10.4/lib/pry/pry_class.rb +375 -0
  777. data/vendor/bundle/gems/pry-0.10.4/lib/pry/pry_instance.rb +664 -0
  778. data/vendor/bundle/gems/pry-0.10.4/lib/pry/rbx_path.rb +22 -0
  779. data/vendor/bundle/gems/pry-0.10.4/lib/pry/repl.rb +202 -0
  780. data/vendor/bundle/gems/pry-0.10.4/lib/pry/repl_file_loader.rb +74 -0
  781. data/vendor/bundle/gems/pry-0.10.4/lib/pry/rubygem.rb +82 -0
  782. data/vendor/bundle/gems/pry-0.10.4/lib/pry/terminal.rb +79 -0
  783. data/vendor/bundle/gems/pry-0.10.4/lib/pry/test/helper.rb +170 -0
  784. data/vendor/bundle/gems/pry-0.10.4/lib/pry/version.rb +3 -0
  785. data/vendor/bundle/gems/pry-0.10.4/lib/pry/wrapped_module.rb +378 -0
  786. data/vendor/bundle/gems/rake-10.5.0/.autotest +7 -0
  787. data/vendor/bundle/gems/rake-10.5.0/.rubocop.yml +27 -0
  788. data/vendor/bundle/gems/rake-10.5.0/.togglerc +7 -0
  789. data/vendor/bundle/gems/rake-10.5.0/CONTRIBUTING.rdoc +38 -0
  790. data/vendor/bundle/gems/rake-10.5.0/History.rdoc +659 -0
  791. data/vendor/bundle/gems/rake-10.5.0/MIT-LICENSE +21 -0
  792. data/vendor/bundle/gems/rake-10.5.0/Manifest.txt +166 -0
  793. data/vendor/bundle/gems/rake-10.5.0/README.rdoc +139 -0
  794. data/vendor/bundle/gems/rake-10.5.0/Rakefile +81 -0
  795. data/vendor/bundle/gems/rake-10.5.0/bin/rake +33 -0
  796. data/vendor/bundle/gems/rake-10.5.0/doc/command_line_usage.rdoc +158 -0
  797. data/vendor/bundle/gems/rake-10.5.0/doc/example/Rakefile1 +38 -0
  798. data/vendor/bundle/gems/rake-10.5.0/doc/example/Rakefile2 +35 -0
  799. data/vendor/bundle/gems/rake-10.5.0/doc/example/a.c +6 -0
  800. data/vendor/bundle/gems/rake-10.5.0/doc/example/b.c +6 -0
  801. data/vendor/bundle/gems/rake-10.5.0/doc/example/main.c +11 -0
  802. data/vendor/bundle/gems/rake-10.5.0/doc/glossary.rdoc +42 -0
  803. data/vendor/bundle/gems/rake-10.5.0/doc/jamis.rb +591 -0
  804. data/vendor/bundle/gems/rake-10.5.0/doc/proto_rake.rdoc +127 -0
  805. data/vendor/bundle/gems/rake-10.5.0/doc/rake.1 +141 -0
  806. data/vendor/bundle/gems/rake-10.5.0/doc/rakefile.rdoc +624 -0
  807. data/vendor/bundle/gems/rake-10.5.0/doc/rational.rdoc +151 -0
  808. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.4.14.rdoc +23 -0
  809. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.4.15.rdoc +35 -0
  810. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.5.0.rdoc +53 -0
  811. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.5.3.rdoc +78 -0
  812. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.5.4.rdoc +46 -0
  813. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.6.0.rdoc +141 -0
  814. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.7.0.rdoc +119 -0
  815. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.7.1.rdoc +59 -0
  816. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.7.2.rdoc +121 -0
  817. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.7.3.rdoc +47 -0
  818. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.8.0.rdoc +114 -0
  819. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.8.2.rdoc +165 -0
  820. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.8.3.rdoc +112 -0
  821. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.8.4.rdoc +147 -0
  822. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.8.5.rdoc +53 -0
  823. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.8.6.rdoc +37 -0
  824. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.8.7.rdoc +55 -0
  825. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.9.0.rdoc +112 -0
  826. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.9.1.rdoc +52 -0
  827. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.9.2.2.rdoc +55 -0
  828. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.9.2.rdoc +49 -0
  829. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.9.3.rdoc +102 -0
  830. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.9.4.rdoc +60 -0
  831. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.9.5.rdoc +55 -0
  832. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.9.6.rdoc +64 -0
  833. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-10.0.0.rdoc +178 -0
  834. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-10.0.1.rdoc +58 -0
  835. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-10.0.2.rdoc +53 -0
  836. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-10.0.3.rdoc +191 -0
  837. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-10.1.0.rdoc +61 -0
  838. data/vendor/bundle/gems/rake-10.5.0/lib/rake.rb +79 -0
  839. data/vendor/bundle/gems/rake-10.5.0/lib/rake/alt_system.rb +110 -0
  840. data/vendor/bundle/gems/rake-10.5.0/lib/rake/application.rb +790 -0
  841. data/vendor/bundle/gems/rake-10.5.0/lib/rake/backtrace.rb +23 -0
  842. data/vendor/bundle/gems/rake-10.5.0/lib/rake/clean.rb +76 -0
  843. data/vendor/bundle/gems/rake-10.5.0/lib/rake/cloneable.rb +16 -0
  844. data/vendor/bundle/gems/rake-10.5.0/lib/rake/contrib/.document +1 -0
  845. data/vendor/bundle/gems/rake-10.5.0/lib/rake/contrib/compositepublisher.rb +21 -0
  846. data/vendor/bundle/gems/rake-10.5.0/lib/rake/contrib/ftptools.rb +137 -0
  847. data/vendor/bundle/gems/rake-10.5.0/lib/rake/contrib/publisher.rb +81 -0
  848. data/vendor/bundle/gems/rake-10.5.0/lib/rake/contrib/rubyforgepublisher.rb +18 -0
  849. data/vendor/bundle/gems/rake-10.5.0/lib/rake/contrib/sshpublisher.rb +61 -0
  850. data/vendor/bundle/gems/rake-10.5.0/lib/rake/contrib/sys.rb +4 -0
  851. data/vendor/bundle/gems/rake-10.5.0/lib/rake/cpu_counter.rb +125 -0
  852. data/vendor/bundle/gems/rake-10.5.0/lib/rake/default_loader.rb +14 -0
  853. data/vendor/bundle/gems/rake-10.5.0/lib/rake/dsl_definition.rb +201 -0
  854. data/vendor/bundle/gems/rake-10.5.0/lib/rake/early_time.rb +21 -0
  855. data/vendor/bundle/gems/rake-10.5.0/lib/rake/ext/core.rb +25 -0
  856. data/vendor/bundle/gems/rake-10.5.0/lib/rake/ext/module.rb +2 -0
  857. data/vendor/bundle/gems/rake-10.5.0/lib/rake/ext/pathname.rb +25 -0
  858. data/vendor/bundle/gems/rake-10.5.0/lib/rake/ext/string.rb +175 -0
  859. data/vendor/bundle/gems/rake-10.5.0/lib/rake/ext/time.rb +18 -0
  860. data/vendor/bundle/gems/rake-10.5.0/lib/rake/file_creation_task.rb +24 -0
  861. data/vendor/bundle/gems/rake-10.5.0/lib/rake/file_list.rb +428 -0
  862. data/vendor/bundle/gems/rake-10.5.0/lib/rake/file_task.rb +46 -0
  863. data/vendor/bundle/gems/rake-10.5.0/lib/rake/file_utils.rb +128 -0
  864. data/vendor/bundle/gems/rake-10.5.0/lib/rake/file_utils_ext.rb +144 -0
  865. data/vendor/bundle/gems/rake-10.5.0/lib/rake/gempackagetask.rb +4 -0
  866. data/vendor/bundle/gems/rake-10.5.0/lib/rake/invocation_chain.rb +56 -0
  867. data/vendor/bundle/gems/rake-10.5.0/lib/rake/invocation_exception_mixin.rb +16 -0
  868. data/vendor/bundle/gems/rake-10.5.0/lib/rake/late_time.rb +17 -0
  869. data/vendor/bundle/gems/rake-10.5.0/lib/rake/linked_list.rb +103 -0
  870. data/vendor/bundle/gems/rake-10.5.0/lib/rake/loaders/makefile.rb +53 -0
  871. data/vendor/bundle/gems/rake-10.5.0/lib/rake/multi_task.rb +13 -0
  872. data/vendor/bundle/gems/rake-10.5.0/lib/rake/name_space.rb +38 -0
  873. data/vendor/bundle/gems/rake-10.5.0/lib/rake/packagetask.rb +199 -0
  874. data/vendor/bundle/gems/rake-10.5.0/lib/rake/pathmap.rb +3 -0
  875. data/vendor/bundle/gems/rake-10.5.0/lib/rake/phony.rb +15 -0
  876. data/vendor/bundle/gems/rake-10.5.0/lib/rake/private_reader.rb +20 -0
  877. data/vendor/bundle/gems/rake-10.5.0/lib/rake/promise.rb +99 -0
  878. data/vendor/bundle/gems/rake-10.5.0/lib/rake/pseudo_status.rb +29 -0
  879. data/vendor/bundle/gems/rake-10.5.0/lib/rake/rake_module.rb +38 -0
  880. data/vendor/bundle/gems/rake-10.5.0/lib/rake/rake_test_loader.rb +22 -0
  881. data/vendor/bundle/gems/rake-10.5.0/lib/rake/rdoctask.rb +4 -0
  882. data/vendor/bundle/gems/rake-10.5.0/lib/rake/ruby182_test_unit_fix.rb +29 -0
  883. data/vendor/bundle/gems/rake-10.5.0/lib/rake/rule_recursion_overflow_error.rb +20 -0
  884. data/vendor/bundle/gems/rake-10.5.0/lib/rake/runtest.rb +27 -0
  885. data/vendor/bundle/gems/rake-10.5.0/lib/rake/scope.rb +42 -0
  886. data/vendor/bundle/gems/rake-10.5.0/lib/rake/task.rb +383 -0
  887. data/vendor/bundle/gems/rake-10.5.0/lib/rake/task_argument_error.rb +7 -0
  888. data/vendor/bundle/gems/rake-10.5.0/lib/rake/task_arguments.rb +98 -0
  889. data/vendor/bundle/gems/rake-10.5.0/lib/rake/task_manager.rb +307 -0
  890. data/vendor/bundle/gems/rake-10.5.0/lib/rake/tasklib.rb +24 -0
  891. data/vendor/bundle/gems/rake-10.5.0/lib/rake/testtask.rb +213 -0
  892. data/vendor/bundle/gems/rake-10.5.0/lib/rake/thread_history_display.rb +48 -0
  893. data/vendor/bundle/gems/rake-10.5.0/lib/rake/thread_pool.rb +164 -0
  894. data/vendor/bundle/gems/rake-10.5.0/lib/rake/trace_output.rb +22 -0
  895. data/vendor/bundle/gems/rake-10.5.0/lib/rake/version.rb +7 -0
  896. data/vendor/bundle/gems/rake-10.5.0/lib/rake/win32.rb +56 -0
  897. data/vendor/bundle/gems/rake-10.5.0/rakelib/publish.rake +20 -0
  898. data/vendor/bundle/gems/rake-10.5.0/rakelib/test_times.rake +25 -0
  899. data/vendor/bundle/gems/rake-10.5.0/test/file_creation.rb +34 -0
  900. data/vendor/bundle/gems/rake-10.5.0/test/helper.rb +129 -0
  901. data/vendor/bundle/gems/rake-10.5.0/test/support/rakefile_definitions.rb +478 -0
  902. data/vendor/bundle/gems/rake-10.5.0/test/support/ruby_runner.rb +34 -0
  903. data/vendor/bundle/gems/rake-10.5.0/test/test_private_reader.rb +42 -0
  904. data/vendor/bundle/gems/rake-10.5.0/test/test_rake.rb +40 -0
  905. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_application.rb +643 -0
  906. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_application_options.rb +468 -0
  907. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_backtrace.rb +119 -0
  908. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_clean.rb +61 -0
  909. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_cpu_counter.rb +68 -0
  910. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_definitions.rb +84 -0
  911. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_directory_task.rb +76 -0
  912. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_dsl.rb +40 -0
  913. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_early_time.rb +31 -0
  914. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_extension.rb +59 -0
  915. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_file_creation_task.rb +56 -0
  916. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_file_list.rb +670 -0
  917. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_file_list_path_map.rb +8 -0
  918. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_file_task.rb +197 -0
  919. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_file_utils.rb +314 -0
  920. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_ftp_file.rb +74 -0
  921. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_functional.rb +482 -0
  922. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_invocation_chain.rb +64 -0
  923. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_late_time.rb +18 -0
  924. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_linked_list.rb +84 -0
  925. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_makefile_loader.rb +46 -0
  926. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_multi_task.rb +64 -0
  927. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_name_space.rb +57 -0
  928. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_package_task.rb +79 -0
  929. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_path_map.rb +168 -0
  930. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_path_map_explode.rb +34 -0
  931. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_path_map_partial.rb +18 -0
  932. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_pathname_extensions.rb +15 -0
  933. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_pseudo_status.rb +21 -0
  934. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_rake_test_loader.rb +20 -0
  935. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_reduce_compat.rb +26 -0
  936. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_require.rb +40 -0
  937. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_rules.rb +388 -0
  938. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_scope.rb +44 -0
  939. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_task.rb +393 -0
  940. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_task_argument_parsing.rb +119 -0
  941. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_task_arguments.rb +127 -0
  942. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_task_lib.rb +9 -0
  943. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_task_manager.rb +178 -0
  944. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_task_manager_argument_resolution.rb +19 -0
  945. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_task_with_arguments.rb +172 -0
  946. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_test_task.rb +146 -0
  947. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_thread_pool.rb +145 -0
  948. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_top_level_functions.rb +71 -0
  949. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_win32.rb +72 -0
  950. data/vendor/bundle/gems/rake-10.5.0/test/test_thread_history_display.rb +101 -0
  951. data/vendor/bundle/gems/rake-10.5.0/test/test_trace_output.rb +52 -0
  952. data/vendor/bundle/gems/rspec-3.5.0/LICENSE.md +27 -0
  953. data/vendor/bundle/gems/rspec-3.5.0/README.md +39 -0
  954. data/vendor/bundle/gems/rspec-3.5.0/lib/rspec.rb +3 -0
  955. data/vendor/bundle/gems/rspec-3.5.0/lib/rspec/version.rb +5 -0
  956. data/vendor/bundle/gems/rspec-core-3.5.4/.document +5 -0
  957. data/vendor/bundle/gems/rspec-core-3.5.4/.yardopts +8 -0
  958. data/vendor/bundle/gems/rspec-core-3.5.4/Changelog.md +2102 -0
  959. data/vendor/bundle/gems/rspec-core-3.5.4/LICENSE.md +26 -0
  960. data/vendor/bundle/gems/rspec-core-3.5.4/README.md +384 -0
  961. data/vendor/bundle/gems/rspec-core-3.5.4/exe/rspec +4 -0
  962. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/autorun.rb +3 -0
  963. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core.rb +185 -0
  964. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/backtrace_formatter.rb +65 -0
  965. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/bisect/coordinator.rb +66 -0
  966. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/bisect/example_minimizer.rb +169 -0
  967. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/bisect/runner.rb +169 -0
  968. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/bisect/server.rb +65 -0
  969. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/configuration.rb +2100 -0
  970. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/configuration_options.rb +194 -0
  971. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/drb.rb +111 -0
  972. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/dsl.rb +98 -0
  973. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/example.rb +649 -0
  974. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/example_group.rb +879 -0
  975. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/example_status_persister.rb +235 -0
  976. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/filter_manager.rb +231 -0
  977. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/flat_map.rb +20 -0
  978. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/formatters.rb +255 -0
  979. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/formatters/base_formatter.rb +70 -0
  980. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/formatters/base_text_formatter.rb +77 -0
  981. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/formatters/bisect_formatter.rb +69 -0
  982. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/formatters/bisect_progress_formatter.rb +144 -0
  983. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/formatters/console_codes.rb +65 -0
  984. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/formatters/deprecation_formatter.rb +223 -0
  985. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/formatters/documentation_formatter.rb +69 -0
  986. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/formatters/exception_presenter.rb +491 -0
  987. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/formatters/fallback_message_formatter.rb +28 -0
  988. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/formatters/helpers.rb +110 -0
  989. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/formatters/html_formatter.rb +151 -0
  990. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/formatters/html_printer.rb +414 -0
  991. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/formatters/html_snippet_extractor.rb +116 -0
  992. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/formatters/json_formatter.rb +96 -0
  993. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/formatters/profile_formatter.rb +68 -0
  994. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/formatters/progress_formatter.rb +28 -0
  995. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/formatters/protocol.rb +181 -0
  996. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/formatters/snippet_extractor.rb +136 -0
  997. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/hooks.rb +624 -0
  998. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/invocations.rb +67 -0
  999. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/memoized_helpers.rb +532 -0
  1000. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/metadata.rb +499 -0
  1001. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/metadata_filter.rb +243 -0
  1002. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/minitest_assertions_adapter.rb +31 -0
  1003. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/mocking_adapters/flexmock.rb +31 -0
  1004. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/mocking_adapters/mocha.rb +57 -0
  1005. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/mocking_adapters/null.rb +14 -0
  1006. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/mocking_adapters/rr.rb +31 -0
  1007. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/mocking_adapters/rspec.rb +32 -0
  1008. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/notifications.rb +498 -0
  1009. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/option_parser.rb +289 -0
  1010. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/ordering.rb +158 -0
  1011. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/pending.rb +165 -0
  1012. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/profiler.rb +32 -0
  1013. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/project_initializer.rb +48 -0
  1014. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/project_initializer/.rspec +2 -0
  1015. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/project_initializer/spec/spec_helper.rb +103 -0
  1016. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/rake_task.rb +168 -0
  1017. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/reporter.rb +248 -0
  1018. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/ruby_project.rb +53 -0
  1019. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/runner.rb +188 -0
  1020. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/sandbox.rb +37 -0
  1021. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/set.rb +49 -0
  1022. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/shared_context.rb +55 -0
  1023. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/shared_example_group.rb +247 -0
  1024. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/shell_escape.rb +49 -0
  1025. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/source.rb +86 -0
  1026. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/source/location.rb +13 -0
  1027. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/source/node.rb +93 -0
  1028. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/source/syntax_highlighter.rb +71 -0
  1029. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/source/token.rb +87 -0
  1030. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/test_unit_assertions_adapter.rb +30 -0
  1031. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/version.rb +9 -0
  1032. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/warnings.rb +40 -0
  1033. data/vendor/bundle/gems/rspec-core-3.5.4/lib/rspec/core/world.rb +256 -0
  1034. data/vendor/bundle/gems/rspec-expectations-3.5.0/.document +5 -0
  1035. data/vendor/bundle/gems/rspec-expectations-3.5.0/.yardopts +6 -0
  1036. data/vendor/bundle/gems/rspec-expectations-3.5.0/Changelog.md +1034 -0
  1037. data/vendor/bundle/gems/rspec-expectations-3.5.0/LICENSE.md +25 -0
  1038. data/vendor/bundle/gems/rspec-expectations-3.5.0/README.md +303 -0
  1039. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/expectations.rb +81 -0
  1040. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/expectations/configuration.rb +201 -0
  1041. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/expectations/expectation_target.rb +127 -0
  1042. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/expectations/fail_with.rb +31 -0
  1043. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/expectations/failure_aggregator.rb +194 -0
  1044. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/expectations/handler.rb +170 -0
  1045. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/expectations/minitest_integration.rb +58 -0
  1046. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/expectations/syntax.rb +132 -0
  1047. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/expectations/version.rb +8 -0
  1048. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers.rb +1038 -0
  1049. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/aliased_matcher.rb +116 -0
  1050. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in.rb +52 -0
  1051. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/all.rb +85 -0
  1052. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/base_matcher.rb +181 -0
  1053. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/be.rb +288 -0
  1054. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/be_between.rb +77 -0
  1055. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/be_instance_of.rb +22 -0
  1056. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/be_kind_of.rb +16 -0
  1057. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/be_within.rb +72 -0
  1058. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/change.rb +354 -0
  1059. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/compound.rb +272 -0
  1060. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/contain_exactly.rb +286 -0
  1061. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/cover.rb +24 -0
  1062. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/eq.rb +40 -0
  1063. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/eql.rb +34 -0
  1064. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/equal.rb +81 -0
  1065. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/exist.rb +86 -0
  1066. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/has.rb +103 -0
  1067. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/have_attributes.rb +114 -0
  1068. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/include.rb +143 -0
  1069. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/match.rb +106 -0
  1070. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/operators.rb +128 -0
  1071. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/output.rb +200 -0
  1072. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/raise_error.rb +230 -0
  1073. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/respond_to.rb +165 -0
  1074. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/satisfy.rb +37 -0
  1075. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/start_or_end_with.rb +94 -0
  1076. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/throw_symbol.rb +132 -0
  1077. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/built_in/yield.rb +419 -0
  1078. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/composable.rb +185 -0
  1079. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/dsl.rb +466 -0
  1080. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/english_phrasing.rb +58 -0
  1081. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/expecteds_for_multiple_diffs.rb +73 -0
  1082. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/fail_matchers.rb +42 -0
  1083. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/generated_descriptions.rb +42 -0
  1084. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/matcher_delegator.rb +35 -0
  1085. data/vendor/bundle/gems/rspec-expectations-3.5.0/lib/rspec/matchers/matcher_protocol.rb +99 -0
  1086. data/vendor/bundle/gems/rspec-mocks-3.5.0/.document +5 -0
  1087. data/vendor/bundle/gems/rspec-mocks-3.5.0/.yardopts +6 -0
  1088. data/vendor/bundle/gems/rspec-mocks-3.5.0/Changelog.md +1043 -0
  1089. data/vendor/bundle/gems/rspec-mocks-3.5.0/LICENSE.md +25 -0
  1090. data/vendor/bundle/gems/rspec-mocks-3.5.0/README.md +445 -0
  1091. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks.rb +130 -0
  1092. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/any_instance.rb +11 -0
  1093. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/any_instance/chain.rb +110 -0
  1094. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/any_instance/error_generator.rb +31 -0
  1095. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/any_instance/expect_chain_chain.rb +35 -0
  1096. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/any_instance/expectation_chain.rb +48 -0
  1097. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/any_instance/message_chains.rb +83 -0
  1098. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/any_instance/proxy.rb +116 -0
  1099. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/any_instance/recorder.rb +289 -0
  1100. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/any_instance/stub_chain.rb +47 -0
  1101. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/any_instance/stub_chain_chain.rb +28 -0
  1102. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/argument_list_matcher.rb +100 -0
  1103. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/argument_matchers.rb +320 -0
  1104. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/configuration.rb +205 -0
  1105. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/error_generator.rb +369 -0
  1106. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/example_methods.rb +422 -0
  1107. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/instance_method_stasher.rb +135 -0
  1108. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/marshal_extension.rb +41 -0
  1109. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/matchers/expectation_customization.rb +20 -0
  1110. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/matchers/have_received.rb +130 -0
  1111. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/matchers/receive.rb +132 -0
  1112. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/matchers/receive_message_chain.rb +82 -0
  1113. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/matchers/receive_messages.rb +77 -0
  1114. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/message_chain.rb +87 -0
  1115. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/message_expectation.rb +740 -0
  1116. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/method_double.rb +287 -0
  1117. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/method_reference.rb +202 -0
  1118. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/minitest_integration.rb +68 -0
  1119. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/mutate_const.rb +335 -0
  1120. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/object_reference.rb +149 -0
  1121. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/order_group.rb +81 -0
  1122. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/proxy.rb +489 -0
  1123. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/space.rb +238 -0
  1124. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/standalone.rb +3 -0
  1125. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/syntax.rb +325 -0
  1126. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/targets.rb +124 -0
  1127. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/test_double.rb +170 -0
  1128. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/verifying_double.rb +129 -0
  1129. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/verifying_message_expectation.rb +54 -0
  1130. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/verifying_proxy.rb +213 -0
  1131. data/vendor/bundle/gems/rspec-mocks-3.5.0/lib/rspec/mocks/version.rb +9 -0
  1132. data/vendor/bundle/gems/rspec-support-3.5.0/Changelog.md +192 -0
  1133. data/vendor/bundle/gems/rspec-support-3.5.0/LICENSE.md +23 -0
  1134. data/vendor/bundle/gems/rspec-support-3.5.0/README.md +40 -0
  1135. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support.rb +139 -0
  1136. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/caller_filter.rb +83 -0
  1137. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/comparable_version.rb +46 -0
  1138. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/differ.rb +215 -0
  1139. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/directory_maker.rb +63 -0
  1140. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/encoded_string.rb +165 -0
  1141. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/fuzzy_matcher.rb +48 -0
  1142. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/hunk_generator.rb +47 -0
  1143. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/matcher_definition.rb +42 -0
  1144. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/method_signature_verifier.rb +392 -0
  1145. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/mutex.rb +73 -0
  1146. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/object_formatter.rb +249 -0
  1147. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/recursive_const_methods.rb +76 -0
  1148. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/reentrant_mutex.rb +53 -0
  1149. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/ruby_features.rb +149 -0
  1150. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/spec.rb +81 -0
  1151. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/spec/deprecation_helpers.rb +64 -0
  1152. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/spec/formatting_support.rb +9 -0
  1153. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/spec/in_sub_process.rb +52 -0
  1154. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/spec/library_wide_checks.rb +150 -0
  1155. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/spec/shell_out.rb +82 -0
  1156. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/spec/stderr_splitter.rb +63 -0
  1157. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/spec/string_matcher.rb +46 -0
  1158. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/spec/with_isolated_directory.rb +13 -0
  1159. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/spec/with_isolated_stderr.rb +13 -0
  1160. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/version.rb +7 -0
  1161. data/vendor/bundle/gems/rspec-support-3.5.0/lib/rspec/support/warnings.rb +39 -0
  1162. data/vendor/bundle/gems/slop-3.6.0/.gitignore +7 -0
  1163. data/vendor/bundle/gems/slop-3.6.0/.travis.yml +9 -0
  1164. data/vendor/bundle/gems/slop-3.6.0/CHANGES.md +309 -0
  1165. data/vendor/bundle/gems/slop-3.6.0/Gemfile +3 -0
  1166. data/vendor/bundle/gems/slop-3.6.0/LICENSE +20 -0
  1167. data/vendor/bundle/gems/slop-3.6.0/README.md +202 -0
  1168. data/vendor/bundle/gems/slop-3.6.0/Rakefile +29 -0
  1169. data/vendor/bundle/gems/slop-3.6.0/lib/slop.rb +687 -0
  1170. data/vendor/bundle/gems/slop-3.6.0/lib/slop/commands.rb +196 -0
  1171. data/vendor/bundle/gems/slop-3.6.0/lib/slop/option.rb +214 -0
  1172. data/vendor/bundle/gems/slop-3.6.0/slop.gemspec +17 -0
  1173. data/vendor/bundle/gems/slop-3.6.0/test/commands_test.rb +26 -0
  1174. data/vendor/bundle/gems/slop-3.6.0/test/helper.rb +12 -0
  1175. data/vendor/bundle/gems/slop-3.6.0/test/option_test.rb +145 -0
  1176. data/vendor/bundle/gems/slop-3.6.0/test/slop_test.rb +518 -0
  1177. data/vendor/bundle/gems/thread_safe-0.3.6/.rspec +2 -0
  1178. data/vendor/bundle/gems/thread_safe-0.3.6/.travis.yml +46 -0
  1179. data/vendor/bundle/gems/thread_safe-0.3.6/.yardopts +13 -0
  1180. data/vendor/bundle/gems/thread_safe-0.3.6/Gemfile +20 -0
  1181. data/vendor/bundle/gems/thread_safe-0.3.6/LICENSE +144 -0
  1182. data/vendor/bundle/gems/thread_safe-0.3.6/README.md +60 -0
  1183. data/vendor/bundle/gems/thread_safe-0.3.6/Rakefile +62 -0
  1184. data/vendor/bundle/gems/thread_safe-0.3.6/examples/bench_cache.rb +35 -0
  1185. data/vendor/bundle/gems/thread_safe-0.3.6/ext/org/jruby/ext/thread_safe/JRubyCacheBackendLibrary.java +245 -0
  1186. data/vendor/bundle/gems/thread_safe-0.3.6/ext/org/jruby/ext/thread_safe/jsr166e/ConcurrentHashMap.java +31 -0
  1187. data/vendor/bundle/gems/thread_safe-0.3.6/ext/org/jruby/ext/thread_safe/jsr166e/ConcurrentHashMapV8.java +3863 -0
  1188. data/vendor/bundle/gems/thread_safe-0.3.6/ext/org/jruby/ext/thread_safe/jsr166e/LongAdder.java +203 -0
  1189. data/vendor/bundle/gems/thread_safe-0.3.6/ext/org/jruby/ext/thread_safe/jsr166e/Striped64.java +342 -0
  1190. data/vendor/bundle/gems/thread_safe-0.3.6/ext/org/jruby/ext/thread_safe/jsr166e/nounsafe/ConcurrentHashMapV8.java +3800 -0
  1191. data/vendor/bundle/gems/thread_safe-0.3.6/ext/org/jruby/ext/thread_safe/jsr166e/nounsafe/LongAdder.java +204 -0
  1192. data/vendor/bundle/gems/thread_safe-0.3.6/ext/org/jruby/ext/thread_safe/jsr166e/nounsafe/Striped64.java +291 -0
  1193. data/vendor/bundle/gems/thread_safe-0.3.6/ext/org/jruby/ext/thread_safe/jsr166y/ThreadLocalRandom.java +199 -0
  1194. data/vendor/bundle/gems/thread_safe-0.3.6/ext/thread_safe/JrubyCacheBackendService.java +15 -0
  1195. data/vendor/bundle/gems/thread_safe-0.3.6/lib/thread_safe.rb +65 -0
  1196. data/vendor/bundle/gems/thread_safe-0.3.6/lib/thread_safe/atomic_reference_cache_backend.rb +908 -0
  1197. data/vendor/bundle/gems/thread_safe-0.3.6/lib/thread_safe/cache.rb +161 -0
  1198. data/vendor/bundle/gems/thread_safe-0.3.6/lib/thread_safe/mri_cache_backend.rb +60 -0
  1199. data/vendor/bundle/gems/thread_safe-0.3.6/lib/thread_safe/non_concurrent_cache_backend.rb +135 -0
  1200. data/vendor/bundle/gems/thread_safe-0.3.6/lib/thread_safe/synchronized_cache_backend.rb +77 -0
  1201. data/vendor/bundle/gems/thread_safe-0.3.6/lib/thread_safe/synchronized_delegator.rb +43 -0
  1202. data/vendor/bundle/gems/thread_safe-0.3.6/lib/thread_safe/util.rb +16 -0
  1203. data/vendor/bundle/gems/thread_safe-0.3.6/lib/thread_safe/util/adder.rb +62 -0
  1204. data/vendor/bundle/gems/thread_safe-0.3.6/lib/thread_safe/util/atomic_reference.rb +44 -0
  1205. data/vendor/bundle/gems/thread_safe-0.3.6/lib/thread_safe/util/cheap_lockable.rb +106 -0
  1206. data/vendor/bundle/gems/thread_safe-0.3.6/lib/thread_safe/util/power_of_two_tuple.rb +26 -0
  1207. data/vendor/bundle/gems/thread_safe-0.3.6/lib/thread_safe/util/striped64.rb +222 -0
  1208. data/vendor/bundle/gems/thread_safe-0.3.6/lib/thread_safe/util/volatile.rb +64 -0
  1209. data/vendor/bundle/gems/thread_safe-0.3.6/lib/thread_safe/util/volatile_tuple.rb +46 -0
  1210. data/vendor/bundle/gems/thread_safe-0.3.6/lib/thread_safe/util/xor_shift_random.rb +41 -0
  1211. data/vendor/bundle/gems/thread_safe-0.3.6/lib/thread_safe/version.rb +21 -0
  1212. data/vendor/bundle/gems/thread_safe-0.3.6/spec/.gitignore +0 -0
  1213. data/vendor/bundle/gems/thread_safe-0.3.6/spec/spec_helper.rb +31 -0
  1214. data/vendor/bundle/gems/thread_safe-0.3.6/spec/src/thread_safe/SecurityManager.java +21 -0
  1215. data/vendor/bundle/gems/thread_safe-0.3.6/spec/support/.gitignore +0 -0
  1216. data/vendor/bundle/gems/thread_safe-0.3.6/spec/support/threads.rb +1 -0
  1217. data/vendor/bundle/gems/thread_safe-0.3.6/spec/support/threadsafe_test.rb +75 -0
  1218. data/vendor/bundle/gems/thread_safe-0.3.6/spec/thread_safe/.gitignore +0 -0
  1219. data/vendor/bundle/gems/thread_safe-0.3.6/spec/thread_safe/array_spec.rb +18 -0
  1220. data/vendor/bundle/gems/thread_safe-0.3.6/spec/thread_safe/cache_loops_spec.rb +507 -0
  1221. data/vendor/bundle/gems/thread_safe-0.3.6/spec/thread_safe/cache_spec.rb +943 -0
  1222. data/vendor/bundle/gems/thread_safe-0.3.6/spec/thread_safe/hash_spec.rb +17 -0
  1223. data/vendor/bundle/gems/thread_safe-0.3.6/spec/thread_safe/no_unsafe_spec.rb +27 -0
  1224. data/vendor/bundle/gems/thread_safe-0.3.6/spec/thread_safe/synchronized_delegator_spec.rb +85 -0
  1225. data/vendor/bundle/gems/thread_safe-0.3.6/tasks/update_doc.rake +45 -0
  1226. data/vendor/bundle/gems/thread_safe-0.3.6/thread_safe.gemspec +26 -0
  1227. data/vendor/bundle/gems/thread_safe-0.3.6/yard-template/default/fulldoc/html/css/common.css +125 -0
  1228. data/vendor/bundle/gems/thread_safe-0.3.6/yard-template/default/layout/html/footer.erb +16 -0
  1229. data/vendor/bundle/gems/tzinfo-1.2.2/.yardopts +6 -0
  1230. data/vendor/bundle/gems/tzinfo-1.2.2/CHANGES.md +649 -0
  1231. data/vendor/bundle/gems/tzinfo-1.2.2/LICENSE +19 -0
  1232. data/vendor/bundle/gems/tzinfo-1.2.2/README.md +151 -0
  1233. data/vendor/bundle/gems/tzinfo-1.2.2/Rakefile +104 -0
  1234. data/vendor/bundle/gems/tzinfo-1.2.2/lib/tzinfo.rb +40 -0
  1235. data/vendor/bundle/gems/tzinfo-1.2.2/lib/tzinfo/country.rb +196 -0
  1236. data/vendor/bundle/gems/tzinfo-1.2.2/lib/tzinfo/country_index_definition.rb +31 -0
  1237. data/vendor/bundle/gems/tzinfo-1.2.2/lib/tzinfo/country_info.rb +42 -0
  1238. data/vendor/bundle/gems/tzinfo-1.2.2/lib/tzinfo/country_timezone.rb +123 -0
  1239. data/vendor/bundle/gems/tzinfo-1.2.2/lib/tzinfo/data_source.rb +190 -0
  1240. data/vendor/bundle/gems/tzinfo-1.2.2/lib/tzinfo/data_timezone.rb +58 -0
  1241. data/vendor/bundle/gems/tzinfo-1.2.2/lib/tzinfo/data_timezone_info.rb +55 -0
  1242. data/vendor/bundle/gems/tzinfo-1.2.2/lib/tzinfo/info_timezone.rb +30 -0
  1243. data/vendor/bundle/gems/tzinfo-1.2.2/lib/tzinfo/linked_timezone.rb +63 -0
  1244. data/vendor/bundle/gems/tzinfo-1.2.2/lib/tzinfo/linked_timezone_info.rb +26 -0
  1245. data/vendor/bundle/gems/tzinfo-1.2.2/lib/tzinfo/offset_rationals.rb +77 -0
  1246. data/vendor/bundle/gems/tzinfo-1.2.2/lib/tzinfo/ruby_core_support.rb +146 -0
  1247. data/vendor/bundle/gems/tzinfo-1.2.2/lib/tzinfo/ruby_country_info.rb +70 -0
  1248. data/vendor/bundle/gems/tzinfo-1.2.2/lib/tzinfo/ruby_data_source.rb +136 -0
  1249. data/vendor/bundle/gems/tzinfo-1.2.2/lib/tzinfo/time_or_datetime.rb +333 -0
  1250. data/vendor/bundle/gems/tzinfo-1.2.2/lib/tzinfo/timezone.rb +637 -0
  1251. data/vendor/bundle/gems/tzinfo-1.2.2/lib/tzinfo/timezone_definition.rb +36 -0
  1252. data/vendor/bundle/gems/tzinfo-1.2.2/lib/tzinfo/timezone_index_definition.rb +54 -0
  1253. data/vendor/bundle/gems/tzinfo-1.2.2/lib/tzinfo/timezone_info.rb +30 -0
  1254. data/vendor/bundle/gems/tzinfo-1.2.2/lib/tzinfo/timezone_offset.rb +74 -0
  1255. data/vendor/bundle/gems/tzinfo-1.2.2/lib/tzinfo/timezone_period.rb +204 -0
  1256. data/vendor/bundle/gems/tzinfo-1.2.2/lib/tzinfo/timezone_proxy.rb +70 -0
  1257. data/vendor/bundle/gems/tzinfo-1.2.2/lib/tzinfo/timezone_transition.rb +120 -0
  1258. data/vendor/bundle/gems/tzinfo-1.2.2/lib/tzinfo/timezone_transition_definition.rb +101 -0
  1259. data/vendor/bundle/gems/tzinfo-1.2.2/lib/tzinfo/transition_data_timezone_info.rb +274 -0
  1260. data/vendor/bundle/gems/tzinfo-1.2.2/lib/tzinfo/zoneinfo_country_info.rb +35 -0
  1261. data/vendor/bundle/gems/tzinfo-1.2.2/lib/tzinfo/zoneinfo_data_source.rb +487 -0
  1262. data/vendor/bundle/gems/tzinfo-1.2.2/lib/tzinfo/zoneinfo_timezone_info.rb +245 -0
  1263. data/vendor/bundle/gems/tzinfo-1.2.2/test/tc_country.rb +236 -0
  1264. data/vendor/bundle/gems/tzinfo-1.2.2/test/tc_country_index_definition.rb +69 -0
  1265. data/vendor/bundle/gems/tzinfo-1.2.2/test/tc_country_info.rb +16 -0
  1266. data/vendor/bundle/gems/tzinfo-1.2.2/test/tc_country_timezone.rb +161 -0
  1267. data/vendor/bundle/gems/tzinfo-1.2.2/test/tc_data_source.rb +218 -0
  1268. data/vendor/bundle/gems/tzinfo-1.2.2/test/tc_data_timezone.rb +99 -0
  1269. data/vendor/bundle/gems/tzinfo-1.2.2/test/tc_data_timezone_info.rb +18 -0
  1270. data/vendor/bundle/gems/tzinfo-1.2.2/test/tc_info_timezone.rb +34 -0
  1271. data/vendor/bundle/gems/tzinfo-1.2.2/test/tc_linked_timezone.rb +155 -0
  1272. data/vendor/bundle/gems/tzinfo-1.2.2/test/tc_linked_timezone_info.rb +23 -0
  1273. data/vendor/bundle/gems/tzinfo-1.2.2/test/tc_offset_rationals.rb +23 -0
  1274. data/vendor/bundle/gems/tzinfo-1.2.2/test/tc_ruby_core_support.rb +168 -0
  1275. data/vendor/bundle/gems/tzinfo-1.2.2/test/tc_ruby_country_info.rb +80 -0
  1276. data/vendor/bundle/gems/tzinfo-1.2.2/test/tc_ruby_data_source.rb +143 -0
  1277. data/vendor/bundle/gems/tzinfo-1.2.2/test/tc_time_or_datetime.rb +639 -0
  1278. data/vendor/bundle/gems/tzinfo-1.2.2/test/tc_timezone.rb +1334 -0
  1279. data/vendor/bundle/gems/tzinfo-1.2.2/test/tc_timezone_definition.rb +113 -0
  1280. data/vendor/bundle/gems/tzinfo-1.2.2/test/tc_timezone_index_definition.rb +73 -0
  1281. data/vendor/bundle/gems/tzinfo-1.2.2/test/tc_timezone_info.rb +11 -0
  1282. data/vendor/bundle/gems/tzinfo-1.2.2/test/tc_timezone_london.rb +143 -0
  1283. data/vendor/bundle/gems/tzinfo-1.2.2/test/tc_timezone_melbourne.rb +142 -0
  1284. data/vendor/bundle/gems/tzinfo-1.2.2/test/tc_timezone_new_york.rb +142 -0
  1285. data/vendor/bundle/gems/tzinfo-1.2.2/test/tc_timezone_offset.rb +126 -0
  1286. data/vendor/bundle/gems/tzinfo-1.2.2/test/tc_timezone_period.rb +548 -0
  1287. data/vendor/bundle/gems/tzinfo-1.2.2/test/tc_timezone_proxy.rb +113 -0
  1288. data/vendor/bundle/gems/tzinfo-1.2.2/test/tc_timezone_transition.rb +352 -0
  1289. data/vendor/bundle/gems/tzinfo-1.2.2/test/tc_timezone_transition_definition.rb +284 -0
  1290. data/vendor/bundle/gems/tzinfo-1.2.2/test/tc_timezone_utc.rb +27 -0
  1291. data/vendor/bundle/gems/tzinfo-1.2.2/test/tc_transition_data_timezone_info.rb +423 -0
  1292. data/vendor/bundle/gems/tzinfo-1.2.2/test/tc_zoneinfo_country_info.rb +64 -0
  1293. data/vendor/bundle/gems/tzinfo-1.2.2/test/tc_zoneinfo_data_source.rb +1122 -0
  1294. data/vendor/bundle/gems/tzinfo-1.2.2/test/tc_zoneinfo_timezone_info.rb +814 -0
  1295. data/vendor/bundle/gems/tzinfo-1.2.2/test/test_utils.rb +132 -0
  1296. data/vendor/bundle/gems/tzinfo-1.2.2/test/ts_all.rb +7 -0
  1297. data/vendor/bundle/gems/tzinfo-1.2.2/test/ts_all_ruby.rb +5 -0
  1298. data/vendor/bundle/gems/tzinfo-1.2.2/test/ts_all_zoneinfo.rb +7 -0
  1299. data/vendor/bundle/gems/tzinfo-1.2.2/test/tzinfo-data/tzinfo/data.rb +8 -0
  1300. data/vendor/bundle/gems/tzinfo-1.2.2/test/tzinfo-data/tzinfo/data/definitions/America/Argentina/Buenos_Aires.rb +89 -0
  1301. data/vendor/bundle/gems/tzinfo-1.2.2/test/tzinfo-data/tzinfo/data/definitions/America/New_York.rb +315 -0
  1302. data/vendor/bundle/gems/tzinfo-1.2.2/test/tzinfo-data/tzinfo/data/definitions/Australia/Melbourne.rb +218 -0
  1303. data/vendor/bundle/gems/tzinfo-1.2.2/test/tzinfo-data/tzinfo/data/definitions/EST.rb +19 -0
  1304. data/vendor/bundle/gems/tzinfo-1.2.2/test/tzinfo-data/tzinfo/data/definitions/Etc/GMT__m__1.rb +21 -0
  1305. data/vendor/bundle/gems/tzinfo-1.2.2/test/tzinfo-data/tzinfo/data/definitions/Etc/GMT__p__1.rb +21 -0
  1306. data/vendor/bundle/gems/tzinfo-1.2.2/test/tzinfo-data/tzinfo/data/definitions/Etc/UTC.rb +21 -0
  1307. data/vendor/bundle/gems/tzinfo-1.2.2/test/tzinfo-data/tzinfo/data/definitions/Europe/Amsterdam.rb +261 -0
  1308. data/vendor/bundle/gems/tzinfo-1.2.2/test/tzinfo-data/tzinfo/data/definitions/Europe/Andorra.rb +186 -0
  1309. data/vendor/bundle/gems/tzinfo-1.2.2/test/tzinfo-data/tzinfo/data/definitions/Europe/London.rb +321 -0
  1310. data/vendor/bundle/gems/tzinfo-1.2.2/test/tzinfo-data/tzinfo/data/definitions/Europe/Paris.rb +265 -0
  1311. data/vendor/bundle/gems/tzinfo-1.2.2/test/tzinfo-data/tzinfo/data/definitions/Europe/Prague.rb +220 -0
  1312. data/vendor/bundle/gems/tzinfo-1.2.2/test/tzinfo-data/tzinfo/data/definitions/UTC.rb +16 -0
  1313. data/vendor/bundle/gems/tzinfo-1.2.2/test/tzinfo-data/tzinfo/data/indexes/countries.rb +927 -0
  1314. data/vendor/bundle/gems/tzinfo-1.2.2/test/tzinfo-data/tzinfo/data/indexes/timezones.rb +596 -0
  1315. data/vendor/bundle/gems/tzinfo-1.2.2/test/tzinfo-data/tzinfo/data/version.rb +14 -0
  1316. data/vendor/bundle/gems/tzinfo-1.2.2/test/zoneinfo/America/Argentina/Buenos_Aires +0 -0
  1317. data/vendor/bundle/gems/tzinfo-1.2.2/test/zoneinfo/America/New_York +0 -0
  1318. data/vendor/bundle/gems/tzinfo-1.2.2/test/zoneinfo/Australia/Melbourne +0 -0
  1319. data/vendor/bundle/gems/tzinfo-1.2.2/test/zoneinfo/EST +0 -0
  1320. data/vendor/bundle/gems/tzinfo-1.2.2/test/zoneinfo/Etc/UTC +0 -0
  1321. data/vendor/bundle/gems/tzinfo-1.2.2/test/zoneinfo/Europe/Amsterdam +0 -0
  1322. data/vendor/bundle/gems/tzinfo-1.2.2/test/zoneinfo/Europe/Andorra +0 -0
  1323. data/vendor/bundle/gems/tzinfo-1.2.2/test/zoneinfo/Europe/London +0 -0
  1324. data/vendor/bundle/gems/tzinfo-1.2.2/test/zoneinfo/Europe/Paris +0 -0
  1325. data/vendor/bundle/gems/tzinfo-1.2.2/test/zoneinfo/Europe/Prague +0 -0
  1326. data/vendor/bundle/gems/tzinfo-1.2.2/test/zoneinfo/Factory +0 -0
  1327. data/vendor/bundle/gems/tzinfo-1.2.2/test/zoneinfo/iso3166.tab +275 -0
  1328. data/vendor/bundle/gems/tzinfo-1.2.2/test/zoneinfo/posix/Europe/London +0 -0
  1329. data/vendor/bundle/gems/tzinfo-1.2.2/test/zoneinfo/posixrules +0 -0
  1330. data/vendor/bundle/gems/tzinfo-1.2.2/test/zoneinfo/right/Europe/London +0 -0
  1331. data/vendor/bundle/gems/tzinfo-1.2.2/test/zoneinfo/zone.tab +439 -0
  1332. data/vendor/bundle/gems/tzinfo-1.2.2/test/zoneinfo/zone1970.tab +369 -0
  1333. data/vendor/bundle/gems/tzinfo-1.2.2/tzinfo.gemspec +21 -0
  1334. data/vendor/bundle/specifications/activesupport-5.0.2.gemspec +43 -0
  1335. data/vendor/bundle/specifications/coderay-1.1.1.gemspec +26 -0
  1336. data/vendor/bundle/specifications/concurrent-ruby-1.0.5.gemspec +23 -0
  1337. data/vendor/bundle/specifications/diff-lcs-1.3.gemspec +61 -0
  1338. data/vendor/bundle/specifications/i18n-0.8.1.gemspec +22 -0
  1339. data/vendor/bundle/specifications/method_source-0.8.2.gemspec +34 -0
  1340. data/vendor/bundle/specifications/minitest-5.10.1.gemspec +39 -0
  1341. data/vendor/bundle/specifications/pry-0.10.4.gemspec +43 -0
  1342. data/vendor/bundle/specifications/rake-10.5.0.gemspec +43 -0
  1343. data/vendor/bundle/specifications/rspec-3.5.0.gemspec +42 -0
  1344. data/vendor/bundle/specifications/rspec-core-3.5.4.gemspec +62 -0
  1345. data/vendor/bundle/specifications/rspec-expectations-3.5.0.gemspec +50 -0
  1346. data/vendor/bundle/specifications/rspec-mocks-3.5.0.gemspec +50 -0
  1347. data/vendor/bundle/specifications/rspec-support-3.5.0.gemspec +41 -0
  1348. data/vendor/bundle/specifications/slop-3.6.0.gemspec +36 -0
  1349. data/vendor/bundle/specifications/thread_safe-0.3.6.gemspec +38 -0
  1350. data/vendor/bundle/specifications/tzinfo-1.2.2.gemspec +37 -0
  1351. metadata +1467 -0
@@ -0,0 +1,2058 @@
1
+ # encoding: UTF-8
2
+
3
+ require "pathname"
4
+ require "minitest/metametameta"
5
+
6
+ module MyModule; end
7
+ class AnError < StandardError; include MyModule; end
8
+ class ImmutableString < String; def inspect; super.freeze; end; end
9
+ SomeError = Class.new Exception
10
+
11
+ class TestMinitestUnit < MetaMetaMetaTestCase
12
+ parallelize_me!
13
+
14
+ pwd = Pathname.new File.expand_path Dir.pwd
15
+ basedir = Pathname.new(File.expand_path "lib/minitest") + "mini"
16
+ basedir = basedir.relative_path_from(pwd).to_s
17
+ MINITEST_BASE_DIR = basedir[/\A\./] ? basedir : "./#{basedir}"
18
+ BT_MIDDLE = ["#{MINITEST_BASE_DIR}/test.rb:161:in `each'",
19
+ "#{MINITEST_BASE_DIR}/test.rb:158:in `each'",
20
+ "#{MINITEST_BASE_DIR}/test.rb:139:in `run'",
21
+ "#{MINITEST_BASE_DIR}/test.rb:106:in `run'"]
22
+
23
+ def test_filter_backtrace
24
+ # this is a semi-lame mix of relative paths.
25
+ # I cheated by making the autotest parts not have ./
26
+ bt = (["lib/autotest.rb:571:in `add_exception'",
27
+ "test/test_autotest.rb:62:in `test_add_exception'",
28
+ "#{MINITEST_BASE_DIR}/test.rb:165:in `__send__'"] +
29
+ BT_MIDDLE +
30
+ ["#{MINITEST_BASE_DIR}/test.rb:29",
31
+ "test/test_autotest.rb:422"])
32
+ bt = util_expand_bt bt
33
+
34
+ ex = ["lib/autotest.rb:571:in `add_exception'",
35
+ "test/test_autotest.rb:62:in `test_add_exception'"]
36
+ ex = util_expand_bt ex
37
+
38
+ fu = Minitest.filter_backtrace(bt)
39
+
40
+ assert_equal ex, fu
41
+ end
42
+
43
+ def test_filter_backtrace_all_unit
44
+ bt = (["#{MINITEST_BASE_DIR}/test.rb:165:in `__send__'"] +
45
+ BT_MIDDLE +
46
+ ["#{MINITEST_BASE_DIR}/test.rb:29"])
47
+ ex = bt.clone
48
+ fu = Minitest.filter_backtrace(bt)
49
+ assert_equal ex, fu
50
+ end
51
+
52
+ def test_filter_backtrace_unit_starts
53
+ bt = (["#{MINITEST_BASE_DIR}/test.rb:165:in `__send__'"] +
54
+ BT_MIDDLE +
55
+ ["#{MINITEST_BASE_DIR}/mini/test.rb:29",
56
+ "-e:1"])
57
+
58
+ bt = util_expand_bt bt
59
+
60
+ ex = ["-e:1"]
61
+ fu = Minitest.filter_backtrace bt
62
+ assert_equal ex, fu
63
+ end
64
+
65
+ # def test_default_runner_is_minitest_unit
66
+ # assert_instance_of Minitest::Unit, Minitest::Unit.runner
67
+ # end
68
+
69
+ def test_passed_eh_teardown_good
70
+ test_class = Class.new FakeNamedTest do
71
+ def teardown; assert true; end
72
+ def test_omg; assert true; end
73
+ end
74
+
75
+ test = test_class.new :test_omg
76
+ test.run
77
+ assert test.passed?
78
+ end
79
+
80
+ def test_passed_eh_teardown_skipped
81
+ test_class = Class.new FakeNamedTest do
82
+ def teardown; assert true; end
83
+ def test_omg; skip "bork"; end
84
+ end
85
+
86
+ test = test_class.new :test_omg
87
+ test.run
88
+
89
+ assert test.skipped?
90
+ refute test.passed?
91
+ end
92
+
93
+ def test_passed_eh_teardown_flunked
94
+ test_class = Class.new FakeNamedTest do
95
+ def teardown; flunk; end
96
+ def test_omg; assert true; end
97
+ end
98
+
99
+ test = test_class.new :test_omg
100
+ test.run
101
+ refute test.passed?
102
+ end
103
+
104
+ def util_expand_bt bt
105
+ if RUBY_VERSION >= "1.9.0" then
106
+ bt.map { |f| (f =~ /^\./) ? File.expand_path(f) : f }
107
+ else
108
+ bt
109
+ end
110
+ end
111
+ end
112
+
113
+ class TestMinitestUnitInherited < MetaMetaMetaTestCase
114
+ def with_overridden_include
115
+ Class.class_eval do
116
+ def inherited_with_hacks _klass
117
+ throw :inherited_hook
118
+ end
119
+
120
+ alias inherited_without_hacks inherited
121
+ alias inherited inherited_with_hacks
122
+ alias IGNORE_ME! inherited # 1.8 bug. god I love venture bros
123
+ end
124
+
125
+ yield
126
+ ensure
127
+ Class.class_eval do
128
+ alias inherited inherited_without_hacks
129
+
130
+ undef_method :inherited_with_hacks
131
+ undef_method :inherited_without_hacks
132
+ end
133
+
134
+ refute_respond_to Class, :inherited_with_hacks
135
+ refute_respond_to Class, :inherited_without_hacks
136
+ end
137
+
138
+ def test_inherited_hook_plays_nice_with_others
139
+ with_overridden_include do
140
+ assert_throws :inherited_hook do
141
+ Class.new FakeNamedTest
142
+ end
143
+ end
144
+ end
145
+ end
146
+
147
+ class TestMinitestRunner < MetaMetaMetaTestCase
148
+ # do not parallelize this suite... it just can't handle it.
149
+
150
+ def test_class_runnables
151
+ @assertion_count = 0
152
+
153
+ tc = Class.new(Minitest::Test)
154
+
155
+ assert_equal 1, Minitest::Test.runnables.size
156
+ assert_equal [tc], Minitest::Test.runnables
157
+ end
158
+
159
+ def test_run_test
160
+ @tu =
161
+ Class.new FakeNamedTest do
162
+ attr_reader :foo
163
+
164
+ def run
165
+ @foo = "hi mom!"
166
+ super
167
+ @foo = "okay"
168
+
169
+ self # per contract
170
+ end
171
+
172
+ def test_something
173
+ assert_equal "hi mom!", foo
174
+ end
175
+ end
176
+
177
+ expected = clean <<-EOM
178
+ .
179
+
180
+ Finished in 0.00
181
+
182
+ 1 runs, 1 assertions, 0 failures, 0 errors, 0 skips
183
+ EOM
184
+
185
+ assert_report expected
186
+ end
187
+
188
+ def test_run_error
189
+ @tu =
190
+ Class.new FakeNamedTest do
191
+ def test_something
192
+ assert true
193
+ end
194
+
195
+ def test_error
196
+ raise "unhandled exception"
197
+ end
198
+ end
199
+
200
+ expected = clean <<-EOM
201
+ E.
202
+
203
+ Finished in 0.00
204
+
205
+ 1) Error:
206
+ #<Class:0xXXX>#test_error:
207
+ RuntimeError: unhandled exception
208
+ FILE:LINE:in \`test_error\'
209
+
210
+ 2 runs, 1 assertions, 0 failures, 1 errors, 0 skips
211
+ EOM
212
+
213
+ assert_report expected
214
+ end
215
+
216
+ def test_run_error_teardown
217
+ @tu =
218
+ Class.new FakeNamedTest do
219
+ def test_something
220
+ assert true
221
+ end
222
+
223
+ def teardown
224
+ raise "unhandled exception"
225
+ end
226
+ end
227
+
228
+ expected = clean <<-EOM
229
+ E
230
+
231
+ Finished in 0.00
232
+
233
+ 1) Error:
234
+ #<Class:0xXXX>#test_something:
235
+ RuntimeError: unhandled exception
236
+ FILE:LINE:in \`teardown\'
237
+
238
+ 1 runs, 1 assertions, 0 failures, 1 errors, 0 skips
239
+ EOM
240
+
241
+ assert_report expected
242
+ end
243
+
244
+ def test_run_failing
245
+ setup_basic_tu
246
+
247
+ expected = clean <<-EOM
248
+ F.
249
+
250
+ Finished in 0.00
251
+
252
+ 1) Failure:
253
+ #<Class:0xXXX>#test_failure [FILE:LINE]:
254
+ Expected false to be truthy.
255
+
256
+ 2 runs, 2 assertions, 1 failures, 0 errors, 0 skips
257
+ EOM
258
+
259
+ assert_report expected
260
+ end
261
+
262
+ def setup_basic_tu
263
+ @tu =
264
+ Class.new FakeNamedTest do
265
+ def test_something
266
+ assert true
267
+ end
268
+
269
+ def test_failure
270
+ assert false
271
+ end
272
+ end
273
+ end
274
+
275
+ def test_run_failing_filtered
276
+ setup_basic_tu
277
+
278
+ expected = clean <<-EOM
279
+ .
280
+
281
+ Finished in 0.00
282
+
283
+ 1 runs, 1 assertions, 0 failures, 0 errors, 0 skips
284
+ EOM
285
+
286
+ assert_report expected, %w[--name /some|thing/ --seed 42]
287
+ end
288
+
289
+ def assert_filtering filter, name, expected, a = false
290
+ args = %W[--#{filter} #{name} --seed 42]
291
+
292
+ alpha = Class.new FakeNamedTest do
293
+ define_method :test_something do
294
+ assert a
295
+ end
296
+ end
297
+ Object.const_set(:Alpha, alpha)
298
+
299
+ beta = Class.new FakeNamedTest do
300
+ define_method :test_something do
301
+ assert true
302
+ end
303
+ end
304
+ Object.const_set(:Beta, beta)
305
+
306
+ @tus = [alpha, beta]
307
+
308
+ assert_report expected, args
309
+ ensure
310
+ Object.send :remove_const, :Alpha
311
+ Object.send :remove_const, :Beta
312
+ end
313
+
314
+ def test_run_filtered_including_suite_name
315
+ expected = clean <<-EOM
316
+ .
317
+
318
+ Finished in 0.00
319
+
320
+ 1 runs, 1 assertions, 0 failures, 0 errors, 0 skips
321
+ EOM
322
+
323
+ assert_filtering "name", "/Beta#test_something/", expected
324
+ end
325
+
326
+ def test_run_filtered_including_suite_name_string
327
+ expected = clean <<-EOM
328
+ .
329
+
330
+ Finished in 0.00
331
+
332
+ 1 runs, 1 assertions, 0 failures, 0 errors, 0 skips
333
+ EOM
334
+
335
+ assert_filtering "name", "Beta#test_something", expected
336
+ end
337
+
338
+ def test_run_filtered_string_method_only
339
+ expected = clean <<-EOM
340
+ ..
341
+
342
+ Finished in 0.00
343
+
344
+ 2 runs, 2 assertions, 0 failures, 0 errors, 0 skips
345
+ EOM
346
+
347
+ assert_filtering "name", "test_something", expected, :pass
348
+ end
349
+
350
+ def test_run_failing_excluded
351
+ setup_basic_tu
352
+
353
+ expected = clean <<-EOM
354
+ .
355
+
356
+ Finished in 0.00
357
+
358
+ 1 runs, 1 assertions, 0 failures, 0 errors, 0 skips
359
+ EOM
360
+
361
+ assert_report expected, %w[--exclude /failure/ --seed 42]
362
+ end
363
+
364
+ def test_run_filtered_excluding_suite_name
365
+ expected = clean <<-EOM
366
+ .
367
+
368
+ Finished in 0.00
369
+
370
+ 1 runs, 1 assertions, 0 failures, 0 errors, 0 skips
371
+ EOM
372
+
373
+ assert_filtering "exclude", "/Alpha#test_something/", expected
374
+ end
375
+
376
+ def test_run_filtered_excluding_suite_name_string
377
+ expected = clean <<-EOM
378
+ .
379
+
380
+ Finished in 0.00
381
+
382
+ 1 runs, 1 assertions, 0 failures, 0 errors, 0 skips
383
+ EOM
384
+
385
+ assert_filtering "exclude", "Alpha#test_something", expected
386
+ end
387
+
388
+ def test_run_filtered_excluding_string_method_only
389
+ expected = clean <<-EOM
390
+
391
+
392
+ Finished in 0.00
393
+
394
+ 0 runs, 0 assertions, 0 failures, 0 errors, 0 skips
395
+ EOM
396
+
397
+ assert_filtering "exclude", "test_something", expected, :pass
398
+ end
399
+
400
+ def test_run_passing
401
+ @tu =
402
+ Class.new FakeNamedTest do
403
+ def test_something
404
+ assert true
405
+ end
406
+ end
407
+
408
+ expected = clean <<-EOM
409
+ .
410
+
411
+ Finished in 0.00
412
+
413
+ 1 runs, 1 assertions, 0 failures, 0 errors, 0 skips
414
+ EOM
415
+
416
+ assert_report expected
417
+ end
418
+
419
+ def test_run_skip
420
+ @tu =
421
+ Class.new FakeNamedTest do
422
+ def test_something
423
+ assert true
424
+ end
425
+
426
+ def test_skip
427
+ skip "not yet"
428
+ end
429
+ end
430
+
431
+ expected = clean <<-EOM
432
+ S.
433
+
434
+ Finished in 0.00
435
+
436
+ 2 runs, 1 assertions, 0 failures, 0 errors, 1 skips
437
+
438
+ You have skipped tests. Run with --verbose for details.
439
+ EOM
440
+
441
+ restore_env do
442
+ assert_report expected
443
+ end
444
+ end
445
+
446
+ def test_run_skip_verbose
447
+ @tu =
448
+ Class.new FakeNamedTest do
449
+ def test_something
450
+ assert true
451
+ end
452
+
453
+ def test_skip
454
+ skip "not yet"
455
+ end
456
+ end
457
+
458
+ expected = clean <<-EOM
459
+ #<Class:0xXXX>#test_skip = 0.00 s = S
460
+ #<Class:0xXXX>#test_something = 0.00 s = .
461
+
462
+ Finished in 0.00
463
+
464
+ 1) Skipped:
465
+ #<Class:0xXXX>#test_skip [FILE:LINE]:
466
+ not yet
467
+
468
+ 2 runs, 1 assertions, 0 failures, 0 errors, 1 skips
469
+ EOM
470
+
471
+ assert_report expected, %w[--seed 42 --verbose]
472
+ end
473
+
474
+ def test_run_with_other_runner
475
+ @tu =
476
+ Class.new FakeNamedTest do
477
+ def self.run reporter, options = {}
478
+ @reporter = reporter
479
+ before_my_suite
480
+ super
481
+ end
482
+
483
+ def self.name; "wacky!" end
484
+
485
+ def self.before_my_suite
486
+ @reporter.io.puts "Running #{self.name} tests"
487
+ @@foo = 1
488
+ end
489
+
490
+ def test_something
491
+ assert_equal 1, @@foo
492
+ end
493
+
494
+ def test_something_else
495
+ assert_equal 1, @@foo
496
+ end
497
+ end
498
+
499
+ expected = clean <<-EOM
500
+ Running wacky! tests
501
+ ..
502
+
503
+ Finished in 0.00
504
+
505
+ 2 runs, 2 assertions, 0 failures, 0 errors, 0 skips
506
+ EOM
507
+
508
+ assert_report expected
509
+ end
510
+
511
+ require "monitor"
512
+
513
+ class Latch
514
+ def initialize count = 1
515
+ @count = count
516
+ @lock = Monitor.new
517
+ @cv = @lock.new_cond
518
+ end
519
+
520
+ def release
521
+ @lock.synchronize do
522
+ @count -= 1 if @count > 0
523
+ @cv.broadcast if @count == 0
524
+ end
525
+ end
526
+
527
+ def await
528
+ @lock.synchronize { @cv.wait_while { @count > 0 } }
529
+ end
530
+ end
531
+
532
+ def test_run_parallel
533
+ skip "I don't have ParallelEach debugged yet" if maglev?
534
+
535
+ test_count = 2
536
+ test_latch = Latch.new test_count
537
+ wait_latch = Latch.new test_count
538
+ main_latch = Latch.new
539
+
540
+ thread = Thread.new {
541
+ Thread.current.abort_on_exception = true
542
+
543
+ # This latch waits until both test latches have been released. Both
544
+ # latches can't be released unless done in separate threads because
545
+ # `main_latch` keeps the test method from finishing.
546
+ test_latch.await
547
+ main_latch.release
548
+ }
549
+
550
+ @tu =
551
+ Class.new FakeNamedTest do
552
+ parallelize_me!
553
+
554
+ test_count.times do |i|
555
+ define_method :"test_wait_on_main_thread_#{i}" do
556
+ test_latch.release
557
+
558
+ # This latch blocks until the "main thread" releases it. The main
559
+ # thread can't release this latch until both test latches have
560
+ # been released. This forces the latches to be released in separate
561
+ # threads.
562
+ main_latch.await
563
+ assert true
564
+ end
565
+ end
566
+ end
567
+
568
+ expected = clean <<-EOM
569
+ ..
570
+
571
+ Finished in 0.00
572
+
573
+ 2 runs, 2 assertions, 0 failures, 0 errors, 0 skips
574
+ EOM
575
+
576
+ assert_report(expected) do |reporter|
577
+ reporter.extend(Module.new {
578
+ define_method("record") do |result|
579
+ super(result)
580
+ wait_latch.release
581
+ end
582
+
583
+ define_method("report") do
584
+ wait_latch.await
585
+ super()
586
+ end
587
+ })
588
+ end
589
+ assert thread.join
590
+ end
591
+ end
592
+
593
+ class TestMinitestUnitOrder < MetaMetaMetaTestCase
594
+ # do not parallelize this suite... it just can't handle it.
595
+
596
+ def test_before_setup
597
+ call_order = []
598
+ @tu =
599
+ Class.new FakeNamedTest do
600
+ define_method :setup do
601
+ super()
602
+ call_order << :setup
603
+ end
604
+
605
+ define_method :before_setup do
606
+ call_order << :before_setup
607
+ end
608
+
609
+ def test_omg; assert true; end
610
+ end
611
+
612
+ run_tu_with_fresh_reporter
613
+
614
+ expected = [:before_setup, :setup]
615
+ assert_equal expected, call_order
616
+ end
617
+
618
+ def test_after_teardown
619
+ call_order = []
620
+ @tu =
621
+ Class.new FakeNamedTest do
622
+ define_method :teardown do
623
+ super()
624
+ call_order << :teardown
625
+ end
626
+
627
+ define_method :after_teardown do
628
+ call_order << :after_teardown
629
+ end
630
+
631
+ def test_omg; assert true; end
632
+ end
633
+
634
+ run_tu_with_fresh_reporter
635
+
636
+ expected = [:teardown, :after_teardown]
637
+ assert_equal expected, call_order
638
+ end
639
+
640
+ def test_all_teardowns_are_guaranteed_to_run
641
+ call_order = []
642
+ @tu =
643
+ Class.new FakeNamedTest do
644
+ define_method :after_teardown do
645
+ super()
646
+ call_order << :after_teardown
647
+ raise
648
+ end
649
+
650
+ define_method :teardown do
651
+ super()
652
+ call_order << :teardown
653
+ raise
654
+ end
655
+
656
+ define_method :before_teardown do
657
+ super()
658
+ call_order << :before_teardown
659
+ raise
660
+ end
661
+
662
+ def test_omg; assert true; end
663
+ end
664
+
665
+ run_tu_with_fresh_reporter
666
+
667
+ expected = [:before_teardown, :teardown, :after_teardown]
668
+ assert_equal expected, call_order
669
+ end
670
+
671
+ def test_setup_and_teardown_survive_inheritance
672
+ call_order = []
673
+
674
+ @tu = Class.new FakeNamedTest do
675
+ define_method :setup do
676
+ call_order << :setup_method
677
+ end
678
+
679
+ define_method :teardown do
680
+ call_order << :teardown_method
681
+ end
682
+
683
+ define_method :test_something do
684
+ call_order << :test
685
+ end
686
+ end
687
+
688
+ run_tu_with_fresh_reporter
689
+
690
+ @tu = Class.new @tu
691
+ run_tu_with_fresh_reporter
692
+
693
+ # Once for the parent class, once for the child
694
+ expected = [:setup_method, :test, :teardown_method] * 2
695
+
696
+ assert_equal expected, call_order
697
+ end
698
+ end
699
+
700
+ class TestMinitestRunnable < Minitest::Test
701
+ def setup_marshal klass
702
+ tc = klass.new "whatever"
703
+ tc.assertions = 42
704
+ tc.failures << "a failure"
705
+
706
+ yield tc if block_given?
707
+
708
+ def tc.setup
709
+ @blah = "blah"
710
+ end
711
+ tc.setup
712
+
713
+ @tc = tc
714
+ end
715
+
716
+ def assert_marshal expected_ivars
717
+ new_tc = Marshal.load Marshal.dump @tc
718
+
719
+ ivars = new_tc.instance_variables.map(&:to_s).sort
720
+ assert_equal expected_ivars, ivars
721
+ assert_equal "whatever", new_tc.name
722
+ assert_equal 42, new_tc.assertions
723
+ assert_equal ["a failure"], new_tc.failures
724
+
725
+ yield new_tc if block_given?
726
+ end
727
+
728
+ def test_marshal
729
+ setup_marshal Minitest::Runnable
730
+
731
+ assert_marshal %w[@NAME @assertions @failures]
732
+ end
733
+ end
734
+
735
+ class TestMinitestTest < TestMinitestRunnable
736
+ def test_dup
737
+ setup_marshal Minitest::Test do |tc|
738
+ tc.time = 3.14
739
+ end
740
+
741
+ assert_marshal %w[@NAME @assertions @failures @time] do |new_tc|
742
+ assert_in_epsilon 3.14, new_tc.time
743
+ end
744
+ end
745
+ end
746
+
747
+ class TestMinitestUnitTestCase < Minitest::Test
748
+ # do not call parallelize_me! - teardown accesses @tc._assertions
749
+ # which is not threadsafe. Nearly every method in here is an
750
+ # assertion test so it isn't worth splitting it out further.
751
+
752
+ RUBY18 = !defined? Encoding
753
+
754
+ def setup
755
+ super
756
+
757
+ Minitest::Test.reset
758
+
759
+ @tc = Minitest::Test.new "fake tc"
760
+ @zomg = "zomg ponies!"
761
+ @assertion_count = 1
762
+ end
763
+
764
+ def teardown
765
+ assert_equal(@assertion_count, @tc.assertions,
766
+ "expected #{@assertion_count} assertions to be fired during the test, not #{@tc.assertions}") if @tc.passed?
767
+ end
768
+
769
+ def non_verbose
770
+ orig_verbose = $VERBOSE
771
+ $VERBOSE = false
772
+
773
+ yield
774
+ ensure
775
+ $VERBOSE = orig_verbose
776
+ end
777
+
778
+ def test_assert
779
+ @assertion_count = 2
780
+
781
+ @tc.assert_equal true, @tc.assert(true), "returns true on success"
782
+ end
783
+
784
+ def test_assert__triggered
785
+ assert_triggered "Expected false to be truthy." do
786
+ @tc.assert false
787
+ end
788
+ end
789
+
790
+ def test_assert__triggered_message
791
+ assert_triggered @zomg do
792
+ @tc.assert false, @zomg
793
+ end
794
+ end
795
+
796
+ def test_assert_empty
797
+ @assertion_count = 2
798
+
799
+ @tc.assert_empty []
800
+ end
801
+
802
+ def test_assert_empty_triggered
803
+ @assertion_count = 2
804
+
805
+ assert_triggered "Expected [1] to be empty." do
806
+ @tc.assert_empty [1]
807
+ end
808
+ end
809
+
810
+ def test_assert_equal
811
+ @tc.assert_equal 1, 1
812
+ end
813
+
814
+ def test_assert_equal_different_collection_array_hex_invisible
815
+ object1 = Object.new
816
+ object2 = Object.new
817
+ msg = "No visible difference in the Array#inspect output.
818
+ You should look at the implementation of #== on Array or its members.
819
+ [#<Object:0xXXXXXX>]".gsub(/^ +/, "")
820
+ assert_triggered msg do
821
+ @tc.assert_equal [object1], [object2]
822
+ end
823
+ end
824
+
825
+ def test_assert_equal_different_collection_hash_hex_invisible
826
+ h1, h2 = {}, {}
827
+ h1[1] = Object.new
828
+ h2[1] = Object.new
829
+ msg = "No visible difference in the Hash#inspect output.
830
+ You should look at the implementation of #== on Hash or its members.
831
+ {1=>#<Object:0xXXXXXX>}".gsub(/^ +/, "")
832
+
833
+ assert_triggered msg do
834
+ @tc.assert_equal h1, h2
835
+ end
836
+ end
837
+
838
+ def test_assert_equal_string_encodings
839
+ msg = <<-EOM.gsub(/^ {10}/, "")
840
+ --- expected
841
+ +++ actual
842
+ @@ -1 +1,2 @@
843
+ +# encoding: ASCII-8BIT
844
+ "bad-utf8-\\xF1.txt"
845
+ EOM
846
+
847
+ assert_triggered msg do
848
+ x = "bad-utf8-\xF1.txt"
849
+ y = x.dup.force_encoding "binary" # TODO: switch to .b when 1.9 dropped
850
+ @tc.assert_equal x, y
851
+ end
852
+ end unless RUBY18
853
+
854
+ def test_assert_equal_string_encodings_both_different
855
+ msg = <<-EOM.gsub(/^ {10}/, "")
856
+ --- expected
857
+ +++ actual
858
+ @@ -1,2 +1,2 @@
859
+ -# encoding: US-ASCII
860
+ +# encoding: ASCII-8BIT
861
+ "bad-utf8-\\xF1.txt"
862
+ EOM
863
+
864
+ assert_triggered msg do
865
+ x = "bad-utf8-\xF1.txt".force_encoding "ASCII"
866
+ y = x.dup.force_encoding "binary" # TODO: switch to .b when 1.9 dropped
867
+ @tc.assert_equal x, y
868
+ end
869
+ end unless RUBY18
870
+
871
+ def test_assert_equal_different_diff_deactivated
872
+ skip "https://github.com/MagLev/maglev/issues/209" if maglev?
873
+
874
+ without_diff do
875
+ assert_triggered util_msg("haha" * 10, "blah" * 10) do
876
+ o1 = "haha" * 10
877
+ o2 = "blah" * 10
878
+
879
+ @tc.assert_equal o1, o2
880
+ end
881
+ end
882
+ end
883
+
884
+ def test_assert_equal_different_hex
885
+ c = Class.new do
886
+ def initialize s; @name = s; end
887
+ end
888
+
889
+ o1 = c.new "a"
890
+ o2 = c.new "b"
891
+ msg = "--- expected
892
+ +++ actual
893
+ @@ -1 +1 @@
894
+ -#<#<Class:0xXXXXXX>:0xXXXXXX @name=\"a\">
895
+ +#<#<Class:0xXXXXXX>:0xXXXXXX @name=\"b\">
896
+ ".gsub(/^ +/, "")
897
+
898
+ assert_triggered msg do
899
+ @tc.assert_equal o1, o2
900
+ end
901
+ end
902
+
903
+ def test_assert_equal_different_hex_invisible
904
+ o1 = Object.new
905
+ o2 = Object.new
906
+
907
+ msg = "No visible difference in the Object#inspect output.
908
+ You should look at the implementation of #== on Object or its members.
909
+ #<Object:0xXXXXXX>".gsub(/^ +/, "")
910
+
911
+ assert_triggered msg do
912
+ @tc.assert_equal o1, o2
913
+ end
914
+ end
915
+
916
+ def test_assert_equal_different_long
917
+ msg = "--- expected
918
+ +++ actual
919
+ @@ -1 +1 @@
920
+ -\"hahahahahahahahahahahahahahahahahahahaha\"
921
+ +\"blahblahblahblahblahblahblahblahblahblah\"
922
+ ".gsub(/^ +/, "")
923
+
924
+ assert_triggered msg do
925
+ o1 = "haha" * 10
926
+ o2 = "blah" * 10
927
+
928
+ @tc.assert_equal o1, o2
929
+ end
930
+ end
931
+
932
+ def test_assert_equal_different_long_invisible
933
+ msg = "No visible difference in the String#inspect output.
934
+ You should look at the implementation of #== on String or its members.
935
+ \"blahblahblahblahblahblahblahblahblahblah\"".gsub(/^ +/, "")
936
+
937
+ assert_triggered msg do
938
+ o1 = "blah" * 10
939
+ o2 = "blah" * 10
940
+ def o1.== _
941
+ false
942
+ end
943
+ @tc.assert_equal o1, o2
944
+ end
945
+ end
946
+
947
+ def test_assert_equal_different_long_msg
948
+ msg = "message.
949
+ --- expected
950
+ +++ actual
951
+ @@ -1 +1 @@
952
+ -\"hahahahahahahahahahahahahahahahahahahaha\"
953
+ +\"blahblahblahblahblahblahblahblahblahblah\"
954
+ ".gsub(/^ +/, "")
955
+
956
+ assert_triggered msg do
957
+ o1 = "haha" * 10
958
+ o2 = "blah" * 10
959
+ @tc.assert_equal o1, o2, "message"
960
+ end
961
+ end
962
+
963
+ def test_assert_equal_different_short
964
+ assert_triggered util_msg(1, 2) do
965
+ @tc.assert_equal 1, 2
966
+ end
967
+ end
968
+
969
+ def test_assert_equal_different_short_msg
970
+ assert_triggered util_msg(1, 2, "message") do
971
+ @tc.assert_equal 1, 2, "message"
972
+ end
973
+ end
974
+
975
+ def test_assert_equal_different_short_multiline
976
+ msg = "--- expected\n+++ actual\n@@ -1,2 +1,2 @@\n \"a\n-b\"\n+c\"\n"
977
+ assert_triggered msg do
978
+ @tc.assert_equal "a\nb", "a\nc"
979
+ end
980
+ end
981
+
982
+ def test_assert_equal_does_not_allow_lhs_nil
983
+ if Minitest::VERSION =~ /^6/ then
984
+ warn "Time to strip the MT5 test"
985
+
986
+ @assertion_count += 1
987
+ assert_triggered(/Use assert_nil if expecting nil/) do
988
+ @tc.assert_equal nil, nil
989
+ end
990
+ else
991
+ err_re = /Use assert_nil if expecting nil from .*test_minitest_test.rb/
992
+
993
+ assert_output "", err_re do
994
+ @tc.assert_equal nil, nil
995
+ end
996
+ end
997
+ end
998
+
999
+ def test_assert_equal_does_not_allow_lhs_nil_triggered
1000
+ assert_triggered "Expected: nil\n Actual: false" do
1001
+ @tc.assert_equal nil, false
1002
+ end
1003
+ end
1004
+
1005
+ def test_assert_in_delta
1006
+ @tc.assert_in_delta 0.0, 1.0 / 1000, 0.1
1007
+ end
1008
+
1009
+ def test_delta_consistency
1010
+ @assertion_count = 2
1011
+
1012
+ @tc.assert_in_delta 0, 1, 1
1013
+
1014
+ assert_triggered "Expected |0 - 1| (1) to not be <= 1." do
1015
+ @tc.refute_in_delta 0, 1, 1
1016
+ end
1017
+ end
1018
+
1019
+ def test_assert_in_delta_triggered
1020
+ x = maglev? ? "9.999999xxxe-07" : "1.0e-06"
1021
+ assert_triggered "Expected |0.0 - 0.001| (0.001) to be <= #{x}." do
1022
+ @tc.assert_in_delta 0.0, 1.0 / 1000, 0.000001
1023
+ end
1024
+ end
1025
+
1026
+ def test_assert_in_epsilon
1027
+ @assertion_count = 10
1028
+
1029
+ @tc.assert_in_epsilon 10_000, 9991
1030
+ @tc.assert_in_epsilon 9991, 10_000
1031
+ @tc.assert_in_epsilon 1.0, 1.001
1032
+ @tc.assert_in_epsilon 1.001, 1.0
1033
+
1034
+ @tc.assert_in_epsilon 10_000, 9999.1, 0.0001
1035
+ @tc.assert_in_epsilon 9999.1, 10_000, 0.0001
1036
+ @tc.assert_in_epsilon 1.0, 1.0001, 0.0001
1037
+ @tc.assert_in_epsilon 1.0001, 1.0, 0.0001
1038
+
1039
+ @tc.assert_in_epsilon(-1, -1)
1040
+ @tc.assert_in_epsilon(-10_000, -9991)
1041
+ end
1042
+
1043
+ def test_epsilon_consistency
1044
+ @assertion_count = 2
1045
+
1046
+ @tc.assert_in_epsilon 1.0, 1.001
1047
+
1048
+ msg = "Expected |1.0 - 1.001| (0.000999xxx) to not be <= 0.001."
1049
+ assert_triggered msg do
1050
+ @tc.refute_in_epsilon 1.0, 1.001
1051
+ end
1052
+ end
1053
+
1054
+ def test_assert_in_epsilon_triggered
1055
+ assert_triggered "Expected |10000 - 9990| (10) to be <= 9.99." do
1056
+ @tc.assert_in_epsilon 10_000, 9990
1057
+ end
1058
+ end
1059
+
1060
+ def test_assert_in_epsilon_triggered_negative_case
1061
+ x = (RUBY18 and not maglev?) ? "0.1" : "0.100000xxx"
1062
+ y = maglev? ? "0.100000xxx" : "0.1"
1063
+ assert_triggered "Expected |-1.1 - -1| (#{x}) to be <= #{y}." do
1064
+ @tc.assert_in_epsilon(-1.1, -1, 0.1)
1065
+ end
1066
+ end
1067
+
1068
+ def test_assert_includes
1069
+ @assertion_count = 2
1070
+
1071
+ @tc.assert_includes [true], true
1072
+ end
1073
+
1074
+ def test_assert_includes_triggered
1075
+ @assertion_count = 3
1076
+
1077
+ e = @tc.assert_raises Minitest::Assertion do
1078
+ @tc.assert_includes [true], false
1079
+ end
1080
+
1081
+ expected = "Expected [true] to include false."
1082
+ assert_equal expected, e.message
1083
+ end
1084
+
1085
+ def test_assert_instance_of
1086
+ @tc.assert_instance_of String, "blah"
1087
+ end
1088
+
1089
+ def test_assert_instance_of_triggered
1090
+ assert_triggered 'Expected "blah" to be an instance of Array, not String.' do
1091
+ @tc.assert_instance_of Array, "blah"
1092
+ end
1093
+ end
1094
+
1095
+ def test_assert_kind_of
1096
+ @tc.assert_kind_of String, "blah"
1097
+ end
1098
+
1099
+ def test_assert_kind_of_triggered
1100
+ assert_triggered 'Expected "blah" to be a kind of Array, not String.' do
1101
+ @tc.assert_kind_of Array, "blah"
1102
+ end
1103
+ end
1104
+
1105
+ def test_assert_match
1106
+ @assertion_count = 2
1107
+ @tc.assert_match(/\w+/, "blah blah blah")
1108
+ end
1109
+
1110
+ def test_assert_match_matcher_object
1111
+ @assertion_count = 2
1112
+
1113
+ pattern = Object.new
1114
+ def pattern.=~ _; true end
1115
+
1116
+ @tc.assert_match pattern, 5
1117
+ end
1118
+
1119
+ def test_assert_match_matchee_to_str
1120
+ @assertion_count = 2
1121
+
1122
+ obj = Object.new
1123
+ def obj.to_str; "blah" end
1124
+
1125
+ @tc.assert_match "blah", obj
1126
+ end
1127
+
1128
+ def test_assert_match_object_triggered
1129
+ @assertion_count = 2
1130
+
1131
+ pattern = Object.new
1132
+ def pattern.=~ _; false end
1133
+ def pattern.inspect; "[Object]" end
1134
+
1135
+ assert_triggered "Expected [Object] to match 5." do
1136
+ @tc.assert_match pattern, 5
1137
+ end
1138
+ end
1139
+
1140
+ def test_assert_match_triggered
1141
+ @assertion_count = 2
1142
+ assert_triggered 'Expected /\d+/ to match "blah blah blah".' do
1143
+ @tc.assert_match(/\d+/, "blah blah blah")
1144
+ end
1145
+ end
1146
+
1147
+ def test_assert_nil
1148
+ @tc.assert_nil nil
1149
+ end
1150
+
1151
+ def test_assert_nil_triggered
1152
+ assert_triggered "Expected 42 to be nil." do
1153
+ @tc.assert_nil 42
1154
+ end
1155
+ end
1156
+
1157
+ def test_assert_operator
1158
+ @tc.assert_operator 2, :>, 1
1159
+ end
1160
+
1161
+ def test_assert_operator_bad_object
1162
+ bad = Object.new
1163
+ def bad.== _; true end
1164
+
1165
+ @tc.assert_operator bad, :equal?, bad
1166
+ end
1167
+
1168
+ def test_assert_operator_triggered
1169
+ assert_triggered "Expected 2 to be < 1." do
1170
+ @tc.assert_operator 2, :<, 1
1171
+ end
1172
+ end
1173
+
1174
+ def test_assert_output_both
1175
+ @assertion_count = 2
1176
+
1177
+ @tc.assert_output "yay", "blah" do
1178
+ print "yay"
1179
+ $stderr.print "blah"
1180
+ end
1181
+ end
1182
+
1183
+ def test_assert_output_both_regexps
1184
+ @assertion_count = 4
1185
+
1186
+ @tc.assert_output(/y.y/, /bl.h/) do
1187
+ print "yay"
1188
+ $stderr.print "blah"
1189
+ end
1190
+ end
1191
+
1192
+ def test_assert_output_err
1193
+ @tc.assert_output nil, "blah" do
1194
+ $stderr.print "blah"
1195
+ end
1196
+ end
1197
+
1198
+ def test_assert_output_neither
1199
+ @assertion_count = 0
1200
+
1201
+ @tc.assert_output do
1202
+ # do nothing
1203
+ end
1204
+ end
1205
+
1206
+ def test_assert_output_out
1207
+ @tc.assert_output "blah" do
1208
+ print "blah"
1209
+ end
1210
+ end
1211
+
1212
+ def test_assert_output_triggered_both
1213
+ assert_triggered util_msg("blah", "blah blah", "In stderr") do
1214
+ @tc.assert_output "yay", "blah" do
1215
+ print "boo"
1216
+ $stderr.print "blah blah"
1217
+ end
1218
+ end
1219
+ end
1220
+
1221
+ def test_assert_output_triggered_err
1222
+ assert_triggered util_msg("blah", "blah blah", "In stderr") do
1223
+ @tc.assert_output nil, "blah" do
1224
+ $stderr.print "blah blah"
1225
+ end
1226
+ end
1227
+ end
1228
+
1229
+ def test_assert_output_triggered_out
1230
+ assert_triggered util_msg("blah", "blah blah", "In stdout") do
1231
+ @tc.assert_output "blah" do
1232
+ print "blah blah"
1233
+ end
1234
+ end
1235
+ end
1236
+
1237
+ def test_assert_predicate
1238
+ @tc.assert_predicate "", :empty?
1239
+ end
1240
+
1241
+ def test_assert_predicate_triggered
1242
+ assert_triggered 'Expected "blah" to be empty?.' do
1243
+ @tc.assert_predicate "blah", :empty?
1244
+ end
1245
+ end
1246
+
1247
+ def test_assert_raises
1248
+ @tc.assert_raises RuntimeError do
1249
+ raise "blah"
1250
+ end
1251
+ end
1252
+
1253
+ def test_assert_raises_default
1254
+ @tc.assert_raises do
1255
+ raise StandardError, "blah"
1256
+ end
1257
+ end
1258
+
1259
+ def test_assert_raises_default_triggered
1260
+ e = assert_raises Minitest::Assertion do
1261
+ @tc.assert_raises do
1262
+ raise SomeError, "blah"
1263
+ end
1264
+ end
1265
+
1266
+ expected = clean <<-EOM.chomp
1267
+ [StandardError] exception expected, not
1268
+ Class: <SomeError>
1269
+ Message: <\"blah\">
1270
+ ---Backtrace---
1271
+ FILE:LINE:in \`test_assert_raises_default_triggered\'
1272
+ ---------------
1273
+ EOM
1274
+
1275
+ actual = e.message.gsub(/^.+:\d+/, "FILE:LINE")
1276
+ actual.gsub!(/block \(\d+ levels\) in /, "") if RUBY_VERSION >= "1.9.0"
1277
+
1278
+ assert_equal expected, actual
1279
+ end
1280
+
1281
+ def test_assert_raises_module
1282
+ @tc.assert_raises MyModule do
1283
+ raise AnError
1284
+ end
1285
+ end
1286
+
1287
+ ##
1288
+ # *sigh* This is quite an odd scenario, but it is from real (albeit
1289
+ # ugly) test code in ruby-core:
1290
+ #
1291
+ # http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=29259
1292
+
1293
+ def test_assert_raises_skip
1294
+ @assertion_count = 0
1295
+
1296
+ assert_triggered "skipped", Minitest::Skip do
1297
+ @tc.assert_raises ArgumentError do
1298
+ begin
1299
+ raise "blah"
1300
+ rescue
1301
+ skip "skipped"
1302
+ end
1303
+ end
1304
+ end
1305
+ end
1306
+
1307
+ def test_assert_raises_triggered_different
1308
+ e = assert_raises Minitest::Assertion do
1309
+ @tc.assert_raises RuntimeError do
1310
+ raise SyntaxError, "icky"
1311
+ end
1312
+ end
1313
+
1314
+ expected = clean <<-EOM.chomp
1315
+ [RuntimeError] exception expected, not
1316
+ Class: <SyntaxError>
1317
+ Message: <\"icky\">
1318
+ ---Backtrace---
1319
+ FILE:LINE:in \`test_assert_raises_triggered_different\'
1320
+ ---------------
1321
+ EOM
1322
+
1323
+ actual = e.message.gsub(/^.+:\d+/, "FILE:LINE")
1324
+ actual.gsub!(/block \(\d+ levels\) in /, "") if RUBY_VERSION >= "1.9.0"
1325
+
1326
+ assert_equal expected, actual
1327
+ end
1328
+
1329
+ def test_assert_raises_triggered_different_msg
1330
+ e = assert_raises Minitest::Assertion do
1331
+ @tc.assert_raises RuntimeError, "XXX" do
1332
+ raise SyntaxError, "icky"
1333
+ end
1334
+ end
1335
+
1336
+ expected = clean <<-EOM
1337
+ XXX.
1338
+ [RuntimeError] exception expected, not
1339
+ Class: <SyntaxError>
1340
+ Message: <\"icky\">
1341
+ ---Backtrace---
1342
+ FILE:LINE:in \`test_assert_raises_triggered_different_msg\'
1343
+ ---------------
1344
+ EOM
1345
+
1346
+ actual = e.message.gsub(/^.+:\d+/, "FILE:LINE")
1347
+ actual.gsub!(/block \(\d+ levels\) in /, "") if RUBY_VERSION >= "1.9.0"
1348
+
1349
+ assert_equal expected.chomp, actual
1350
+ end
1351
+
1352
+ def test_assert_raises_triggered_none
1353
+ e = assert_raises Minitest::Assertion do
1354
+ @tc.assert_raises Minitest::Assertion do
1355
+ # do nothing
1356
+ end
1357
+ end
1358
+
1359
+ expected = "Minitest::Assertion expected but nothing was raised."
1360
+
1361
+ assert_equal expected, e.message
1362
+ end
1363
+
1364
+ def test_assert_raises_triggered_none_msg
1365
+ e = assert_raises Minitest::Assertion do
1366
+ @tc.assert_raises Minitest::Assertion, "XXX" do
1367
+ # do nothing
1368
+ end
1369
+ end
1370
+
1371
+ expected = "XXX.\nMinitest::Assertion expected but nothing was raised."
1372
+
1373
+ assert_equal expected, e.message
1374
+ end
1375
+
1376
+ def test_assert_raises_subclass
1377
+ @tc.assert_raises StandardError do
1378
+ raise AnError
1379
+ end
1380
+ end
1381
+
1382
+ def test_assert_raises_subclass_triggered
1383
+ e = assert_raises Minitest::Assertion do
1384
+ @tc.assert_raises SomeError do
1385
+ raise AnError, "some message"
1386
+ end
1387
+ end
1388
+
1389
+ expected = clean <<-EOM
1390
+ [SomeError] exception expected, not
1391
+ Class: <AnError>
1392
+ Message: <\"some message\">
1393
+ ---Backtrace---
1394
+ FILE:LINE:in \`test_assert_raises_subclass_triggered\'
1395
+ ---------------
1396
+ EOM
1397
+
1398
+ actual = e.message.gsub(/^.+:\d+/, "FILE:LINE")
1399
+ actual.gsub!(/block \(\d+ levels\) in /, "") if RUBY_VERSION >= "1.9.0"
1400
+
1401
+ assert_equal expected.chomp, actual
1402
+ end
1403
+
1404
+ def test_assert_raises_exit
1405
+ @tc.assert_raises SystemExit do
1406
+ exit 1
1407
+ end
1408
+ end
1409
+
1410
+ def test_assert_raises_signals
1411
+ @tc.assert_raises SignalException do
1412
+ raise SignalException, :INT
1413
+ end
1414
+ end
1415
+
1416
+ def test_assert_respond_to
1417
+ @tc.assert_respond_to "blah", :empty?
1418
+ end
1419
+
1420
+ def test_assert_respond_to_triggered
1421
+ assert_triggered 'Expected "blah" (String) to respond to #rawr!.' do
1422
+ @tc.assert_respond_to "blah", :rawr!
1423
+ end
1424
+ end
1425
+
1426
+ def test_assert_same
1427
+ @assertion_count = 3
1428
+
1429
+ o = "blah"
1430
+ @tc.assert_same 1, 1
1431
+ @tc.assert_same :blah, :blah
1432
+ @tc.assert_same o, o
1433
+ end
1434
+
1435
+ def test_assert_same_triggered
1436
+ @assertion_count = 2
1437
+
1438
+ assert_triggered "Expected 2 (oid=N) to be the same as 1 (oid=N)." do
1439
+ @tc.assert_same 1, 2
1440
+ end
1441
+
1442
+ s1 = "blah"
1443
+ s2 = "blah"
1444
+
1445
+ assert_triggered 'Expected "blah" (oid=N) to be the same as "blah" (oid=N).' do
1446
+ @tc.assert_same s1, s2
1447
+ end
1448
+ end
1449
+
1450
+ def assert_deprecated name
1451
+ dep = /DEPRECATED: #{name}. From #{__FILE__}:\d+:.*?/
1452
+ assert_output nil, dep do
1453
+ yield
1454
+ end
1455
+ end
1456
+
1457
+ def test_assert_send
1458
+ assert_deprecated :assert_send do
1459
+ @tc.assert_send [1, :<, 2]
1460
+ end
1461
+ end
1462
+
1463
+ def test_assert_send_bad
1464
+ assert_deprecated :assert_send do
1465
+ assert_triggered "Expected 1.>(*[2]) to return true." do
1466
+ @tc.assert_send [1, :>, 2]
1467
+ end
1468
+ end
1469
+ end
1470
+
1471
+ def test_assert_silent
1472
+ @assertion_count = 2
1473
+
1474
+ @tc.assert_silent do
1475
+ # do nothing
1476
+ end
1477
+ end
1478
+
1479
+ def test_assert_silent_triggered_err
1480
+ assert_triggered util_msg("", "blah blah", "In stderr") do
1481
+ @tc.assert_silent do
1482
+ $stderr.print "blah blah"
1483
+ end
1484
+ end
1485
+ end
1486
+
1487
+ def test_assert_silent_triggered_out
1488
+ @assertion_count = 2
1489
+
1490
+ assert_triggered util_msg("", "blah blah", "In stdout") do
1491
+ @tc.assert_silent do
1492
+ print "blah blah"
1493
+ end
1494
+ end
1495
+ end
1496
+
1497
+ def test_assert_throws
1498
+ @tc.assert_throws :blah do
1499
+ throw :blah
1500
+ end
1501
+ end
1502
+
1503
+ def test_assert_throws_name_error
1504
+ @tc.assert_raises NameError do
1505
+ @tc.assert_throws :blah do
1506
+ raise NameError
1507
+ end
1508
+ end
1509
+ end
1510
+
1511
+ def test_assert_throws_argument_exception
1512
+ @tc.assert_raises ArgumentError do
1513
+ @tc.assert_throws :blah do
1514
+ raise ArgumentError
1515
+ end
1516
+ end
1517
+ end
1518
+
1519
+ def test_assert_throws_different
1520
+ assert_triggered "Expected :blah to have been thrown, not :not_blah." do
1521
+ @tc.assert_throws :blah do
1522
+ throw :not_blah
1523
+ end
1524
+ end
1525
+ end
1526
+
1527
+ def test_assert_throws_unthrown
1528
+ assert_triggered "Expected :blah to have been thrown." do
1529
+ @tc.assert_throws :blah do
1530
+ # do nothing
1531
+ end
1532
+ end
1533
+ end
1534
+
1535
+ def test_capture_io
1536
+ @assertion_count = 0
1537
+
1538
+ non_verbose do
1539
+ out, err = capture_io do
1540
+ puts "hi"
1541
+ $stderr.puts "bye!"
1542
+ end
1543
+
1544
+ assert_equal "hi\n", out
1545
+ assert_equal "bye!\n", err
1546
+ end
1547
+ end
1548
+
1549
+ def test_capture_subprocess_io
1550
+ @assertion_count = 0
1551
+
1552
+ non_verbose do
1553
+ out, err = capture_subprocess_io do
1554
+ system("echo hi")
1555
+ system("echo bye! 1>&2")
1556
+ end
1557
+
1558
+ assert_equal "hi\n", out
1559
+ assert_equal "bye!", err.strip
1560
+ end
1561
+ end
1562
+
1563
+ def test_class_asserts_match_refutes
1564
+ @assertion_count = 0
1565
+
1566
+ methods = Minitest::Assertions.public_instance_methods
1567
+ methods.map!(&:to_s) if Symbol === methods.first
1568
+
1569
+ # These don't have corresponding refutes _on purpose_. They're
1570
+ # useless and will never be added, so don't bother.
1571
+ ignores = %w[assert_output assert_raises assert_send
1572
+ assert_silent assert_throws assert_mock]
1573
+
1574
+ # These are test/unit methods. I'm not actually sure why they're still here
1575
+ ignores += %w[assert_no_match assert_not_equal assert_not_nil
1576
+ assert_not_same assert_nothing_raised
1577
+ assert_nothing_thrown assert_raise]
1578
+
1579
+ asserts = methods.grep(/^assert/).sort - ignores
1580
+ refutes = methods.grep(/^refute/).sort - ignores
1581
+
1582
+ assert_empty refutes.map { |n| n.sub(/^refute/, "assert") } - asserts
1583
+ assert_empty asserts.map { |n| n.sub(/^assert/, "refute") } - refutes
1584
+ end
1585
+
1586
+ def test_flunk
1587
+ assert_triggered "Epic Fail!" do
1588
+ @tc.flunk
1589
+ end
1590
+ end
1591
+
1592
+ def test_flunk_message
1593
+ assert_triggered @zomg do
1594
+ @tc.flunk @zomg
1595
+ end
1596
+ end
1597
+
1598
+ def test_message
1599
+ @assertion_count = 0
1600
+
1601
+ assert_equal "blah2.", @tc.message { "blah2" }.call
1602
+ assert_equal "blah2.", @tc.message("") { "blah2" }.call
1603
+ assert_equal "blah1.\nblah2.", @tc.message(:blah1) { "blah2" }.call
1604
+ assert_equal "blah1.\nblah2.", @tc.message("blah1") { "blah2" }.call
1605
+
1606
+ message = proc { "blah1" }
1607
+ assert_equal "blah1.\nblah2.", @tc.message(message) { "blah2" }.call
1608
+
1609
+ message = @tc.message { "blah1" }
1610
+ assert_equal "blah1.\nblah2.", @tc.message(message) { "blah2" }.call
1611
+ end
1612
+
1613
+ def test_message_message
1614
+ assert_triggered "whoops.\nExpected: 1\n Actual: 2" do
1615
+ @tc.assert_equal 1, 2, message { "whoops" }
1616
+ end
1617
+ end
1618
+
1619
+ def test_message_lambda
1620
+ assert_triggered "whoops.\nExpected: 1\n Actual: 2" do
1621
+ @tc.assert_equal 1, 2, lambda { "whoops" }
1622
+ end
1623
+ end
1624
+
1625
+ def test_message_deferred
1626
+ @assertion_count, var = 0, nil
1627
+
1628
+ msg = message { var = "blah" }
1629
+
1630
+ assert_nil var
1631
+
1632
+ msg.call
1633
+
1634
+ assert_equal "blah", var
1635
+ end
1636
+
1637
+ def test_pass
1638
+ @tc.pass
1639
+ end
1640
+
1641
+ def test_prints
1642
+ printer = Class.new { extend Minitest::Assertions }
1643
+ @tc.assert_equal '"test"', printer.mu_pp(ImmutableString.new "test")
1644
+ end
1645
+
1646
+ def test_refute
1647
+ @assertion_count = 2
1648
+
1649
+ @tc.assert_equal false, @tc.refute(false), "returns false on success"
1650
+ end
1651
+
1652
+ def test_refute_empty
1653
+ @assertion_count = 2
1654
+
1655
+ @tc.refute_empty [1]
1656
+ end
1657
+
1658
+ def test_refute_empty_triggered
1659
+ @assertion_count = 2
1660
+
1661
+ assert_triggered "Expected [] to not be empty." do
1662
+ @tc.refute_empty []
1663
+ end
1664
+ end
1665
+
1666
+ def test_refute_equal
1667
+ @tc.refute_equal "blah", "yay"
1668
+ end
1669
+
1670
+ def test_refute_equal_triggered
1671
+ assert_triggered 'Expected "blah" to not be equal to "blah".' do
1672
+ @tc.refute_equal "blah", "blah"
1673
+ end
1674
+ end
1675
+
1676
+ def test_refute_in_delta
1677
+ @tc.refute_in_delta 0.0, 1.0 / 1000, 0.000001
1678
+ end
1679
+
1680
+ def test_refute_in_delta_triggered
1681
+ x = maglev? ? "0.100000xxx" : "0.1"
1682
+ assert_triggered "Expected |0.0 - 0.001| (0.001) to not be <= #{x}." do
1683
+ @tc.refute_in_delta 0.0, 1.0 / 1000, 0.1
1684
+ end
1685
+ end
1686
+
1687
+ def test_refute_in_epsilon
1688
+ @tc.refute_in_epsilon 10_000, 9990-1
1689
+ end
1690
+
1691
+ def test_refute_in_epsilon_triggered
1692
+ assert_triggered "Expected |10000 - 9990| (10) to not be <= 10.0." do
1693
+ @tc.refute_in_epsilon 10_000, 9990
1694
+ flunk
1695
+ end
1696
+ end
1697
+
1698
+ def test_refute_includes
1699
+ @assertion_count = 2
1700
+
1701
+ @tc.refute_includes [true], false
1702
+ end
1703
+
1704
+ def test_refute_includes_triggered
1705
+ @assertion_count = 3
1706
+
1707
+ e = @tc.assert_raises Minitest::Assertion do
1708
+ @tc.refute_includes [true], true
1709
+ end
1710
+
1711
+ expected = "Expected [true] to not include true."
1712
+ assert_equal expected, e.message
1713
+ end
1714
+
1715
+ def test_refute_instance_of
1716
+ @tc.refute_instance_of Array, "blah"
1717
+ end
1718
+
1719
+ def test_refute_instance_of_triggered
1720
+ assert_triggered 'Expected "blah" to not be an instance of String.' do
1721
+ @tc.refute_instance_of String, "blah"
1722
+ end
1723
+ end
1724
+
1725
+ def test_refute_kind_of
1726
+ @tc.refute_kind_of Array, "blah"
1727
+ end
1728
+
1729
+ def test_refute_kind_of_triggered
1730
+ assert_triggered 'Expected "blah" to not be a kind of String.' do
1731
+ @tc.refute_kind_of String, "blah"
1732
+ end
1733
+ end
1734
+
1735
+ def test_refute_match
1736
+ @assertion_count = 2
1737
+ @tc.refute_match(/\d+/, "blah blah blah")
1738
+ end
1739
+
1740
+ def test_refute_match_matcher_object
1741
+ @assertion_count = 2
1742
+ @tc.refute_match Object.new, 5 # default #=~ returns false
1743
+ end
1744
+
1745
+ def test_refute_match_object_triggered
1746
+ @assertion_count = 2
1747
+
1748
+ pattern = Object.new
1749
+ def pattern.=~ _; true end
1750
+ def pattern.inspect; "[Object]" end
1751
+
1752
+ assert_triggered "Expected [Object] to not match 5." do
1753
+ @tc.refute_match pattern, 5
1754
+ end
1755
+ end
1756
+
1757
+ def test_refute_match_triggered
1758
+ @assertion_count = 2
1759
+ assert_triggered 'Expected /\w+/ to not match "blah blah blah".' do
1760
+ @tc.refute_match(/\w+/, "blah blah blah")
1761
+ end
1762
+ end
1763
+
1764
+ def test_refute_nil
1765
+ @tc.refute_nil 42
1766
+ end
1767
+
1768
+ def test_refute_nil_triggered
1769
+ assert_triggered "Expected nil to not be nil." do
1770
+ @tc.refute_nil nil
1771
+ end
1772
+ end
1773
+
1774
+ def test_refute_predicate
1775
+ @tc.refute_predicate "42", :empty?
1776
+ end
1777
+
1778
+ def test_refute_predicate_triggered
1779
+ assert_triggered 'Expected "" to not be empty?.' do
1780
+ @tc.refute_predicate "", :empty?
1781
+ end
1782
+ end
1783
+
1784
+ def test_refute_operator
1785
+ @tc.refute_operator 2, :<, 1
1786
+ end
1787
+
1788
+ def test_refute_operator_bad_object
1789
+ bad = Object.new
1790
+ def bad.== _; true end
1791
+
1792
+ @tc.refute_operator true, :equal?, bad
1793
+ end
1794
+
1795
+ def test_refute_operator_triggered
1796
+ assert_triggered "Expected 2 to not be > 1." do
1797
+ @tc.refute_operator 2, :>, 1
1798
+ end
1799
+ end
1800
+
1801
+ def test_refute_respond_to
1802
+ @tc.refute_respond_to "blah", :rawr!
1803
+ end
1804
+
1805
+ def test_refute_respond_to_triggered
1806
+ assert_triggered 'Expected "blah" to not respond to empty?.' do
1807
+ @tc.refute_respond_to "blah", :empty?
1808
+ end
1809
+ end
1810
+
1811
+ def test_refute_same
1812
+ @tc.refute_same 1, 2
1813
+ end
1814
+
1815
+ def test_refute_same_triggered
1816
+ assert_triggered "Expected 1 (oid=N) to not be the same as 1 (oid=N)." do
1817
+ @tc.refute_same 1, 1
1818
+ end
1819
+ end
1820
+
1821
+ def test_skip
1822
+ @assertion_count = 0
1823
+
1824
+ assert_triggered "haha!", Minitest::Skip do
1825
+ @tc.skip "haha!"
1826
+ end
1827
+ end
1828
+
1829
+ def test_runnable_methods_random
1830
+ @assertion_count = 0
1831
+
1832
+ sample_test_case = Class.new FakeNamedTest do
1833
+ def self.test_order; :random; end
1834
+ def test_test1; assert "does not matter" end
1835
+ def test_test2; assert "does not matter" end
1836
+ def test_test3; assert "does not matter" end
1837
+ end
1838
+
1839
+ srand 42
1840
+ expected = case
1841
+ when maglev? then
1842
+ %w[test_test2 test_test3 test_test1]
1843
+ else
1844
+ %w[test_test2 test_test1 test_test3]
1845
+ end
1846
+ assert_equal expected, sample_test_case.runnable_methods
1847
+ end
1848
+
1849
+ def test_runnable_methods_sorted
1850
+ @assertion_count = 0
1851
+
1852
+ sample_test_case = Class.new FakeNamedTest do
1853
+ def self.test_order; :sorted end
1854
+ def test_test3; assert "does not matter" end
1855
+ def test_test2; assert "does not matter" end
1856
+ def test_test1; assert "does not matter" end
1857
+ end
1858
+
1859
+ expected = %w[test_test1 test_test2 test_test3]
1860
+ assert_equal expected, sample_test_case.runnable_methods
1861
+ end
1862
+
1863
+ def test_i_suck_and_my_tests_are_order_dependent_bang_sets_test_order_alpha
1864
+ @assertion_count = 0
1865
+
1866
+ shitty_test_case = Class.new FakeNamedTest
1867
+
1868
+ shitty_test_case.i_suck_and_my_tests_are_order_dependent!
1869
+
1870
+ assert_equal :alpha, shitty_test_case.test_order
1871
+ end
1872
+
1873
+ def test_i_suck_and_my_tests_are_order_dependent_bang_does_not_warn
1874
+ @assertion_count = 0
1875
+
1876
+ shitty_test_case = Class.new FakeNamedTest
1877
+
1878
+ def shitty_test_case.test_order; :lol end
1879
+
1880
+ assert_silent do
1881
+ shitty_test_case.i_suck_and_my_tests_are_order_dependent!
1882
+ end
1883
+ end
1884
+
1885
+ def assert_triggered expected, klass = Minitest::Assertion
1886
+ e = assert_raises klass do
1887
+ yield
1888
+ end
1889
+
1890
+ msg = e.message.sub(/(---Backtrace---).*/m, '\1')
1891
+ msg.gsub!(/\(oid=[-0-9]+\)/, "(oid=N)")
1892
+ msg.gsub!(/(\d\.\d{6})\d+/, '\1xxx') # normalize: ruby version, impl, platform
1893
+
1894
+ assert_msg = Regexp === expected ? :assert_match : :assert_equal
1895
+ self.send assert_msg, expected, msg
1896
+ end
1897
+
1898
+ def util_msg exp, act, msg = nil
1899
+ s = "Expected: #{exp.inspect}\n Actual: #{act.inspect}"
1900
+ s = "#{msg}.\n#{s}" if msg
1901
+ s
1902
+ end
1903
+
1904
+ def without_diff
1905
+ old_diff = Minitest::Assertions.diff
1906
+ Minitest::Assertions.diff = nil
1907
+
1908
+ yield
1909
+ ensure
1910
+ Minitest::Assertions.diff = old_diff
1911
+ end
1912
+ end
1913
+
1914
+ class TestMinitestGuard < Minitest::Test
1915
+ parallelize_me!
1916
+
1917
+ def test_mri_eh
1918
+ assert self.class.mri? "ruby blah"
1919
+ assert self.mri? "ruby blah"
1920
+ end
1921
+
1922
+ def test_jruby_eh
1923
+ assert self.class.jruby? "java"
1924
+ assert self.jruby? "java"
1925
+ end
1926
+
1927
+ def test_rubinius_eh
1928
+ assert self.class.rubinius? "rbx"
1929
+ assert self.rubinius? "rbx"
1930
+ end
1931
+
1932
+ def test_windows_eh
1933
+ assert self.class.windows? "mswin"
1934
+ assert self.windows? "mswin"
1935
+ end
1936
+ end
1937
+
1938
+ class TestMinitestUnitRecording < MetaMetaMetaTestCase
1939
+ # do not parallelize this suite... it just can't handle it.
1940
+
1941
+ def assert_run_record *expected, &block
1942
+ @tu = Class.new FakeNamedTest, &block
1943
+
1944
+ run_tu_with_fresh_reporter
1945
+
1946
+ recorded = first_reporter.results.map(&:failures).flatten.map { |f| f.error.class }
1947
+
1948
+ assert_equal expected, recorded
1949
+ end
1950
+
1951
+ def test_run_with_bogus_reporter
1952
+ # https://github.com/seattlerb/minitest/issues/659
1953
+ # TODO: remove test for minitest 6
1954
+ @tu = Class.new FakeNamedTest do
1955
+ def test_method
1956
+ assert true
1957
+ end
1958
+ end
1959
+
1960
+ self.reporter = Minitest::CompositeReporter.new
1961
+ reporter << Class.new do
1962
+ def start; end
1963
+ # def prerecord klass, name; end
1964
+ def record result; end
1965
+ def report; end
1966
+ def passed?; end
1967
+ def results; end
1968
+ end.new
1969
+
1970
+ Minitest::Runnable.runnables.delete @tu
1971
+
1972
+ @tu.run reporter, {}
1973
+ end
1974
+
1975
+ def test_record_passing
1976
+ assert_run_record do
1977
+ def test_method
1978
+ assert true
1979
+ end
1980
+ end
1981
+ end
1982
+
1983
+ def test_record_failing
1984
+ assert_run_record Minitest::Assertion do
1985
+ def test_method
1986
+ assert false
1987
+ end
1988
+ end
1989
+ end
1990
+
1991
+ def test_record_error
1992
+ assert_run_record RuntimeError do
1993
+ def test_method
1994
+ raise "unhandled exception"
1995
+ end
1996
+ end
1997
+ end
1998
+
1999
+ def test_record_error_teardown
2000
+ assert_run_record RuntimeError do
2001
+ def test_method
2002
+ assert true
2003
+ end
2004
+
2005
+ def teardown
2006
+ raise "unhandled exception"
2007
+ end
2008
+ end
2009
+ end
2010
+
2011
+ def test_record_error_in_test_and_teardown
2012
+ assert_run_record AnError, RuntimeError do
2013
+ def test_method
2014
+ raise AnError
2015
+ end
2016
+
2017
+ def teardown
2018
+ raise "unhandled exception"
2019
+ end
2020
+ end
2021
+ end
2022
+
2023
+ def test_to_s_error_in_test_and_teardown
2024
+ @tu = Class.new FakeNamedTest do
2025
+ def test_method
2026
+ raise AnError
2027
+ end
2028
+
2029
+ def teardown
2030
+ raise "unhandled exception"
2031
+ end
2032
+ end
2033
+
2034
+ run_tu_with_fresh_reporter
2035
+
2036
+ exp = clean "
2037
+ Error:
2038
+ #<Class:0xXXX>#test_method:
2039
+ AnError: AnError
2040
+ FILE:LINE:in `test_method'
2041
+
2042
+ Error:
2043
+ #<Class:0xXXX>#test_method:
2044
+ RuntimeError: unhandled exception
2045
+ FILE:LINE:in `teardown'
2046
+ "
2047
+
2048
+ assert_equal exp.strip, normalize_output(first_reporter.results.first.to_s).strip
2049
+ end
2050
+
2051
+ def test_record_skip
2052
+ assert_run_record Minitest::Skip do
2053
+ def test_method
2054
+ skip "not yet"
2055
+ end
2056
+ end
2057
+ end
2058
+ end