tdiary 5.0.9 → 5.0.10

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 (4114) hide show
  1. checksums.yaml +4 -4
  2. data/ChangeLog +3 -0
  3. data/Gemfile.lock +28 -28
  4. data/README.md +1 -1
  5. data/lib/tdiary/cli.rb +1 -1
  6. data/lib/tdiary/rack/auth.rb +1 -1
  7. data/lib/tdiary/version.rb +1 -1
  8. data/misc/paas/heroku/Gemfile.lock +46 -49
  9. data/public/index.rdf +36 -0
  10. data/tdiary.conf +211 -0
  11. metadata +4 -4105
  12. data/vendor/bundle/bin/coveralls +0 -27
  13. data/vendor/bundle/bin/emot +0 -27
  14. data/vendor/bundle/bin/hikidoc +0 -27
  15. data/vendor/bundle/bin/htmldiff +0 -29
  16. data/vendor/bundle/bin/jasmine +0 -27
  17. data/vendor/bundle/bin/launchy +0 -27
  18. data/vendor/bundle/bin/ldiff +0 -29
  19. data/vendor/bundle/bin/nokogiri +0 -27
  20. data/vendor/bundle/bin/pit +0 -27
  21. data/vendor/bundle/bin/racksh +0 -27
  22. data/vendor/bundle/bin/rackup +0 -27
  23. data/vendor/bundle/bin/rake +0 -27
  24. data/vendor/bundle/bin/redcarpet +0 -27
  25. data/vendor/bundle/bin/rspec +0 -27
  26. data/vendor/bundle/bin/sequel +0 -27
  27. data/vendor/bundle/bin/sprockets +0 -27
  28. data/vendor/bundle/bin/term_cdiff +0 -27
  29. data/vendor/bundle/bin/term_colortab +0 -27
  30. data/vendor/bundle/bin/term_decolor +0 -27
  31. data/vendor/bundle/bin/term_display +0 -27
  32. data/vendor/bundle/bin/term_mandel +0 -27
  33. data/vendor/bundle/bin/thor +0 -27
  34. data/vendor/bundle/cache/addressable-2.5.2.gem +0 -0
  35. data/vendor/bundle/cache/capybara-3.2.1.gem +0 -0
  36. data/vendor/bundle/cache/childprocess-0.9.0.gem +0 -0
  37. data/vendor/bundle/cache/concurrent-ruby-1.0.5.gem +0 -0
  38. data/vendor/bundle/cache/coveralls-0.8.21.gem +0 -0
  39. data/vendor/bundle/cache/diff-lcs-1.3.gem +0 -0
  40. data/vendor/bundle/cache/docile-1.1.5.gem +0 -0
  41. data/vendor/bundle/cache/emot-0.0.4.gem +0 -0
  42. data/vendor/bundle/cache/faraday-0.15.1.gem +0 -0
  43. data/vendor/bundle/cache/fastimage-2.1.3.gem +0 -0
  44. data/vendor/bundle/cache/ffi-1.9.23.gem +0 -0
  45. data/vendor/bundle/cache/hikidoc-0.1.0.gem +0 -0
  46. data/vendor/bundle/cache/jasmine-2.99.0.gem +0 -0
  47. data/vendor/bundle/cache/jasmine-core-2.99.2.gem +0 -0
  48. data/vendor/bundle/cache/launchy-2.4.3.gem +0 -0
  49. data/vendor/bundle/cache/mail-2.7.0.gem +0 -0
  50. data/vendor/bundle/cache/mini_mime-1.0.0.gem +0 -0
  51. data/vendor/bundle/cache/mini_portile2-2.3.0.gem +0 -0
  52. data/vendor/bundle/cache/multipart-post-2.0.0.gem +0 -0
  53. data/vendor/bundle/cache/nokogiri-1.8.2.gem +0 -0
  54. data/vendor/bundle/cache/octokit-4.9.0.gem +0 -0
  55. data/vendor/bundle/cache/phantomjs-2.1.1.0.gem +0 -0
  56. data/vendor/bundle/cache/pit-0.0.7.gem +0 -0
  57. data/vendor/bundle/cache/power_assert-1.1.1.gem +0 -0
  58. data/vendor/bundle/cache/public_suffix-3.0.2.gem +0 -0
  59. data/vendor/bundle/cache/rack-2.0.5.gem +0 -0
  60. data/vendor/bundle/cache/rack-test-1.0.0.gem +0 -0
  61. data/vendor/bundle/cache/racksh-1.0.0.gem +0 -0
  62. data/vendor/bundle/cache/rake-12.3.1.gem +0 -0
  63. data/vendor/bundle/cache/redcarpet-3.4.0.gem +0 -0
  64. data/vendor/bundle/cache/rspec-3.7.0.gem +0 -0
  65. data/vendor/bundle/cache/rspec-core-3.7.1.gem +0 -0
  66. data/vendor/bundle/cache/rspec-expectations-3.7.0.gem +0 -0
  67. data/vendor/bundle/cache/rspec-mocks-3.7.0.gem +0 -0
  68. data/vendor/bundle/cache/rspec-support-3.7.1.gem +0 -0
  69. data/vendor/bundle/cache/rubyzip-1.2.1.gem +0 -0
  70. data/vendor/bundle/cache/sawyer-0.8.1.gem +0 -0
  71. data/vendor/bundle/cache/selenium-webdriver-3.12.0.gem +0 -0
  72. data/vendor/bundle/cache/sequel-5.9.0.gem +0 -0
  73. data/vendor/bundle/cache/simplecov-0.14.1.gem +0 -0
  74. data/vendor/bundle/cache/simplecov-html-0.10.2.gem +0 -0
  75. data/vendor/bundle/cache/sprockets-3.7.2.gem +0 -0
  76. data/vendor/bundle/cache/sqlite3-1.3.13.gem +0 -0
  77. data/vendor/bundle/cache/term-ansicolor-1.6.0.gem +0 -0
  78. data/vendor/bundle/cache/test-unit-3.2.8.gem +0 -0
  79. data/vendor/bundle/cache/thor-0.19.4.gem +0 -0
  80. data/vendor/bundle/cache/tins-1.16.3.gem +0 -0
  81. data/vendor/bundle/cache/xpath-3.1.0.gem +0 -0
  82. data/vendor/bundle/extensions/x86_64-linux/2.5.0-static/ffi-1.9.23/ffi_c.so +0 -0
  83. data/vendor/bundle/extensions/x86_64-linux/2.5.0-static/ffi-1.9.23/gem.build_complete +0 -0
  84. data/vendor/bundle/extensions/x86_64-linux/2.5.0-static/ffi-1.9.23/gem_make.out +0 -64
  85. data/vendor/bundle/extensions/x86_64-linux/2.5.0-static/ffi-1.9.23/mkmf.log +0 -449
  86. data/vendor/bundle/extensions/x86_64-linux/2.5.0-static/nokogiri-1.8.2/gem.build_complete +0 -0
  87. data/vendor/bundle/extensions/x86_64-linux/2.5.0-static/nokogiri-1.8.2/gem_make.out +0 -695
  88. data/vendor/bundle/extensions/x86_64-linux/2.5.0-static/nokogiri-1.8.2/mkmf.log +0 -538
  89. data/vendor/bundle/extensions/x86_64-linux/2.5.0-static/nokogiri-1.8.2/nokogiri/nokogiri.so +0 -0
  90. data/vendor/bundle/extensions/x86_64-linux/2.5.0-static/redcarpet-3.4.0/gem.build_complete +0 -0
  91. data/vendor/bundle/extensions/x86_64-linux/2.5.0-static/redcarpet-3.4.0/gem_make.out +0 -106
  92. data/vendor/bundle/extensions/x86_64-linux/2.5.0-static/redcarpet-3.4.0/redcarpet.so +0 -0
  93. data/vendor/bundle/extensions/x86_64-linux/2.5.0-static/sqlite3-1.3.13/gem.build_complete +0 -0
  94. data/vendor/bundle/extensions/x86_64-linux/2.5.0-static/sqlite3-1.3.13/gem_make.out +0 -33
  95. data/vendor/bundle/extensions/x86_64-linux/2.5.0-static/sqlite3-1.3.13/mkmf.log +0 -578
  96. data/vendor/bundle/extensions/x86_64-linux/2.5.0-static/sqlite3-1.3.13/sqlite3/sqlite3_native.so +0 -0
  97. data/vendor/bundle/gems/addressable-2.5.2/CHANGELOG.md +0 -216
  98. data/vendor/bundle/gems/addressable-2.5.2/Gemfile +0 -32
  99. data/vendor/bundle/gems/addressable-2.5.2/LICENSE.txt +0 -202
  100. data/vendor/bundle/gems/addressable-2.5.2/README.md +0 -121
  101. data/vendor/bundle/gems/addressable-2.5.2/Rakefile +0 -32
  102. data/vendor/bundle/gems/addressable-2.5.2/data/unicode.data +0 -0
  103. data/vendor/bundle/gems/addressable-2.5.2/lib/addressable.rb +0 -2
  104. data/vendor/bundle/gems/addressable-2.5.2/lib/addressable/idna.rb +0 -25
  105. data/vendor/bundle/gems/addressable-2.5.2/lib/addressable/idna/native.rb +0 -59
  106. data/vendor/bundle/gems/addressable-2.5.2/lib/addressable/idna/pure.rb +0 -677
  107. data/vendor/bundle/gems/addressable-2.5.2/lib/addressable/template.rb +0 -1065
  108. data/vendor/bundle/gems/addressable-2.5.2/lib/addressable/uri.rb +0 -2492
  109. data/vendor/bundle/gems/addressable-2.5.2/lib/addressable/version.rb +0 -30
  110. data/vendor/bundle/gems/addressable-2.5.2/spec/addressable/idna_spec.rb +0 -298
  111. data/vendor/bundle/gems/addressable-2.5.2/spec/addressable/net_http_compat_spec.rb +0 -28
  112. data/vendor/bundle/gems/addressable-2.5.2/spec/addressable/rack_mount_compat_spec.rb +0 -104
  113. data/vendor/bundle/gems/addressable-2.5.2/spec/addressable/security_spec.rb +0 -57
  114. data/vendor/bundle/gems/addressable-2.5.2/spec/addressable/template_spec.rb +0 -1419
  115. data/vendor/bundle/gems/addressable-2.5.2/spec/addressable/uri_spec.rb +0 -6468
  116. data/vendor/bundle/gems/addressable-2.5.2/spec/spec_helper.rb +0 -21
  117. data/vendor/bundle/gems/addressable-2.5.2/tasks/clobber.rake +0 -2
  118. data/vendor/bundle/gems/addressable-2.5.2/tasks/gem.rake +0 -91
  119. data/vendor/bundle/gems/addressable-2.5.2/tasks/git.rake +0 -45
  120. data/vendor/bundle/gems/addressable-2.5.2/tasks/metrics.rake +0 -22
  121. data/vendor/bundle/gems/addressable-2.5.2/tasks/rspec.rake +0 -21
  122. data/vendor/bundle/gems/addressable-2.5.2/tasks/yard.rake +0 -27
  123. data/vendor/bundle/gems/capybara-3.2.1/History.md +0 -1232
  124. data/vendor/bundle/gems/capybara-3.2.1/License.txt +0 -22
  125. data/vendor/bundle/gems/capybara-3.2.1/README.md +0 -1091
  126. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara.rb +0 -504
  127. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/config.rb +0 -88
  128. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/cucumber.rb +0 -27
  129. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/driver/base.rb +0 -160
  130. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/driver/node.rb +0 -114
  131. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/dsl.rb +0 -57
  132. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/helpers.rb +0 -78
  133. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/minitest.rb +0 -279
  134. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/minitest/spec.rb +0 -180
  135. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/node/actions.rb +0 -334
  136. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/node/base.rb +0 -129
  137. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/node/document.rb +0 -36
  138. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/node/document_matchers.rb +0 -69
  139. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/node/element.rb +0 -407
  140. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/node/finders.rb +0 -313
  141. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/node/matchers.rb +0 -699
  142. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/node/simple.rb +0 -181
  143. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/queries/ancestor_query.rb +0 -29
  144. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/queries/base_query.rb +0 -99
  145. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/queries/current_path_query.rb +0 -51
  146. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/queries/match_query.rb +0 -25
  147. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/queries/selector_query.rb +0 -304
  148. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/queries/sibling_query.rb +0 -25
  149. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/queries/text_query.rb +0 -102
  150. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/queries/title_query.rb +0 -39
  151. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/rack_test/browser.rb +0 -127
  152. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/rack_test/css_handlers.rb +0 -13
  153. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/rack_test/driver.rb +0 -101
  154. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/rack_test/form.rb +0 -122
  155. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/rack_test/node.rb +0 -253
  156. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/rails.rb +0 -16
  157. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/result.rb +0 -163
  158. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/rspec.rb +0 -29
  159. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/rspec/compound.rb +0 -92
  160. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/rspec/features.rb +0 -25
  161. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/rspec/matcher_proxies.rb +0 -61
  162. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/rspec/matchers.rb +0 -385
  163. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/selector.rb +0 -458
  164. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/selector/css.rb +0 -27
  165. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/selector/filter.rb +0 -4
  166. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/selector/filter_set.rb +0 -73
  167. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/selector/filters/base.rb +0 -57
  168. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/selector/filters/expression_filter.rb +0 -21
  169. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/selector/filters/node_filter.rb +0 -17
  170. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/selector/selector.rb +0 -422
  171. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/selenium/driver.rb +0 -414
  172. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/selenium/node.rb +0 -337
  173. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/server.rb +0 -124
  174. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/server/animation_disabler.rb +0 -43
  175. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/server/middleware.rb +0 -55
  176. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/session.rb +0 -891
  177. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/session/config.rb +0 -104
  178. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/session/matchers.rb +0 -80
  179. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/fixtures/another_test_file.txt +0 -1
  180. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/fixtures/capybara.jpg +0 -3
  181. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/fixtures/no_extension +0 -1
  182. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/fixtures/test_file.txt +0 -1
  183. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/public/jquery-ui.js +0 -13
  184. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/public/jquery.js +0 -5
  185. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/public/test.js +0 -166
  186. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/accept_alert_spec.rb +0 -81
  187. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/accept_confirm_spec.rb +0 -32
  188. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/accept_prompt_spec.rb +0 -79
  189. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/all_spec.rb +0 -183
  190. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/ancestor_spec.rb +0 -83
  191. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/assert_all_of_selectors_spec.rb +0 -111
  192. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/assert_current_path_spec.rb +0 -72
  193. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/assert_selector_spec.rb +0 -149
  194. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/assert_text_spec.rb +0 -234
  195. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/assert_title_spec.rb +0 -93
  196. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/attach_file_spec.rb +0 -168
  197. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/body_spec.rb +0 -23
  198. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/check_spec.rb +0 -196
  199. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/choose_spec.rb +0 -101
  200. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/click_button_spec.rb +0 -451
  201. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/click_link_or_button_spec.rb +0 -112
  202. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/click_link_spec.rb +0 -206
  203. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/current_scope_spec.rb +0 -31
  204. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/current_url_spec.rb +0 -116
  205. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/dismiss_confirm_spec.rb +0 -36
  206. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/dismiss_prompt_spec.rb +0 -21
  207. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/element/assert_match_selector_spec.rb +0 -38
  208. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/element/match_css_spec.rb +0 -25
  209. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/element/match_xpath_spec.rb +0 -25
  210. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/element/matches_selector_spec.rb +0 -108
  211. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/evaluate_async_script_spec.rb +0 -23
  212. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/evaluate_script_spec.rb +0 -29
  213. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/execute_script_spec.rb +0 -27
  214. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/fill_in_spec.rb +0 -235
  215. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/find_button_spec.rb +0 -74
  216. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/find_by_id_spec.rb +0 -33
  217. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/find_field_spec.rb +0 -111
  218. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/find_link_spec.rb +0 -52
  219. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/find_spec.rb +0 -441
  220. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/first_spec.rb +0 -155
  221. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/frame/frame_title_spec.rb +0 -23
  222. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/frame/frame_url_spec.rb +0 -23
  223. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/frame/switch_to_frame_spec.rb +0 -104
  224. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/frame/within_frame_spec.rb +0 -87
  225. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/go_back_spec.rb +0 -12
  226. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/go_forward_spec.rb +0 -14
  227. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/has_all_selectors_spec.rb +0 -69
  228. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/has_button_spec.rb +0 -69
  229. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/has_css_spec.rb +0 -241
  230. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/has_current_path_spec.rb +0 -136
  231. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/has_field_spec.rb +0 -310
  232. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/has_link_spec.rb +0 -39
  233. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/has_none_selectors_spec.rb +0 -78
  234. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/has_select_spec.rb +0 -282
  235. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/has_selector_spec.rb +0 -177
  236. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/has_table_spec.rb +0 -32
  237. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/has_text_spec.rb +0 -327
  238. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/has_title_spec.rb +0 -66
  239. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/has_xpath_spec.rb +0 -131
  240. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/headers_spec.rb +0 -8
  241. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/html_spec.rb +0 -40
  242. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/node_spec.rb +0 -613
  243. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/node_wrapper_spec.rb +0 -36
  244. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/refresh_spec.rb +0 -32
  245. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/reset_session_spec.rb +0 -133
  246. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/response_code_spec.rb +0 -8
  247. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/save_and_open_page_spec.rb +0 -21
  248. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/save_and_open_screenshot_spec.rb +0 -43
  249. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/save_page_spec.rb +0 -107
  250. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/save_screenshot_spec.rb +0 -53
  251. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/screenshot_spec.rb +0 -18
  252. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/select_spec.rb +0 -229
  253. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/selectors_spec.rb +0 -67
  254. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/sibling_spec.rb +0 -52
  255. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/source_spec.rb +0 -0
  256. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/text_spec.rb +0 -72
  257. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/title_spec.rb +0 -27
  258. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/uncheck_spec.rb +0 -88
  259. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/unselect_spec.rb +0 -116
  260. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/visit_spec.rb +0 -205
  261. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/window/become_closed_spec.rb +0 -86
  262. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/window/current_window_spec.rb +0 -27
  263. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/window/open_new_window_spec.rb +0 -30
  264. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/window/switch_to_window_spec.rb +0 -128
  265. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/window/window_opened_by_spec.rb +0 -94
  266. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/window/window_spec.rb +0 -184
  267. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/window/windows_spec.rb +0 -29
  268. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/window/within_window_spec.rb +0 -156
  269. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/session/within_spec.rb +0 -174
  270. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/spec_helper.rb +0 -151
  271. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/test_app.rb +0 -198
  272. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/views/buttons.erb +0 -5
  273. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/views/fieldsets.erb +0 -30
  274. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/views/form.erb +0 -633
  275. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/views/frame_child.erb +0 -17
  276. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/views/frame_one.erb +0 -9
  277. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/views/frame_parent.erb +0 -9
  278. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/views/frame_two.erb +0 -9
  279. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/views/header_links.erb +0 -8
  280. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/views/host_links.erb +0 -13
  281. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/views/initial_alert.erb +0 -10
  282. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/views/path.erb +0 -13
  283. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/views/popup_one.erb +0 -9
  284. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/views/popup_two.erb +0 -9
  285. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/views/postback.erb +0 -14
  286. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/views/tables.erb +0 -63
  287. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/views/with_animation.erb +0 -46
  288. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/views/with_base_tag.erb +0 -11
  289. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/views/with_count.erb +0 -8
  290. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/views/with_fixed_header_footer.erb +0 -17
  291. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/views/with_hover.erb +0 -23
  292. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/views/with_html.erb +0 -175
  293. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/views/with_html_entities.erb +0 -2
  294. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/views/with_js.erb +0 -137
  295. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/views/with_scope.erb +0 -42
  296. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/views/with_simple_html.erb +0 -2
  297. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/views/with_slow_unload.erb +0 -17
  298. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/views/with_title.erb +0 -5
  299. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/views/with_unload_alert.erb +0 -14
  300. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/views/with_windows.erb +0 -54
  301. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/spec/views/within_frames.erb +0 -15
  302. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/version.rb +0 -5
  303. data/vendor/bundle/gems/capybara-3.2.1/lib/capybara/window.rb +0 -137
  304. data/vendor/bundle/gems/capybara-3.2.1/spec/basic_node_spec.rb +0 -143
  305. data/vendor/bundle/gems/capybara-3.2.1/spec/capybara_spec.rb +0 -112
  306. data/vendor/bundle/gems/capybara-3.2.1/spec/dsl_spec.rb +0 -264
  307. data/vendor/bundle/gems/capybara-3.2.1/spec/filter_set_spec.rb +0 -46
  308. data/vendor/bundle/gems/capybara-3.2.1/spec/fixtures/capybara.csv +0 -1
  309. data/vendor/bundle/gems/capybara-3.2.1/spec/fixtures/certificate.pem +0 -25
  310. data/vendor/bundle/gems/capybara-3.2.1/spec/fixtures/key.pem +0 -27
  311. data/vendor/bundle/gems/capybara-3.2.1/spec/fixtures/selenium_driver_rspec_failure.rb +0 -13
  312. data/vendor/bundle/gems/capybara-3.2.1/spec/fixtures/selenium_driver_rspec_success.rb +0 -13
  313. data/vendor/bundle/gems/capybara-3.2.1/spec/minitest_spec.rb +0 -131
  314. data/vendor/bundle/gems/capybara-3.2.1/spec/minitest_spec_spec.rb +0 -136
  315. data/vendor/bundle/gems/capybara-3.2.1/spec/per_session_config_spec.rb +0 -68
  316. data/vendor/bundle/gems/capybara-3.2.1/spec/rack_test_spec.rb +0 -231
  317. data/vendor/bundle/gems/capybara-3.2.1/spec/result_spec.rb +0 -194
  318. data/vendor/bundle/gems/capybara-3.2.1/spec/rspec/features_spec.rb +0 -96
  319. data/vendor/bundle/gems/capybara-3.2.1/spec/rspec/scenarios_spec.rb +0 -19
  320. data/vendor/bundle/gems/capybara-3.2.1/spec/rspec/shared_spec_matchers.rb +0 -939
  321. data/vendor/bundle/gems/capybara-3.2.1/spec/rspec/views_spec.rb +0 -14
  322. data/vendor/bundle/gems/capybara-3.2.1/spec/rspec_matchers_spec.rb +0 -62
  323. data/vendor/bundle/gems/capybara-3.2.1/spec/rspec_spec.rb +0 -127
  324. data/vendor/bundle/gems/capybara-3.2.1/spec/selector_spec.rb +0 -283
  325. data/vendor/bundle/gems/capybara-3.2.1/spec/selenium_spec_chrome.rb +0 -67
  326. data/vendor/bundle/gems/capybara-3.2.1/spec/selenium_spec_chrome_remote.rb +0 -56
  327. data/vendor/bundle/gems/capybara-3.2.1/spec/selenium_spec_edge.rb +0 -27
  328. data/vendor/bundle/gems/capybara-3.2.1/spec/selenium_spec_ie.rb +0 -31
  329. data/vendor/bundle/gems/capybara-3.2.1/spec/selenium_spec_marionette.rb +0 -147
  330. data/vendor/bundle/gems/capybara-3.2.1/spec/server_spec.rb +0 -242
  331. data/vendor/bundle/gems/capybara-3.2.1/spec/session_spec.rb +0 -75
  332. data/vendor/bundle/gems/capybara-3.2.1/spec/shared_selenium_session.rb +0 -287
  333. data/vendor/bundle/gems/capybara-3.2.1/spec/spec_helper.rb +0 -11
  334. data/vendor/bundle/gems/childprocess-0.9.0/CHANGELOG.md +0 -49
  335. data/vendor/bundle/gems/childprocess-0.9.0/Gemfile +0 -15
  336. data/vendor/bundle/gems/childprocess-0.9.0/LICENSE +0 -20
  337. data/vendor/bundle/gems/childprocess-0.9.0/README.md +0 -196
  338. data/vendor/bundle/gems/childprocess-0.9.0/Rakefile +0 -61
  339. data/vendor/bundle/gems/childprocess-0.9.0/appveyor.yml +0 -60
  340. data/vendor/bundle/gems/childprocess-0.9.0/childprocess.gemspec +0 -30
  341. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess.rb +0 -205
  342. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/abstract_io.rb +0 -36
  343. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/abstract_process.rb +0 -192
  344. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/errors.rb +0 -26
  345. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/jruby.rb +0 -56
  346. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/jruby/io.rb +0 -16
  347. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/jruby/process.rb +0 -159
  348. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/jruby/pump.rb +0 -53
  349. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/tools/generator.rb +0 -146
  350. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/unix.rb +0 -9
  351. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/unix/fork_exec_process.rb +0 -70
  352. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/unix/io.rb +0 -21
  353. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/unix/lib.rb +0 -186
  354. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/unix/platform/i386-linux.rb +0 -12
  355. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/unix/platform/i386-solaris.rb +0 -11
  356. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/unix/platform/x86_64-linux.rb +0 -12
  357. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/unix/platform/x86_64-macosx.rb +0 -11
  358. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/unix/posix_spawn_process.rb +0 -134
  359. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/unix/process.rb +0 -89
  360. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/version.rb +0 -3
  361. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/windows.rb +0 -33
  362. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/windows/handle.rb +0 -91
  363. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/windows/io.rb +0 -25
  364. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/windows/lib.rb +0 -416
  365. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/windows/process.rb +0 -130
  366. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/windows/process_builder.rb +0 -175
  367. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/windows/structs.rb +0 -149
  368. data/vendor/bundle/gems/childprocess-0.9.0/spec/abstract_io_spec.rb +0 -12
  369. data/vendor/bundle/gems/childprocess-0.9.0/spec/childprocess_spec.rb +0 -422
  370. data/vendor/bundle/gems/childprocess-0.9.0/spec/io_spec.rb +0 -228
  371. data/vendor/bundle/gems/childprocess-0.9.0/spec/jruby_spec.rb +0 -24
  372. data/vendor/bundle/gems/childprocess-0.9.0/spec/pid_behavior.rb +0 -12
  373. data/vendor/bundle/gems/childprocess-0.9.0/spec/platform_detection_spec.rb +0 -86
  374. data/vendor/bundle/gems/childprocess-0.9.0/spec/spec_helper.rb +0 -261
  375. data/vendor/bundle/gems/childprocess-0.9.0/spec/unix_spec.rb +0 -57
  376. data/vendor/bundle/gems/childprocess-0.9.0/spec/windows_spec.rb +0 -23
  377. data/vendor/bundle/gems/concurrent-ruby-1.0.5/CHANGELOG.md +0 -387
  378. data/vendor/bundle/gems/concurrent-ruby-1.0.5/LICENSE.txt +0 -21
  379. data/vendor/bundle/gems/concurrent-ruby-1.0.5/README.md +0 -247
  380. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent.rb +0 -130
  381. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/agent.rb +0 -587
  382. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/array.rb +0 -39
  383. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/async.rb +0 -445
  384. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atom.rb +0 -222
  385. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic/abstract_thread_local_var.rb +0 -66
  386. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic/atomic_boolean.rb +0 -122
  387. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic/atomic_fixnum.rb +0 -139
  388. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic/atomic_reference.rb +0 -51
  389. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic/count_down_latch.rb +0 -100
  390. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic/cyclic_barrier.rb +0 -128
  391. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic/event.rb +0 -109
  392. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic/java_count_down_latch.rb +0 -39
  393. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic/java_thread_local_var.rb +0 -37
  394. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic/mutex_atomic_boolean.rb +0 -60
  395. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic/mutex_atomic_fixnum.rb +0 -75
  396. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic/mutex_count_down_latch.rb +0 -43
  397. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic/mutex_semaphore.rb +0 -115
  398. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic/read_write_lock.rb +0 -253
  399. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic/reentrant_read_write_lock.rb +0 -377
  400. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic/ruby_thread_local_var.rb +0 -161
  401. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic/semaphore.rb +0 -145
  402. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic/thread_local_var.rb +0 -104
  403. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic_reference/concurrent_update_error.rb +0 -8
  404. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic_reference/direct_update.rb +0 -81
  405. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic_reference/jruby+truffle.rb +0 -2
  406. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic_reference/jruby.rb +0 -16
  407. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic_reference/mutex_atomic.rb +0 -61
  408. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic_reference/numeric_cas_wrapper.rb +0 -28
  409. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic_reference/rbx.rb +0 -22
  410. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomic_reference/ruby.rb +0 -32
  411. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/atomics.rb +0 -53
  412. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/collection/copy_on_notify_observer_set.rb +0 -107
  413. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/collection/copy_on_write_observer_set.rb +0 -111
  414. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/collection/java_non_concurrent_priority_queue.rb +0 -84
  415. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/collection/map/atomic_reference_map_backend.rb +0 -927
  416. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/collection/map/mri_map_backend.rb +0 -66
  417. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/collection/map/non_concurrent_map_backend.rb +0 -141
  418. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/collection/map/synchronized_map_backend.rb +0 -82
  419. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/collection/non_concurrent_priority_queue.rb +0 -143
  420. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/collection/ruby_non_concurrent_priority_queue.rb +0 -150
  421. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/concern/deprecation.rb +0 -34
  422. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/concern/dereferenceable.rb +0 -73
  423. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/concern/logging.rb +0 -27
  424. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/concern/obligation.rb +0 -220
  425. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/concern/observable.rb +0 -110
  426. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/configuration.rb +0 -188
  427. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/constants.rb +0 -8
  428. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/dataflow.rb +0 -80
  429. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/delay.rb +0 -197
  430. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/edge.rb +0 -26
  431. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/errors.rb +0 -69
  432. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/exchanger.rb +0 -356
  433. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executor/abstract_executor_service.rb +0 -134
  434. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executor/cached_thread_pool.rb +0 -62
  435. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executor/executor_service.rb +0 -185
  436. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executor/fixed_thread_pool.rb +0 -206
  437. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executor/immediate_executor.rb +0 -66
  438. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executor/indirect_immediate_executor.rb +0 -44
  439. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executor/java_executor_service.rb +0 -100
  440. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executor/java_single_thread_executor.rb +0 -29
  441. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executor/java_thread_pool_executor.rb +0 -120
  442. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executor/ruby_executor_service.rb +0 -78
  443. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executor/ruby_single_thread_executor.rb +0 -22
  444. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executor/ruby_thread_pool_executor.rb +0 -362
  445. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executor/safe_task_executor.rb +0 -35
  446. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executor/serial_executor_service.rb +0 -34
  447. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executor/serialized_execution.rb +0 -107
  448. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executor/serialized_execution_delegator.rb +0 -28
  449. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executor/simple_executor_service.rb +0 -100
  450. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executor/single_thread_executor.rb +0 -56
  451. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executor/thread_pool_executor.rb +0 -87
  452. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executor/timer_set.rb +0 -175
  453. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/executors.rb +0 -20
  454. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/future.rb +0 -138
  455. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/hash.rb +0 -36
  456. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/immutable_struct.rb +0 -93
  457. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/ivar.rb +0 -208
  458. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/lazy_register.rb +0 -81
  459. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/map.rb +0 -240
  460. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/maybe.rb +0 -229
  461. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/mutable_struct.rb +0 -228
  462. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/mvar.rb +0 -242
  463. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/options.rb +0 -42
  464. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/promise.rb +0 -547
  465. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/scheduled_task.rb +0 -318
  466. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/settable_struct.rb +0 -128
  467. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/synchronization.rb +0 -31
  468. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/synchronization/abstract_lockable_object.rb +0 -98
  469. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/synchronization/abstract_object.rb +0 -24
  470. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/synchronization/abstract_struct.rb +0 -157
  471. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/synchronization/condition.rb +0 -58
  472. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/synchronization/jruby_lockable_object.rb +0 -13
  473. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/synchronization/jruby_object.rb +0 -44
  474. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/synchronization/lock.rb +0 -34
  475. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/synchronization/lockable_object.rb +0 -74
  476. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/synchronization/mri_lockable_object.rb +0 -71
  477. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/synchronization/mri_object.rb +0 -43
  478. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/synchronization/object.rb +0 -153
  479. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/synchronization/rbx_lockable_object.rb +0 -65
  480. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/synchronization/rbx_object.rb +0 -48
  481. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/synchronization/truffle_lockable_object.rb +0 -9
  482. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/synchronization/truffle_object.rb +0 -31
  483. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/synchronization/volatile.rb +0 -34
  484. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/thread_safe/synchronized_delegator.rb +0 -50
  485. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/thread_safe/util.rb +0 -16
  486. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/thread_safe/util/adder.rb +0 -74
  487. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/thread_safe/util/array_hash_rbx.rb +0 -30
  488. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/thread_safe/util/cheap_lockable.rb +0 -118
  489. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/thread_safe/util/power_of_two_tuple.rb +0 -38
  490. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/thread_safe/util/striped64.rb +0 -241
  491. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/thread_safe/util/volatile.rb +0 -75
  492. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/thread_safe/util/xor_shift_random.rb +0 -50
  493. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/timer_task.rb +0 -331
  494. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/tuple.rb +0 -86
  495. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/tvar.rb +0 -258
  496. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/utility/at_exit.rb +0 -97
  497. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/utility/engine.rb +0 -56
  498. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/utility/monotonic_time.rb +0 -58
  499. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/utility/native_extension_loader.rb +0 -73
  500. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/utility/native_integer.rb +0 -53
  501. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/utility/processor_counter.rb +0 -160
  502. data/vendor/bundle/gems/concurrent-ruby-1.0.5/lib/concurrent/version.rb +0 -4
  503. data/vendor/bundle/gems/coveralls-0.8.21/CHANGELOG.md +0 -21
  504. data/vendor/bundle/gems/coveralls-0.8.21/Gemfile +0 -41
  505. data/vendor/bundle/gems/coveralls-0.8.21/LICENSE +0 -22
  506. data/vendor/bundle/gems/coveralls-0.8.21/README.md +0 -3
  507. data/vendor/bundle/gems/coveralls-0.8.21/Rakefile +0 -14
  508. data/vendor/bundle/gems/coveralls-0.8.21/bin/coveralls +0 -9
  509. data/vendor/bundle/gems/coveralls-0.8.21/coveralls-ruby.gemspec +0 -29
  510. data/vendor/bundle/gems/coveralls-0.8.21/lib/coveralls.rb +0 -101
  511. data/vendor/bundle/gems/coveralls-0.8.21/lib/coveralls/api.rb +0 -128
  512. data/vendor/bundle/gems/coveralls-0.8.21/lib/coveralls/command.rb +0 -69
  513. data/vendor/bundle/gems/coveralls-0.8.21/lib/coveralls/configuration.rb +0 -230
  514. data/vendor/bundle/gems/coveralls-0.8.21/lib/coveralls/output.rb +0 -114
  515. data/vendor/bundle/gems/coveralls-0.8.21/lib/coveralls/rake/task.rb +0 -19
  516. data/vendor/bundle/gems/coveralls-0.8.21/lib/coveralls/simplecov.rb +0 -101
  517. data/vendor/bundle/gems/coveralls-0.8.21/lib/coveralls/version.rb +0 -3
  518. data/vendor/bundle/gems/coveralls-0.8.21/spec/coveralls/configuration_spec.rb +0 -355
  519. data/vendor/bundle/gems/coveralls-0.8.21/spec/coveralls/coveralls_spec.rb +0 -106
  520. data/vendor/bundle/gems/coveralls-0.8.21/spec/coveralls/fixtures/app/controllers/sample.rb +0 -12
  521. data/vendor/bundle/gems/coveralls-0.8.21/spec/coveralls/fixtures/app/models/airplane.rb +0 -10
  522. data/vendor/bundle/gems/coveralls-0.8.21/spec/coveralls/fixtures/app/models/dog.rb +0 -10
  523. data/vendor/bundle/gems/coveralls-0.8.21/spec/coveralls/fixtures/app/models/house.rb +0 -10
  524. data/vendor/bundle/gems/coveralls-0.8.21/spec/coveralls/fixtures/app/models/robot.rb +0 -10
  525. data/vendor/bundle/gems/coveralls-0.8.21/spec/coveralls/fixtures/app/models/user.rb +0 -10
  526. data/vendor/bundle/gems/coveralls-0.8.21/spec/coveralls/fixtures/app/vendor/vendored_gem.rb +0 -1
  527. data/vendor/bundle/gems/coveralls-0.8.21/spec/coveralls/fixtures/sample.rb +0 -12
  528. data/vendor/bundle/gems/coveralls-0.8.21/spec/coveralls/output_spec.rb +0 -92
  529. data/vendor/bundle/gems/coveralls-0.8.21/spec/coveralls/simplecov_spec.rb +0 -82
  530. data/vendor/bundle/gems/coveralls-0.8.21/spec/spec_helper.rb +0 -82
  531. data/vendor/bundle/gems/diff-lcs-1.3/Code-of-Conduct.md +0 -74
  532. data/vendor/bundle/gems/diff-lcs-1.3/Contributing.md +0 -83
  533. data/vendor/bundle/gems/diff-lcs-1.3/History.md +0 -220
  534. data/vendor/bundle/gems/diff-lcs-1.3/License.md +0 -39
  535. data/vendor/bundle/gems/diff-lcs-1.3/Manifest.txt +0 -37
  536. data/vendor/bundle/gems/diff-lcs-1.3/README.rdoc +0 -84
  537. data/vendor/bundle/gems/diff-lcs-1.3/Rakefile +0 -57
  538. data/vendor/bundle/gems/diff-lcs-1.3/autotest/discover.rb +0 -1
  539. data/vendor/bundle/gems/diff-lcs-1.3/bin/htmldiff +0 -32
  540. data/vendor/bundle/gems/diff-lcs-1.3/bin/ldiff +0 -6
  541. data/vendor/bundle/gems/diff-lcs-1.3/docs/COPYING.txt +0 -339
  542. data/vendor/bundle/gems/diff-lcs-1.3/docs/artistic.txt +0 -127
  543. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff-lcs.rb +0 -3
  544. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs.rb +0 -725
  545. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/array.rb +0 -7
  546. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/block.rb +0 -37
  547. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/callbacks.rb +0 -322
  548. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/change.rb +0 -181
  549. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/htmldiff.rb +0 -149
  550. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/hunk.rb +0 -276
  551. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/internals.rb +0 -307
  552. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/ldiff.rb +0 -167
  553. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/string.rb +0 -5
  554. data/vendor/bundle/gems/diff-lcs-1.3/spec/change_spec.rb +0 -65
  555. data/vendor/bundle/gems/diff-lcs-1.3/spec/diff_spec.rb +0 -47
  556. data/vendor/bundle/gems/diff-lcs-1.3/spec/fixtures/ds1.csv +0 -50
  557. data/vendor/bundle/gems/diff-lcs-1.3/spec/fixtures/ds2.csv +0 -51
  558. data/vendor/bundle/gems/diff-lcs-1.3/spec/hunk_spec.rb +0 -72
  559. data/vendor/bundle/gems/diff-lcs-1.3/spec/issues_spec.rb +0 -49
  560. data/vendor/bundle/gems/diff-lcs-1.3/spec/lcs_spec.rb +0 -56
  561. data/vendor/bundle/gems/diff-lcs-1.3/spec/ldiff_spec.rb +0 -47
  562. data/vendor/bundle/gems/diff-lcs-1.3/spec/patch_spec.rb +0 -422
  563. data/vendor/bundle/gems/diff-lcs-1.3/spec/sdiff_spec.rb +0 -214
  564. data/vendor/bundle/gems/diff-lcs-1.3/spec/spec_helper.rb +0 -321
  565. data/vendor/bundle/gems/diff-lcs-1.3/spec/traverse_balanced_spec.rb +0 -310
  566. data/vendor/bundle/gems/diff-lcs-1.3/spec/traverse_sequences_spec.rb +0 -139
  567. data/vendor/bundle/gems/docile-1.1.5/Gemfile +0 -4
  568. data/vendor/bundle/gems/docile-1.1.5/HISTORY.md +0 -61
  569. data/vendor/bundle/gems/docile-1.1.5/LICENSE +0 -21
  570. data/vendor/bundle/gems/docile-1.1.5/README.md +0 -241
  571. data/vendor/bundle/gems/docile-1.1.5/Rakefile +0 -28
  572. data/vendor/bundle/gems/docile-1.1.5/docile.gemspec +0 -43
  573. data/vendor/bundle/gems/docile-1.1.5/lib/docile.rb +0 -84
  574. data/vendor/bundle/gems/docile-1.1.5/lib/docile/chaining_fallback_context_proxy.rb +0 -20
  575. data/vendor/bundle/gems/docile-1.1.5/lib/docile/execution.rb +0 -35
  576. data/vendor/bundle/gems/docile-1.1.5/lib/docile/fallback_context_proxy.rb +0 -63
  577. data/vendor/bundle/gems/docile-1.1.5/lib/docile/version.rb +0 -4
  578. data/vendor/bundle/gems/docile-1.1.5/on_what.rb +0 -14
  579. data/vendor/bundle/gems/docile-1.1.5/spec/docile_spec.rb +0 -339
  580. data/vendor/bundle/gems/docile-1.1.5/spec/spec_helper.rb +0 -30
  581. data/vendor/bundle/gems/emot-0.0.4/Gemfile +0 -4
  582. data/vendor/bundle/gems/emot-0.0.4/LICENSE.txt +0 -22
  583. data/vendor/bundle/gems/emot-0.0.4/README.md +0 -87
  584. data/vendor/bundle/gems/emot-0.0.4/Rakefile +0 -7
  585. data/vendor/bundle/gems/emot-0.0.4/bin/emot +0 -5
  586. data/vendor/bundle/gems/emot-0.0.4/emot.gemspec +0 -26
  587. data/vendor/bundle/gems/emot-0.0.4/lib/emot.rb +0 -34
  588. data/vendor/bundle/gems/emot-0.0.4/lib/emot/cli.rb +0 -62
  589. data/vendor/bundle/gems/emot-0.0.4/lib/emot/map.rb +0 -894
  590. data/vendor/bundle/gems/emot-0.0.4/lib/emot/symbol_ext.rb +0 -11
  591. data/vendor/bundle/gems/emot-0.0.4/lib/emot/version.rb +0 -3
  592. data/vendor/bundle/gems/emot-0.0.4/spec/cli_spec.rb +0 -56
  593. data/vendor/bundle/gems/emot-0.0.4/spec/emot_spec.rb +0 -50
  594. data/vendor/bundle/gems/emot-0.0.4/spec/spec_helper.rb +0 -2
  595. data/vendor/bundle/gems/faraday-0.15.1/LICENSE.md +0 -20
  596. data/vendor/bundle/gems/faraday-0.15.1/README.md +0 -381
  597. data/vendor/bundle/gems/faraday-0.15.1/lib/faraday.rb +0 -248
  598. data/vendor/bundle/gems/faraday-0.15.1/lib/faraday/adapter.rb +0 -55
  599. data/vendor/bundle/gems/faraday-0.15.1/lib/faraday/adapter/em_http.rb +0 -243
  600. data/vendor/bundle/gems/faraday-0.15.1/lib/faraday/adapter/em_http_ssl_patch.rb +0 -56
  601. data/vendor/bundle/gems/faraday-0.15.1/lib/faraday/adapter/em_synchrony.rb +0 -106
  602. data/vendor/bundle/gems/faraday-0.15.1/lib/faraday/adapter/em_synchrony/parallel_manager.rb +0 -66
  603. data/vendor/bundle/gems/faraday-0.15.1/lib/faraday/adapter/excon.rb +0 -82
  604. data/vendor/bundle/gems/faraday-0.15.1/lib/faraday/adapter/httpclient.rb +0 -128
  605. data/vendor/bundle/gems/faraday-0.15.1/lib/faraday/adapter/net_http.rb +0 -145
  606. data/vendor/bundle/gems/faraday-0.15.1/lib/faraday/adapter/net_http_persistent.rb +0 -66
  607. data/vendor/bundle/gems/faraday-0.15.1/lib/faraday/adapter/patron.rb +0 -95
  608. data/vendor/bundle/gems/faraday-0.15.1/lib/faraday/adapter/rack.rb +0 -58
  609. data/vendor/bundle/gems/faraday-0.15.1/lib/faraday/adapter/test.rb +0 -213
  610. data/vendor/bundle/gems/faraday-0.15.1/lib/faraday/adapter/typhoeus.rb +0 -12
  611. data/vendor/bundle/gems/faraday-0.15.1/lib/faraday/autoload.rb +0 -84
  612. data/vendor/bundle/gems/faraday-0.15.1/lib/faraday/connection.rb +0 -484
  613. data/vendor/bundle/gems/faraday-0.15.1/lib/faraday/error.rb +0 -66
  614. data/vendor/bundle/gems/faraday-0.15.1/lib/faraday/middleware.rb +0 -37
  615. data/vendor/bundle/gems/faraday-0.15.1/lib/faraday/options.rb +0 -373
  616. data/vendor/bundle/gems/faraday-0.15.1/lib/faraday/parameters.rb +0 -197
  617. data/vendor/bundle/gems/faraday-0.15.1/lib/faraday/rack_builder.rb +0 -237
  618. data/vendor/bundle/gems/faraday-0.15.1/lib/faraday/request.rb +0 -94
  619. data/vendor/bundle/gems/faraday-0.15.1/lib/faraday/request/authorization.rb +0 -41
  620. data/vendor/bundle/gems/faraday-0.15.1/lib/faraday/request/basic_authentication.rb +0 -13
  621. data/vendor/bundle/gems/faraday-0.15.1/lib/faraday/request/instrumentation.rb +0 -36
  622. data/vendor/bundle/gems/faraday-0.15.1/lib/faraday/request/multipart.rb +0 -68
  623. data/vendor/bundle/gems/faraday-0.15.1/lib/faraday/request/retry.rb +0 -211
  624. data/vendor/bundle/gems/faraday-0.15.1/lib/faraday/request/token_authentication.rb +0 -15
  625. data/vendor/bundle/gems/faraday-0.15.1/lib/faraday/request/url_encoded.rb +0 -36
  626. data/vendor/bundle/gems/faraday-0.15.1/lib/faraday/response.rb +0 -97
  627. data/vendor/bundle/gems/faraday-0.15.1/lib/faraday/response/logger.rb +0 -80
  628. data/vendor/bundle/gems/faraday-0.15.1/lib/faraday/response/raise_error.rb +0 -21
  629. data/vendor/bundle/gems/faraday-0.15.1/lib/faraday/upload_io.rb +0 -67
  630. data/vendor/bundle/gems/faraday-0.15.1/lib/faraday/utils.rb +0 -326
  631. data/vendor/bundle/gems/fastimage-2.1.3/MIT-LICENSE +0 -20
  632. data/vendor/bundle/gems/fastimage-2.1.3/README.textile +0 -162
  633. data/vendor/bundle/gems/fastimage-2.1.3/lib/fastimage.rb +0 -770
  634. data/vendor/bundle/gems/ffi-1.9.23/COPYING +0 -49
  635. data/vendor/bundle/gems/ffi-1.9.23/Gemfile +0 -15
  636. data/vendor/bundle/gems/ffi-1.9.23/LICENSE +0 -24
  637. data/vendor/bundle/gems/ffi-1.9.23/LICENSE.SPECS +0 -22
  638. data/vendor/bundle/gems/ffi-1.9.23/README.md +0 -110
  639. data/vendor/bundle/gems/ffi-1.9.23/Rakefile +0 -268
  640. data/vendor/bundle/gems/ffi-1.9.23/appveyor.yml +0 -22
  641. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/AbstractMemory.c +0 -1109
  642. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/AbstractMemory.h +0 -175
  643. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/AbstractMemory.o +0 -0
  644. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/ArrayType.c +0 -162
  645. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/ArrayType.h +0 -59
  646. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/ArrayType.o +0 -0
  647. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/Buffer.c +0 -365
  648. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/Buffer.o +0 -0
  649. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/Call.c +0 -496
  650. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/Call.h +0 -101
  651. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/Call.o +0 -0
  652. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/Closure.c +0 -54
  653. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/Closure.h +0 -47
  654. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/Closure.o +0 -0
  655. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/DataConverter.c +0 -91
  656. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/DataConverter.o +0 -0
  657. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/DynamicLibrary.c +0 -339
  658. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/DynamicLibrary.h +0 -98
  659. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/DynamicLibrary.o +0 -0
  660. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/Function.c +0 -989
  661. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/Function.h +0 -86
  662. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/Function.o +0 -0
  663. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/FunctionInfo.c +0 -267
  664. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/FunctionInfo.o +0 -0
  665. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/LastError.c +0 -184
  666. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/LastError.h +0 -47
  667. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/LastError.o +0 -0
  668. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/LongDouble.c +0 -63
  669. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/LongDouble.h +0 -51
  670. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/LongDouble.o +0 -0
  671. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/Makefile +0 -263
  672. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/MappedType.c +0 -168
  673. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/MappedType.h +0 -59
  674. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/MappedType.o +0 -0
  675. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/MemoryPointer.c +0 -197
  676. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/MemoryPointer.h +0 -53
  677. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/MemoryPointer.o +0 -0
  678. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/MethodHandle.c +0 -123
  679. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/MethodHandle.h +0 -55
  680. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/MethodHandle.o +0 -0
  681. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/Platform.c +0 -129
  682. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/Platform.h +0 -45
  683. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/Platform.o +0 -0
  684. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/Pointer.c +0 -508
  685. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/Pointer.h +0 -63
  686. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/Pointer.o +0 -0
  687. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/Struct.c +0 -829
  688. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/Struct.h +0 -106
  689. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/Struct.o +0 -0
  690. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/StructByReference.c +0 -190
  691. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/StructByReference.h +0 -50
  692. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/StructByReference.o +0 -0
  693. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/StructByValue.c +0 -150
  694. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/StructByValue.h +0 -55
  695. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/StructByValue.o +0 -0
  696. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/StructLayout.c +0 -698
  697. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/StructLayout.o +0 -0
  698. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/Thread.c +0 -352
  699. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/Thread.h +0 -95
  700. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/Thread.o +0 -0
  701. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/Type.c +0 -397
  702. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/Type.h +0 -62
  703. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/Type.o +0 -0
  704. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/Types.c +0 -139
  705. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/Types.h +0 -89
  706. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/Types.o +0 -0
  707. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/Variadic.c +0 -304
  708. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/Variadic.o +0 -0
  709. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/compat.h +0 -78
  710. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/extconf.h +0 -11
  711. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/extconf.rb +0 -71
  712. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/ffi.c +0 -98
  713. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/ffi.o +0 -0
  714. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/ffi_c.so +0 -0
  715. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi.bsd.mk +0 -40
  716. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi.darwin.mk +0 -105
  717. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi.gnu.mk +0 -32
  718. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi.mk +0 -18
  719. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi.vc.mk +0 -26
  720. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi.vc64.mk +0 -26
  721. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/ChangeLog.libffi +0 -584
  722. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/ChangeLog.libffi-3.1 +0 -6000
  723. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/ChangeLog.libgcj +0 -40
  724. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/ChangeLog.v1 +0 -764
  725. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/LICENSE +0 -21
  726. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/Makefile.am +0 -207
  727. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/Makefile.in +0 -1809
  728. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/README +0 -454
  729. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/acinclude.m4 +0 -479
  730. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/autogen.sh +0 -2
  731. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/config.guess +0 -1466
  732. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/config.sub +0 -1836
  733. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/configure +0 -21978
  734. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/configure.ac +0 -388
  735. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/configure.host +0 -284
  736. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/doc/Makefile.am +0 -3
  737. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/doc/Makefile.in +0 -811
  738. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/doc/libffi.texi +0 -985
  739. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/doc/version.texi +0 -4
  740. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/fficonfig.h.in +0 -210
  741. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/generate-darwin-source-and-headers.py +0 -203
  742. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/include/Makefile.am +0 -9
  743. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/include/Makefile.in +0 -604
  744. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/include/ffi.h.in +0 -489
  745. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/include/ffi_cfi.h +0 -55
  746. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/include/ffi_common.h +0 -147
  747. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/install-sh +0 -508
  748. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/libffi.map.in +0 -80
  749. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/libffi.pc.in +0 -11
  750. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/libffi.xcodeproj/project.pbxproj +0 -1043
  751. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/libtool-ldflags +0 -106
  752. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/libtool-version +0 -29
  753. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/ltmain.sh +0 -11156
  754. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/m4/asmcfi.m4 +0 -13
  755. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/m4/ax_append_flag.m4 +0 -69
  756. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/m4/ax_cc_maxopt.m4 +0 -181
  757. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/m4/ax_cflags_warn_all.m4 +0 -122
  758. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/m4/ax_check_compile_flag.m4 +0 -72
  759. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/m4/ax_compiler_vendor.m4 +0 -84
  760. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/m4/ax_configure_args.m4 +0 -70
  761. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/m4/ax_enable_builddir.m4 +0 -301
  762. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/m4/ax_gcc_archflag.m4 +0 -225
  763. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/m4/ax_gcc_x86_cpuid.m4 +0 -79
  764. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/man/Makefile.am +0 -8
  765. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/man/Makefile.in +0 -558
  766. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/man/ffi.3 +0 -41
  767. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/man/ffi_call.3 +0 -103
  768. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/man/ffi_prep_cif.3 +0 -68
  769. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/man/ffi_prep_cif_var.3 +0 -73
  770. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/missing +0 -215
  771. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/msvcc.sh +0 -260
  772. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/aarch64/ffi.c +0 -964
  773. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/aarch64/ffitarget.h +0 -81
  774. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/aarch64/internal.h +0 -67
  775. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/aarch64/sysv.S +0 -438
  776. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/alpha/ffi.c +0 -521
  777. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/alpha/ffitarget.h +0 -57
  778. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/alpha/internal.h +0 -23
  779. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/alpha/osf.S +0 -282
  780. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/arc/arcompact.S +0 -135
  781. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/arc/ffi.c +0 -266
  782. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/arc/ffitarget.h +0 -53
  783. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/arm/ffi.c +0 -819
  784. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/arm/ffitarget.h +0 -82
  785. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/arm/internal.h +0 -7
  786. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/arm/sysv.S +0 -383
  787. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/avr32/ffi.c +0 -423
  788. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/avr32/ffitarget.h +0 -55
  789. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/avr32/sysv.S +0 -208
  790. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/bfin/ffi.c +0 -196
  791. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/bfin/ffitarget.h +0 -43
  792. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/bfin/sysv.S +0 -179
  793. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/closures.c +0 -936
  794. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/cris/ffi.c +0 -386
  795. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/cris/ffitarget.h +0 -56
  796. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/cris/sysv.S +0 -215
  797. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/debug.c +0 -64
  798. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/dlmalloc.c +0 -5166
  799. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/frv/eabi.S +0 -128
  800. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/frv/ffi.c +0 -292
  801. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/frv/ffitarget.h +0 -62
  802. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/ia64/ffi.c +0 -586
  803. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/ia64/ffitarget.h +0 -55
  804. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/ia64/ia64_flags.h +0 -40
  805. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/ia64/unix.S +0 -562
  806. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/java_raw_api.c +0 -374
  807. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/m32r/ffi.c +0 -232
  808. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/m32r/ffitarget.h +0 -53
  809. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/m32r/sysv.S +0 -121
  810. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/m68k/ffi.c +0 -362
  811. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/m68k/ffitarget.h +0 -54
  812. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/m68k/sysv.S +0 -357
  813. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/m88k/ffi.c +0 -400
  814. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/m88k/ffitarget.h +0 -49
  815. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/m88k/obsd.S +0 -209
  816. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/metag/ffi.c +0 -330
  817. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/metag/ffitarget.h +0 -53
  818. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/metag/sysv.S +0 -311
  819. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/microblaze/ffi.c +0 -321
  820. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/microblaze/ffitarget.h +0 -53
  821. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/microblaze/sysv.S +0 -302
  822. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/mips/ffi.c +0 -1113
  823. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/mips/ffitarget.h +0 -249
  824. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/mips/n32.S +0 -663
  825. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/mips/o32.S +0 -502
  826. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/moxie/eabi.S +0 -101
  827. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/moxie/ffi.c +0 -272
  828. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/moxie/ffitarget.h +0 -52
  829. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/nios2/ffi.c +0 -304
  830. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/nios2/ffitarget.h +0 -52
  831. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/nios2/sysv.S +0 -136
  832. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/or1k/ffi.c +0 -328
  833. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/or1k/ffitarget.h +0 -58
  834. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/or1k/sysv.S +0 -107
  835. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/pa/ffi.c +0 -719
  836. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/pa/ffitarget.h +0 -85
  837. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/pa/hpux32.S +0 -368
  838. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/pa/linux.S +0 -357
  839. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/powerpc/aix.S +0 -566
  840. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/powerpc/aix_closure.S +0 -694
  841. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/powerpc/asm.h +0 -125
  842. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/powerpc/darwin.S +0 -378
  843. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/powerpc/darwin_closure.S +0 -571
  844. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/powerpc/ffi.c +0 -173
  845. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/powerpc/ffi_darwin.c +0 -1440
  846. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/powerpc/ffi_linux64.c +0 -945
  847. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/powerpc/ffi_powerpc.h +0 -94
  848. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/powerpc/ffi_sysv.c +0 -923
  849. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/powerpc/ffitarget.h +0 -198
  850. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/powerpc/linux64.S +0 -228
  851. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/powerpc/linux64_closure.S +0 -488
  852. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/powerpc/ppc_closure.S +0 -397
  853. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/powerpc/sysv.S +0 -175
  854. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/prep_cif.c +0 -261
  855. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/raw_api.c +0 -267
  856. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/s390/ffi.c +0 -756
  857. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/s390/ffitarget.h +0 -70
  858. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/s390/internal.h +0 -11
  859. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/s390/sysv.S +0 -325
  860. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/sh/ffi.c +0 -717
  861. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/sh/ffitarget.h +0 -54
  862. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/sh/sysv.S +0 -850
  863. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/sh64/ffi.c +0 -469
  864. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/sh64/ffitarget.h +0 -58
  865. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/sh64/sysv.S +0 -539
  866. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/sparc/ffi.c +0 -468
  867. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/sparc/ffi64.c +0 -608
  868. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/sparc/ffitarget.h +0 -81
  869. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/sparc/internal.h +0 -26
  870. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/sparc/v8.S +0 -443
  871. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/sparc/v9.S +0 -440
  872. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/tile/ffi.c +0 -355
  873. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/tile/ffitarget.h +0 -65
  874. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/tile/tile.S +0 -360
  875. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/types.c +0 -106
  876. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/vax/elfbsd.S +0 -195
  877. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/vax/ffi.c +0 -276
  878. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/vax/ffitarget.h +0 -49
  879. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/x86/asmnames.h +0 -30
  880. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/x86/ffi.c +0 -735
  881. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/x86/ffi64.c +0 -878
  882. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/x86/ffitarget.h +0 -141
  883. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/x86/ffiw64.c +0 -287
  884. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/x86/internal.h +0 -29
  885. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/x86/internal64.h +0 -22
  886. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/x86/sysv.S +0 -1043
  887. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/x86/unix64.S +0 -525
  888. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/x86/win64.S +0 -232
  889. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/x86/win64_intel.S +0 -237
  890. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/xtensa/ffi.c +0 -298
  891. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/xtensa/ffitarget.h +0 -53
  892. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/src/xtensa/sysv.S +0 -253
  893. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/stamp-h.in +0 -1
  894. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/Makefile.am +0 -86
  895. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/Makefile.in +0 -608
  896. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/config/default.exp +0 -1
  897. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/lib/libffi.exp +0 -446
  898. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/lib/target-libpath.exp +0 -283
  899. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/lib/wrapper.exp +0 -45
  900. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/align_mixed.c +0 -46
  901. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/call.exp +0 -30
  902. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn0.c +0 -89
  903. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn1.c +0 -81
  904. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn2.c +0 -81
  905. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn3.c +0 -82
  906. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn4.c +0 -89
  907. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn5.c +0 -92
  908. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn6.c +0 -90
  909. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/closure_loc_fn0.c +0 -95
  910. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/closure_simple.c +0 -55
  911. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_12byte.c +0 -94
  912. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_16byte.c +0 -95
  913. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_18byte.c +0 -96
  914. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_19byte.c +0 -102
  915. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_1_1byte.c +0 -89
  916. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_20byte.c +0 -91
  917. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_20byte1.c +0 -93
  918. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_24byte.c +0 -113
  919. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_2byte.c +0 -90
  920. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_3_1byte.c +0 -95
  921. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_3byte1.c +0 -90
  922. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_3byte2.c +0 -90
  923. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_3float.c +0 -95
  924. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_4_1byte.c +0 -98
  925. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_4byte.c +0 -90
  926. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_5_1_byte.c +0 -109
  927. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_5byte.c +0 -98
  928. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_64byte.c +0 -124
  929. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_6_1_byte.c +0 -113
  930. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_6byte.c +0 -99
  931. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_7_1_byte.c +0 -117
  932. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_7byte.c +0 -97
  933. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_8byte.c +0 -88
  934. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_9byte1.c +0 -90
  935. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_9byte2.c +0 -91
  936. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_double.c +0 -93
  937. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_float.c +0 -91
  938. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_longdouble.c +0 -92
  939. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_longdouble_split.c +0 -132
  940. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_longdouble_split2.c +0 -115
  941. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_pointer.c +0 -95
  942. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_sint16.c +0 -91
  943. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_sint32.c +0 -91
  944. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_sint64.c +0 -92
  945. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_uint16.c +0 -91
  946. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_uint32.c +0 -91
  947. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_uint64.c +0 -93
  948. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_dbls_struct.c +0 -66
  949. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_double.c +0 -43
  950. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_double_va.c +0 -61
  951. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_float.c +0 -42
  952. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_longdouble.c +0 -105
  953. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_longdouble_va.c +0 -61
  954. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_many_mixed_args.c +0 -70
  955. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_many_mixed_float_double.c +0 -55
  956. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_schar.c +0 -74
  957. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_sshort.c +0 -74
  958. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_sshortchar.c +0 -86
  959. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_uchar.c +0 -91
  960. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_ushort.c +0 -74
  961. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_ushortchar.c +0 -86
  962. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_pointer.c +0 -74
  963. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_pointer_stack.c +0 -142
  964. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_schar.c +0 -44
  965. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_sint.c +0 -42
  966. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_sshort.c +0 -42
  967. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_struct_va1.c +0 -114
  968. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_uchar.c +0 -42
  969. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_uchar_va.c +0 -44
  970. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_uint.c +0 -43
  971. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_uint_va.c +0 -45
  972. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_ulong_va.c +0 -45
  973. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_ulonglong.c +0 -47
  974. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_ushort.c +0 -43
  975. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/cls_ushort_va.c +0 -44
  976. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/err_bad_abi.c +0 -36
  977. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/err_bad_typedef.c +0 -26
  978. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/ffitest.h +0 -136
  979. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/float.c +0 -59
  980. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/float1.c +0 -60
  981. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/float2.c +0 -60
  982. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/float3.c +0 -74
  983. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/float4.c +0 -62
  984. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/float_va.c +0 -107
  985. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/huge_struct.c +0 -341
  986. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/many.c +0 -59
  987. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/many2.c +0 -57
  988. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/many_double.c +0 -70
  989. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/many_mixed.c +0 -78
  990. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/negint.c +0 -52
  991. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct.c +0 -152
  992. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct1.c +0 -161
  993. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct10.c +0 -133
  994. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct11.c +0 -121
  995. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct2.c +0 -110
  996. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct3.c +0 -111
  997. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct4.c +0 -111
  998. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct5.c +0 -112
  999. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct6.c +0 -131
  1000. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct7.c +0 -111
  1001. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct8.c +0 -131
  1002. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct9.c +0 -131
  1003. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/offsets.c +0 -46
  1004. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/pr1172638.c +0 -127
  1005. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/problem1.c +0 -90
  1006. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/promotion.c +0 -59
  1007. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/pyobjc-tc.c +0 -114
  1008. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/return_dbl.c +0 -36
  1009. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/return_dbl1.c +0 -43
  1010. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/return_dbl2.c +0 -42
  1011. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/return_fl.c +0 -35
  1012. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/return_fl1.c +0 -36
  1013. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/return_fl2.c +0 -49
  1014. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/return_fl3.c +0 -42
  1015. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/return_ldl.c +0 -34
  1016. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/return_ll.c +0 -41
  1017. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/return_ll1.c +0 -43
  1018. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/return_sc.c +0 -36
  1019. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/return_sl.c +0 -38
  1020. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/return_uc.c +0 -38
  1021. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/return_ul.c +0 -38
  1022. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/stret_large.c +0 -145
  1023. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/stret_large2.c +0 -148
  1024. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/stret_medium.c +0 -124
  1025. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/stret_medium2.c +0 -125
  1026. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/strlen.c +0 -44
  1027. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/strlen2.c +0 -49
  1028. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/strlen3.c +0 -49
  1029. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/strlen4.c +0 -55
  1030. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/struct1.c +0 -67
  1031. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/struct2.c +0 -67
  1032. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/struct3.c +0 -60
  1033. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/struct4.c +0 -64
  1034. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/struct5.c +0 -66
  1035. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/struct6.c +0 -64
  1036. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/struct7.c +0 -74
  1037. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/struct8.c +0 -81
  1038. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/struct9.c +0 -68
  1039. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/testclosure.c +0 -70
  1040. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/uninitialized.c +0 -61
  1041. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/unwindtest.cc +0 -117
  1042. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/unwindtest_ffi_call.cc +0 -54
  1043. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/va_1.c +0 -196
  1044. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/va_struct1.c +0 -121
  1045. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/va_struct2.c +0 -123
  1046. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.call/va_struct3.c +0 -125
  1047. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/cls_align_complex.inc +0 -91
  1048. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/cls_align_complex_double.c +0 -10
  1049. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/cls_align_complex_float.c +0 -10
  1050. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/cls_align_complex_longdouble.c +0 -10
  1051. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex.inc +0 -42
  1052. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_double.c +0 -10
  1053. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_float.c +0 -10
  1054. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_longdouble.c +0 -10
  1055. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_struct.inc +0 -71
  1056. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_struct_double.c +0 -10
  1057. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_struct_float.c +0 -10
  1058. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_struct_longdouble.c +0 -10
  1059. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_va.inc +0 -80
  1060. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_va_double.c +0 -10
  1061. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_va_float.c +0 -16
  1062. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_va_longdouble.c +0 -10
  1063. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/complex.exp +0 -36
  1064. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/complex.inc +0 -51
  1065. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/complex_defs_double.inc +0 -7
  1066. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/complex_defs_float.inc +0 -7
  1067. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/complex_defs_longdouble.inc +0 -7
  1068. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/complex_double.c +0 -10
  1069. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/complex_float.c +0 -10
  1070. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/complex_int.c +0 -86
  1071. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/complex_longdouble.c +0 -10
  1072. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/ffitest.h +0 -1
  1073. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/many_complex.inc +0 -78
  1074. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/many_complex_double.c +0 -10
  1075. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/many_complex_float.c +0 -10
  1076. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/many_complex_longdouble.c +0 -10
  1077. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex.inc +0 -37
  1078. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex1.inc +0 -41
  1079. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex1_double.c +0 -10
  1080. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex1_float.c +0 -10
  1081. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex1_longdouble.c +0 -10
  1082. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex2.inc +0 -44
  1083. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex2_double.c +0 -10
  1084. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex2_float.c +0 -10
  1085. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex2_longdouble.c +0 -10
  1086. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex_double.c +0 -10
  1087. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex_float.c +0 -10
  1088. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex_longdouble.c +0 -10
  1089. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.go/aa-direct.c +0 -34
  1090. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.go/closure1.c +0 -28
  1091. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.go/ffitest.h +0 -1
  1092. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.go/go.exp +0 -36
  1093. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/libffi/testsuite/libffi.go/static-chain.h +0 -19
  1094. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/rbffi.h +0 -57
  1095. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/rbffi_endian.h +0 -59
  1096. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/win32/stdbool.h +0 -8
  1097. data/vendor/bundle/gems/ffi-1.9.23/ext/ffi_c/win32/stdint.h +0 -201
  1098. data/vendor/bundle/gems/ffi-1.9.23/ffi.gemspec +0 -36
  1099. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi.rb +0 -20
  1100. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/autopointer.rb +0 -203
  1101. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/buffer.rb +0 -4
  1102. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/callback.rb +0 -4
  1103. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/enum.rb +0 -296
  1104. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/errno.rb +0 -43
  1105. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/ffi.rb +0 -44
  1106. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/io.rb +0 -62
  1107. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/library.rb +0 -590
  1108. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/managedstruct.rb +0 -84
  1109. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/memorypointer.rb +0 -1
  1110. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/platform.rb +0 -164
  1111. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/platform/aarch64-linux/types.conf +0 -104
  1112. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/platform/arm-linux/types.conf +0 -104
  1113. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/platform/i386-cygwin/types.conf +0 -3
  1114. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/platform/i386-darwin/types.conf +0 -100
  1115. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/platform/i386-freebsd/types.conf +0 -152
  1116. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/platform/i386-gnu/types.conf +0 -107
  1117. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/platform/i386-linux/types.conf +0 -103
  1118. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/platform/i386-netbsd/types.conf +0 -126
  1119. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/platform/i386-openbsd/types.conf +0 -128
  1120. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/platform/i386-solaris/types.conf +0 -122
  1121. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/platform/i386-windows/types.conf +0 -105
  1122. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/platform/ia64-linux/types.conf +0 -104
  1123. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/platform/mips-linux/types.conf +0 -102
  1124. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/platform/mips64el-linux/types.conf +0 -104
  1125. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/platform/mipsel-linux/types.conf +0 -102
  1126. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/platform/powerpc-aix/types.conf +0 -180
  1127. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/platform/powerpc-darwin/types.conf +0 -100
  1128. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/platform/powerpc-linux/types.conf +0 -100
  1129. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/platform/powerpc64-linux/types.conf +0 -104
  1130. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/platform/s390-linux/types.conf +0 -102
  1131. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/platform/s390x-linux/types.conf +0 -102
  1132. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/platform/sparc-linux/types.conf +0 -102
  1133. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/platform/sparc-solaris/types.conf +0 -128
  1134. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/platform/sparc64-linux/types.conf +0 -102
  1135. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/platform/sparcv9-solaris/types.conf +0 -128
  1136. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/platform/x86_64-cygwin/types.conf +0 -3
  1137. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/platform/x86_64-darwin/types.conf +0 -126
  1138. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/platform/x86_64-freebsd/types.conf +0 -128
  1139. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/platform/x86_64-linux/types.conf +0 -102
  1140. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/platform/x86_64-netbsd/types.conf +0 -128
  1141. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/platform/x86_64-openbsd/types.conf +0 -134
  1142. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/platform/x86_64-solaris/types.conf +0 -122
  1143. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/platform/x86_64-windows/types.conf +0 -120
  1144. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/pointer.rb +0 -161
  1145. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/struct.rb +0 -371
  1146. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/struct_layout_builder.rb +0 -227
  1147. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/tools/const_generator.rb +0 -229
  1148. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/tools/generator.rb +0 -60
  1149. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/tools/generator_task.rb +0 -36
  1150. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/tools/struct_generator.rb +0 -194
  1151. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/tools/types_generator.rb +0 -134
  1152. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/types.rb +0 -194
  1153. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/union.rb +0 -43
  1154. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/variadic.rb +0 -78
  1155. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi/version.rb +0 -3
  1156. data/vendor/bundle/gems/ffi-1.9.23/lib/ffi_c.so +0 -0
  1157. data/vendor/bundle/gems/ffi-1.9.23/samples/getlogin.rb +0 -8
  1158. data/vendor/bundle/gems/ffi-1.9.23/samples/getpid.rb +0 -8
  1159. data/vendor/bundle/gems/ffi-1.9.23/samples/gettimeofday.rb +0 -18
  1160. data/vendor/bundle/gems/ffi-1.9.23/samples/hello.rb +0 -7
  1161. data/vendor/bundle/gems/ffi-1.9.23/samples/inotify.rb +0 -60
  1162. data/vendor/bundle/gems/ffi-1.9.23/samples/pty.rb +0 -76
  1163. data/vendor/bundle/gems/ffi-1.9.23/samples/qsort.rb +0 -21
  1164. data/vendor/bundle/gems/ffi-1.9.23/samples/sample_helper.rb +0 -6
  1165. data/vendor/bundle/gems/hikidoc-0.1.0/COPYING +0 -28
  1166. data/vendor/bundle/gems/hikidoc-0.1.0/Gemfile +0 -4
  1167. data/vendor/bundle/gems/hikidoc-0.1.0/NEWS +0 -30
  1168. data/vendor/bundle/gems/hikidoc-0.1.0/NEWS.ja +0 -30
  1169. data/vendor/bundle/gems/hikidoc-0.1.0/README +0 -87
  1170. data/vendor/bundle/gems/hikidoc-0.1.0/README.ja +0 -84
  1171. data/vendor/bundle/gems/hikidoc-0.1.0/Rakefile +0 -8
  1172. data/vendor/bundle/gems/hikidoc-0.1.0/TextFormattingRules +0 -320
  1173. data/vendor/bundle/gems/hikidoc-0.1.0/TextFormattingRules.ja +0 -318
  1174. data/vendor/bundle/gems/hikidoc-0.1.0/bin/hikidoc +0 -66
  1175. data/vendor/bundle/gems/hikidoc-0.1.0/hikidoc.gemspec +0 -23
  1176. data/vendor/bundle/gems/hikidoc-0.1.0/lib/hikidoc.rb +0 -912
  1177. data/vendor/bundle/gems/hikidoc-0.1.0/test/hikidoc_test.rb +0 -506
  1178. data/vendor/bundle/gems/jasmine-2.99.0/Gemfile +0 -30
  1179. data/vendor/bundle/gems/jasmine-2.99.0/HOW_TO_TEST.markdown +0 -10
  1180. data/vendor/bundle/gems/jasmine-2.99.0/MIT.LICENSE +0 -20
  1181. data/vendor/bundle/gems/jasmine-2.99.0/README.markdown +0 -96
  1182. data/vendor/bundle/gems/jasmine-2.99.0/RELEASE.markdown +0 -15
  1183. data/vendor/bundle/gems/jasmine-2.99.0/Rakefile +0 -49
  1184. data/vendor/bundle/gems/jasmine-2.99.0/bin/jasmine +0 -6
  1185. data/vendor/bundle/gems/jasmine-2.99.0/jasmine.gemspec +0 -48
  1186. data/vendor/bundle/gems/jasmine-2.99.0/lib/generators/jasmine/examples/USAGE +0 -11
  1187. data/vendor/bundle/gems/jasmine-2.99.0/lib/generators/jasmine/examples/examples_generator.rb +0 -19
  1188. data/vendor/bundle/gems/jasmine-2.99.0/lib/generators/jasmine/examples/templates/app/assets/javascripts/jasmine_examples/Player.js +0 -22
  1189. data/vendor/bundle/gems/jasmine-2.99.0/lib/generators/jasmine/examples/templates/app/assets/javascripts/jasmine_examples/Song.js +0 -7
  1190. data/vendor/bundle/gems/jasmine-2.99.0/lib/generators/jasmine/examples/templates/spec/javascripts/helpers/jasmine_examples/SpecHelper.js +0 -15
  1191. data/vendor/bundle/gems/jasmine-2.99.0/lib/generators/jasmine/examples/templates/spec/javascripts/jasmine_examples/PlayerSpec.js +0 -58
  1192. data/vendor/bundle/gems/jasmine-2.99.0/lib/generators/jasmine/install/USAGE +0 -9
  1193. data/vendor/bundle/gems/jasmine-2.99.0/lib/generators/jasmine/install/install_generator.rb +0 -18
  1194. data/vendor/bundle/gems/jasmine-2.99.0/lib/generators/jasmine/install/templates/spec/javascripts/support/jasmine.yml +0 -145
  1195. data/vendor/bundle/gems/jasmine-2.99.0/lib/generators/jasmine/install/templates/spec/javascripts/support/jasmine_helper.rb +0 -16
  1196. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine.rb +0 -32
  1197. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/application.rb +0 -21
  1198. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/asset_expander.rb +0 -66
  1199. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/asset_pipeline_mapper.rb +0 -17
  1200. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/base.rb +0 -54
  1201. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/ci_runner.rb +0 -50
  1202. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/command_line_install.txt +0 -13
  1203. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/command_line_tool.rb +0 -125
  1204. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/config.rb +0 -135
  1205. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/configuration.rb +0 -114
  1206. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/core_configuration.rb +0 -31
  1207. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/dependencies.rb +0 -28
  1208. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/formatters/console.rb +0 -118
  1209. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/formatters/exit_code.rb +0 -23
  1210. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/formatters/multi.rb +0 -17
  1211. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/page.rb +0 -11
  1212. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/path_expander.rb +0 -22
  1213. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/path_mapper.rb +0 -38
  1214. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/railtie.rb +0 -22
  1215. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/result.rb +0 -58
  1216. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/ruby_versions.rb +0 -11
  1217. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/run.html.erb +0 -20
  1218. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/runners/phantom_boot.js +0 -15
  1219. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/runners/phantom_jasmine_run.js +0 -50
  1220. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/runners/phantom_js.rb +0 -74
  1221. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/server.rb +0 -17
  1222. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/tasks/jasmine.rake +0 -71
  1223. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/tasks/jasmine_rails.rake +0 -1
  1224. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/version.rb +0 -3
  1225. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/yaml_config_parser.rb +0 -95
  1226. data/vendor/bundle/gems/jasmine-2.99.0/lib/rack/jasmine/cache_control.rb +0 -20
  1227. data/vendor/bundle/gems/jasmine-2.99.0/lib/rack/jasmine/focused_suite.rb +0 -17
  1228. data/vendor/bundle/gems/jasmine-2.99.0/lib/rack/jasmine/runner.rb +0 -27
  1229. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v1.2.1.md +0 -6
  1230. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v1.3.2.md +0 -32
  1231. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.0.0.md +0 -78
  1232. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.0.1.md +0 -31
  1233. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.0.2.md +0 -17
  1234. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.0.3.md +0 -31
  1235. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.1.0.md +0 -11
  1236. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.2.0.md +0 -31
  1237. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.3.0.md +0 -27
  1238. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.3.1.md +0 -14
  1239. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.4.0.md +0 -20
  1240. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.5.0.md +0 -35
  1241. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.5.1.md +0 -12
  1242. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.5.2.md +0 -22
  1243. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.6.0.md +0 -17
  1244. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.6.1.md +0 -11
  1245. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.7.0.md +0 -28
  1246. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.8.0.md +0 -21
  1247. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.9.0.md +0 -22
  1248. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.99.md +0 -13
  1249. data/vendor/bundle/gems/jasmine-2.99.0/spec/application_integration_spec.rb +0 -15
  1250. data/vendor/bundle/gems/jasmine-2.99.0/spec/application_spec.rb +0 -55
  1251. data/vendor/bundle/gems/jasmine-2.99.0/spec/base_spec.rb +0 -35
  1252. data/vendor/bundle/gems/jasmine-2.99.0/spec/ci_runner_spec.rb +0 -137
  1253. data/vendor/bundle/gems/jasmine-2.99.0/spec/configuration_spec.rb +0 -219
  1254. data/vendor/bundle/gems/jasmine-2.99.0/spec/fixture/Rakefile +0 -4
  1255. data/vendor/bundle/gems/jasmine-2.99.0/spec/fixture/afterall_spec.js +0 -8
  1256. data/vendor/bundle/gems/jasmine-2.99.0/spec/fixture/coffee_spec.coffee +0 -3
  1257. data/vendor/bundle/gems/jasmine-2.99.0/spec/fixture/console_log_spec.js +0 -5
  1258. data/vendor/bundle/gems/jasmine-2.99.0/spec/fixture/exception_test.js +0 -1
  1259. data/vendor/bundle/gems/jasmine-2.99.0/spec/fixture/failing_runner.rb +0 -9
  1260. data/vendor/bundle/gems/jasmine-2.99.0/spec/fixture/failing_test.js +0 -5
  1261. data/vendor/bundle/gems/jasmine-2.99.0/spec/fixture/large_test_suite_spec.js +0 -20
  1262. data/vendor/bundle/gems/jasmine-2.99.0/spec/fixture/non_asset_pipeline.js +0 -1
  1263. data/vendor/bundle/gems/jasmine-2.99.0/spec/fixture/non_asset_pipeline_test.js +0 -5
  1264. data/vendor/bundle/gems/jasmine-2.99.0/spec/fixture/phantomConfig.js +0 -6
  1265. data/vendor/bundle/gems/jasmine-2.99.0/spec/fixture/viewport_spec.js +0 -6
  1266. data/vendor/bundle/gems/jasmine-2.99.0/spec/jasmine_command_line_tool_spec.rb +0 -142
  1267. data/vendor/bundle/gems/jasmine-2.99.0/spec/jasmine_pojs_spec.rb +0 -124
  1268. data/vendor/bundle/gems/jasmine-2.99.0/spec/jasmine_rails_spec.rb +0 -217
  1269. data/vendor/bundle/gems/jasmine-2.99.0/spec/lib/jasmine/formatters/console_spec.rb +0 -205
  1270. data/vendor/bundle/gems/jasmine-2.99.0/spec/lib/jasmine/formatters/exit_code_spec.rb +0 -34
  1271. data/vendor/bundle/gems/jasmine-2.99.0/spec/lib/jasmine/formatters/multi_spec.rb +0 -27
  1272. data/vendor/bundle/gems/jasmine-2.99.0/spec/page_spec.rb +0 -23
  1273. data/vendor/bundle/gems/jasmine-2.99.0/spec/path_expander_spec.rb +0 -138
  1274. data/vendor/bundle/gems/jasmine-2.99.0/spec/path_mapper_spec.rb +0 -38
  1275. data/vendor/bundle/gems/jasmine-2.99.0/spec/performance/phantom_js_runner_performance_spec.rb +0 -23
  1276. data/vendor/bundle/gems/jasmine-2.99.0/spec/phantom_js_spec.rb +0 -14
  1277. data/vendor/bundle/gems/jasmine-2.99.0/spec/rack/jasmine/runner_spec.rb +0 -25
  1278. data/vendor/bundle/gems/jasmine-2.99.0/spec/result_spec.rb +0 -44
  1279. data/vendor/bundle/gems/jasmine-2.99.0/spec/server_spec.rb +0 -22
  1280. data/vendor/bundle/gems/jasmine-2.99.0/spec/spec_helper.rb +0 -145
  1281. data/vendor/bundle/gems/jasmine-2.99.0/spec/yaml_config_parser_spec.rb +0 -239
  1282. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/console/console.js +0 -190
  1283. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core.js +0 -37
  1284. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core.rb +0 -53
  1285. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/__init__.py +0 -1
  1286. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/boot.js +0 -155
  1287. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/boot/boot.js +0 -133
  1288. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/boot/node_boot.js +0 -19
  1289. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/core.py +0 -60
  1290. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/example/node_example/lib/jasmine_examples/Player.js +0 -24
  1291. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/example/node_example/lib/jasmine_examples/Song.js +0 -9
  1292. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/example/node_example/spec/helpers/jasmine_examples/SpecHelper.js +0 -15
  1293. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/example/node_example/spec/jasmine_examples/PlayerSpec.js +0 -60
  1294. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/example/spec/PlayerSpec.js +0 -58
  1295. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/example/spec/SpecHelper.js +0 -15
  1296. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/example/src/Player.js +0 -22
  1297. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/example/src/Song.js +0 -7
  1298. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/jasmine-html.js +0 -545
  1299. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/jasmine.css +0 -59
  1300. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/jasmine.js +0 -5586
  1301. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/json2.js +0 -489
  1302. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/node_boot.js +0 -41
  1303. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/version.rb +0 -9
  1304. data/vendor/bundle/gems/launchy-2.4.3/CONTRIBUTING.md +0 -59
  1305. data/vendor/bundle/gems/launchy-2.4.3/HISTORY.md +0 -160
  1306. data/vendor/bundle/gems/launchy-2.4.3/LICENSE +0 -16
  1307. data/vendor/bundle/gems/launchy-2.4.3/Manifest.txt +0 -38
  1308. data/vendor/bundle/gems/launchy-2.4.3/README.md +0 -136
  1309. data/vendor/bundle/gems/launchy-2.4.3/Rakefile +0 -25
  1310. data/vendor/bundle/gems/launchy-2.4.3/bin/launchy +0 -4
  1311. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy.rb +0 -152
  1312. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/application.rb +0 -62
  1313. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/applications/browser.rb +0 -82
  1314. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/argv.rb +0 -36
  1315. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/cli.rb +0 -89
  1316. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/deprecated.rb +0 -52
  1317. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/descendant_tracker.rb +0 -49
  1318. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/detect.rb +0 -10
  1319. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/detect/host_os.rb +0 -32
  1320. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/detect/host_os_family.rb +0 -71
  1321. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/detect/nix_desktop_environment.rb +0 -92
  1322. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/detect/ruby_engine.rb +0 -78
  1323. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/detect/runner.rb +0 -152
  1324. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/error.rb +0 -6
  1325. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/os_family.rb +0 -8
  1326. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/version.rb +0 -18
  1327. data/vendor/bundle/gems/launchy-2.4.3/spec/application_spec.rb +0 -43
  1328. data/vendor/bundle/gems/launchy-2.4.3/spec/applications/browser_spec.rb +0 -68
  1329. data/vendor/bundle/gems/launchy-2.4.3/spec/cli_spec.rb +0 -75
  1330. data/vendor/bundle/gems/launchy-2.4.3/spec/detect/host_os_family_spec.rb +0 -40
  1331. data/vendor/bundle/gems/launchy-2.4.3/spec/detect/host_os_spec.rb +0 -19
  1332. data/vendor/bundle/gems/launchy-2.4.3/spec/detect/nix_desktop_environment_spec.rb +0 -36
  1333. data/vendor/bundle/gems/launchy-2.4.3/spec/detect/ruby_engine_spec.rb +0 -37
  1334. data/vendor/bundle/gems/launchy-2.4.3/spec/detect/runner_spec.rb +0 -103
  1335. data/vendor/bundle/gems/launchy-2.4.3/spec/launchy_spec.rb +0 -110
  1336. data/vendor/bundle/gems/launchy-2.4.3/spec/mock_application.rb +0 -9
  1337. data/vendor/bundle/gems/launchy-2.4.3/spec/spec_helper.rb +0 -11
  1338. data/vendor/bundle/gems/launchy-2.4.3/spec/tattle-host-os.yaml +0 -427
  1339. data/vendor/bundle/gems/launchy-2.4.3/spec/version_spec.rb +0 -11
  1340. data/vendor/bundle/gems/launchy-2.4.3/tasks/default.rake +0 -272
  1341. data/vendor/bundle/gems/launchy-2.4.3/tasks/this.rb +0 -209
  1342. data/vendor/bundle/gems/mail-2.7.0/MIT-LICENSE +0 -20
  1343. data/vendor/bundle/gems/mail-2.7.0/README.md +0 -695
  1344. data/vendor/bundle/gems/mail-2.7.0/lib/mail.rb +0 -85
  1345. data/vendor/bundle/gems/mail-2.7.0/lib/mail/attachments_list.rb +0 -110
  1346. data/vendor/bundle/gems/mail-2.7.0/lib/mail/body.rb +0 -322
  1347. data/vendor/bundle/gems/mail-2.7.0/lib/mail/check_delivery_params.rb +0 -60
  1348. data/vendor/bundle/gems/mail-2.7.0/lib/mail/configuration.rb +0 -78
  1349. data/vendor/bundle/gems/mail-2.7.0/lib/mail/constants.rb +0 -57
  1350. data/vendor/bundle/gems/mail-2.7.0/lib/mail/core_extensions/smtp.rb +0 -28
  1351. data/vendor/bundle/gems/mail-2.7.0/lib/mail/core_extensions/string.rb +0 -17
  1352. data/vendor/bundle/gems/mail-2.7.0/lib/mail/elements.rb +0 -15
  1353. data/vendor/bundle/gems/mail-2.7.0/lib/mail/elements/address.rb +0 -258
  1354. data/vendor/bundle/gems/mail-2.7.0/lib/mail/elements/address_list.rb +0 -34
  1355. data/vendor/bundle/gems/mail-2.7.0/lib/mail/elements/content_disposition_element.rb +0 -20
  1356. data/vendor/bundle/gems/mail-2.7.0/lib/mail/elements/content_location_element.rb +0 -17
  1357. data/vendor/bundle/gems/mail-2.7.0/lib/mail/elements/content_transfer_encoding_element.rb +0 -13
  1358. data/vendor/bundle/gems/mail-2.7.0/lib/mail/elements/content_type_element.rb +0 -21
  1359. data/vendor/bundle/gems/mail-2.7.0/lib/mail/elements/date_time_element.rb +0 -15
  1360. data/vendor/bundle/gems/mail-2.7.0/lib/mail/elements/envelope_from_element.rb +0 -33
  1361. data/vendor/bundle/gems/mail-2.7.0/lib/mail/elements/message_ids_element.rb +0 -22
  1362. data/vendor/bundle/gems/mail-2.7.0/lib/mail/elements/mime_version_element.rb +0 -15
  1363. data/vendor/bundle/gems/mail-2.7.0/lib/mail/elements/phrase_list.rb +0 -14
  1364. data/vendor/bundle/gems/mail-2.7.0/lib/mail/elements/received_element.rb +0 -21
  1365. data/vendor/bundle/gems/mail-2.7.0/lib/mail/encodings.rb +0 -343
  1366. data/vendor/bundle/gems/mail-2.7.0/lib/mail/encodings/7bit.rb +0 -22
  1367. data/vendor/bundle/gems/mail-2.7.0/lib/mail/encodings/8bit.rb +0 -18
  1368. data/vendor/bundle/gems/mail-2.7.0/lib/mail/encodings/base64.rb +0 -38
  1369. data/vendor/bundle/gems/mail-2.7.0/lib/mail/encodings/binary.rb +0 -13
  1370. data/vendor/bundle/gems/mail-2.7.0/lib/mail/encodings/identity.rb +0 -24
  1371. data/vendor/bundle/gems/mail-2.7.0/lib/mail/encodings/quoted_printable.rb +0 -45
  1372. data/vendor/bundle/gems/mail-2.7.0/lib/mail/encodings/transfer_encoding.rb +0 -77
  1373. data/vendor/bundle/gems/mail-2.7.0/lib/mail/encodings/unix_to_unix.rb +0 -19
  1374. data/vendor/bundle/gems/mail-2.7.0/lib/mail/envelope.rb +0 -31
  1375. data/vendor/bundle/gems/mail-2.7.0/lib/mail/field.rb +0 -297
  1376. data/vendor/bundle/gems/mail-2.7.0/lib/mail/field_list.rb +0 -34
  1377. data/vendor/bundle/gems/mail-2.7.0/lib/mail/fields.rb +0 -36
  1378. data/vendor/bundle/gems/mail-2.7.0/lib/mail/fields/bcc_field.rb +0 -68
  1379. data/vendor/bundle/gems/mail-2.7.0/lib/mail/fields/cc_field.rb +0 -55
  1380. data/vendor/bundle/gems/mail-2.7.0/lib/mail/fields/comments_field.rb +0 -42
  1381. data/vendor/bundle/gems/mail-2.7.0/lib/mail/fields/common/address_container.rb +0 -17
  1382. data/vendor/bundle/gems/mail-2.7.0/lib/mail/fields/common/common_address.rb +0 -161
  1383. data/vendor/bundle/gems/mail-2.7.0/lib/mail/fields/common/common_date.rb +0 -36
  1384. data/vendor/bundle/gems/mail-2.7.0/lib/mail/fields/common/common_field.rb +0 -52
  1385. data/vendor/bundle/gems/mail-2.7.0/lib/mail/fields/common/common_message_id.rb +0 -49
  1386. data/vendor/bundle/gems/mail-2.7.0/lib/mail/fields/common/parameter_hash.rb +0 -59
  1387. data/vendor/bundle/gems/mail-2.7.0/lib/mail/fields/content_description_field.rb +0 -20
  1388. data/vendor/bundle/gems/mail-2.7.0/lib/mail/fields/content_disposition_field.rb +0 -71
  1389. data/vendor/bundle/gems/mail-2.7.0/lib/mail/fields/content_id_field.rb +0 -63
  1390. data/vendor/bundle/gems/mail-2.7.0/lib/mail/fields/content_location_field.rb +0 -43
  1391. data/vendor/bundle/gems/mail-2.7.0/lib/mail/fields/content_transfer_encoding_field.rb +0 -45
  1392. data/vendor/bundle/gems/mail-2.7.0/lib/mail/fields/content_type_field.rb +0 -197
  1393. data/vendor/bundle/gems/mail-2.7.0/lib/mail/fields/date_field.rb +0 -57
  1394. data/vendor/bundle/gems/mail-2.7.0/lib/mail/fields/from_field.rb +0 -55
  1395. data/vendor/bundle/gems/mail-2.7.0/lib/mail/fields/in_reply_to_field.rb +0 -57
  1396. data/vendor/bundle/gems/mail-2.7.0/lib/mail/fields/keywords_field.rb +0 -44
  1397. data/vendor/bundle/gems/mail-2.7.0/lib/mail/fields/message_id_field.rb +0 -83
  1398. data/vendor/bundle/gems/mail-2.7.0/lib/mail/fields/mime_version_field.rb +0 -54
  1399. data/vendor/bundle/gems/mail-2.7.0/lib/mail/fields/optional_field.rb +0 -17
  1400. data/vendor/bundle/gems/mail-2.7.0/lib/mail/fields/received_field.rb +0 -76
  1401. data/vendor/bundle/gems/mail-2.7.0/lib/mail/fields/references_field.rb +0 -57
  1402. data/vendor/bundle/gems/mail-2.7.0/lib/mail/fields/reply_to_field.rb +0 -55
  1403. data/vendor/bundle/gems/mail-2.7.0/lib/mail/fields/resent_bcc_field.rb +0 -55
  1404. data/vendor/bundle/gems/mail-2.7.0/lib/mail/fields/resent_cc_field.rb +0 -55
  1405. data/vendor/bundle/gems/mail-2.7.0/lib/mail/fields/resent_date_field.rb +0 -35
  1406. data/vendor/bundle/gems/mail-2.7.0/lib/mail/fields/resent_from_field.rb +0 -55
  1407. data/vendor/bundle/gems/mail-2.7.0/lib/mail/fields/resent_message_id_field.rb +0 -35
  1408. data/vendor/bundle/gems/mail-2.7.0/lib/mail/fields/resent_sender_field.rb +0 -62
  1409. data/vendor/bundle/gems/mail-2.7.0/lib/mail/fields/resent_to_field.rb +0 -55
  1410. data/vendor/bundle/gems/mail-2.7.0/lib/mail/fields/return_path_field.rb +0 -65
  1411. data/vendor/bundle/gems/mail-2.7.0/lib/mail/fields/sender_field.rb +0 -67
  1412. data/vendor/bundle/gems/mail-2.7.0/lib/mail/fields/structured_field.rb +0 -52
  1413. data/vendor/bundle/gems/mail-2.7.0/lib/mail/fields/subject_field.rb +0 -17
  1414. data/vendor/bundle/gems/mail-2.7.0/lib/mail/fields/to_field.rb +0 -55
  1415. data/vendor/bundle/gems/mail-2.7.0/lib/mail/fields/unstructured_field.rb +0 -222
  1416. data/vendor/bundle/gems/mail-2.7.0/lib/mail/header.rb +0 -278
  1417. data/vendor/bundle/gems/mail-2.7.0/lib/mail/indifferent_hash.rb +0 -147
  1418. data/vendor/bundle/gems/mail-2.7.0/lib/mail/mail.rb +0 -262
  1419. data/vendor/bundle/gems/mail-2.7.0/lib/mail/matchers/attachment_matchers.rb +0 -29
  1420. data/vendor/bundle/gems/mail-2.7.0/lib/mail/matchers/has_sent_mail.rb +0 -201
  1421. data/vendor/bundle/gems/mail-2.7.0/lib/mail/message.rb +0 -2171
  1422. data/vendor/bundle/gems/mail-2.7.0/lib/mail/multibyte.rb +0 -92
  1423. data/vendor/bundle/gems/mail-2.7.0/lib/mail/multibyte/chars.rb +0 -476
  1424. data/vendor/bundle/gems/mail-2.7.0/lib/mail/multibyte/unicode.rb +0 -405
  1425. data/vendor/bundle/gems/mail-2.7.0/lib/mail/multibyte/utils.rb +0 -61
  1426. data/vendor/bundle/gems/mail-2.7.0/lib/mail/network.rb +0 -16
  1427. data/vendor/bundle/gems/mail-2.7.0/lib/mail/network/delivery_methods/exim.rb +0 -49
  1428. data/vendor/bundle/gems/mail-2.7.0/lib/mail/network/delivery_methods/file_delivery.rb +0 -42
  1429. data/vendor/bundle/gems/mail-2.7.0/lib/mail/network/delivery_methods/logger_delivery.rb +0 -37
  1430. data/vendor/bundle/gems/mail-2.7.0/lib/mail/network/delivery_methods/sendmail.rb +0 -95
  1431. data/vendor/bundle/gems/mail-2.7.0/lib/mail/network/delivery_methods/smtp.rb +0 -149
  1432. data/vendor/bundle/gems/mail-2.7.0/lib/mail/network/delivery_methods/smtp_connection.rb +0 -66
  1433. data/vendor/bundle/gems/mail-2.7.0/lib/mail/network/delivery_methods/test_mailer.rb +0 -42
  1434. data/vendor/bundle/gems/mail-2.7.0/lib/mail/network/retriever_methods/base.rb +0 -64
  1435. data/vendor/bundle/gems/mail-2.7.0/lib/mail/network/retriever_methods/imap.rb +0 -187
  1436. data/vendor/bundle/gems/mail-2.7.0/lib/mail/network/retriever_methods/pop3.rb +0 -143
  1437. data/vendor/bundle/gems/mail-2.7.0/lib/mail/network/retriever_methods/test_retriever.rb +0 -44
  1438. data/vendor/bundle/gems/mail-2.7.0/lib/mail/parser_tools.rb +0 -15
  1439. data/vendor/bundle/gems/mail-2.7.0/lib/mail/parsers.rb +0 -19
  1440. data/vendor/bundle/gems/mail-2.7.0/lib/mail/parsers/address_lists_parser.rb +0 -33207
  1441. data/vendor/bundle/gems/mail-2.7.0/lib/mail/parsers/address_lists_parser.rl +0 -172
  1442. data/vendor/bundle/gems/mail-2.7.0/lib/mail/parsers/content_disposition_parser.rb +0 -901
  1443. data/vendor/bundle/gems/mail-2.7.0/lib/mail/parsers/content_disposition_parser.rl +0 -82
  1444. data/vendor/bundle/gems/mail-2.7.0/lib/mail/parsers/content_location_parser.rb +0 -813
  1445. data/vendor/bundle/gems/mail-2.7.0/lib/mail/parsers/content_location_parser.rl +0 -71
  1446. data/vendor/bundle/gems/mail-2.7.0/lib/mail/parsers/content_transfer_encoding_parser.rb +0 -522
  1447. data/vendor/bundle/gems/mail-2.7.0/lib/mail/parsers/content_transfer_encoding_parser.rl +0 -64
  1448. data/vendor/bundle/gems/mail-2.7.0/lib/mail/parsers/content_type_parser.rb +0 -1045
  1449. data/vendor/bundle/gems/mail-2.7.0/lib/mail/parsers/content_type_parser.rl +0 -83
  1450. data/vendor/bundle/gems/mail-2.7.0/lib/mail/parsers/date_time_parser.rb +0 -886
  1451. data/vendor/bundle/gems/mail-2.7.0/lib/mail/parsers/date_time_parser.rl +0 -62
  1452. data/vendor/bundle/gems/mail-2.7.0/lib/mail/parsers/envelope_from_parser.rb +0 -3574
  1453. data/vendor/bundle/gems/mail-2.7.0/lib/mail/parsers/envelope_from_parser.rl +0 -82
  1454. data/vendor/bundle/gems/mail-2.7.0/lib/mail/parsers/message_ids_parser.rb +0 -2858
  1455. data/vendor/bundle/gems/mail-2.7.0/lib/mail/parsers/message_ids_parser.rl +0 -82
  1456. data/vendor/bundle/gems/mail-2.7.0/lib/mail/parsers/mime_version_parser.rb +0 -509
  1457. data/vendor/bundle/gems/mail-2.7.0/lib/mail/parsers/mime_version_parser.rl +0 -61
  1458. data/vendor/bundle/gems/mail-2.7.0/lib/mail/parsers/phrase_lists_parser.rb +0 -891
  1459. data/vendor/bundle/gems/mail-2.7.0/lib/mail/parsers/phrase_lists_parser.rl +0 -83
  1460. data/vendor/bundle/gems/mail-2.7.0/lib/mail/parsers/received_parser.rb +0 -8754
  1461. data/vendor/bundle/gems/mail-2.7.0/lib/mail/parsers/received_parser.rl +0 -84
  1462. data/vendor/bundle/gems/mail-2.7.0/lib/mail/parsers/rfc2045_content_transfer_encoding.rl +0 -13
  1463. data/vendor/bundle/gems/mail-2.7.0/lib/mail/parsers/rfc2045_content_type.rl +0 -25
  1464. data/vendor/bundle/gems/mail-2.7.0/lib/mail/parsers/rfc2045_mime.rl +0 -16
  1465. data/vendor/bundle/gems/mail-2.7.0/lib/mail/parsers/rfc2183_content_disposition.rl +0 -15
  1466. data/vendor/bundle/gems/mail-2.7.0/lib/mail/parsers/rfc3629_utf8.rl +0 -19
  1467. data/vendor/bundle/gems/mail-2.7.0/lib/mail/parsers/rfc5234_abnf_core_rules.rl +0 -22
  1468. data/vendor/bundle/gems/mail-2.7.0/lib/mail/parsers/rfc5322.rl +0 -59
  1469. data/vendor/bundle/gems/mail-2.7.0/lib/mail/parsers/rfc5322_address.rl +0 -72
  1470. data/vendor/bundle/gems/mail-2.7.0/lib/mail/parsers/rfc5322_date_time.rl +0 -37
  1471. data/vendor/bundle/gems/mail-2.7.0/lib/mail/parsers/rfc5322_lexical_tokens.rl +0 -60
  1472. data/vendor/bundle/gems/mail-2.7.0/lib/mail/part.rb +0 -123
  1473. data/vendor/bundle/gems/mail-2.7.0/lib/mail/parts_list.rb +0 -74
  1474. data/vendor/bundle/gems/mail-2.7.0/lib/mail/utilities.rb +0 -324
  1475. data/vendor/bundle/gems/mail-2.7.0/lib/mail/values/unicode_tables.dat +0 -0
  1476. data/vendor/bundle/gems/mail-2.7.0/lib/mail/version.rb +0 -17
  1477. data/vendor/bundle/gems/mail-2.7.0/lib/mail/version_specific/ruby_1_8.rb +0 -163
  1478. data/vendor/bundle/gems/mail-2.7.0/lib/mail/version_specific/ruby_1_9.rb +0 -278
  1479. data/vendor/bundle/gems/mini_mime-1.0.0/CHANGELOG +0 -28
  1480. data/vendor/bundle/gems/mini_mime-1.0.0/CODE_OF_CONDUCT.md +0 -74
  1481. data/vendor/bundle/gems/mini_mime-1.0.0/Gemfile +0 -6
  1482. data/vendor/bundle/gems/mini_mime-1.0.0/LICENSE.txt +0 -21
  1483. data/vendor/bundle/gems/mini_mime-1.0.0/README.md +0 -96
  1484. data/vendor/bundle/gems/mini_mime-1.0.0/Rakefile +0 -96
  1485. data/vendor/bundle/gems/mini_mime-1.0.0/bench/bench.rb +0 -52
  1486. data/vendor/bundle/gems/mini_mime-1.0.0/bin/console +0 -14
  1487. data/vendor/bundle/gems/mini_mime-1.0.0/bin/setup +0 -8
  1488. data/vendor/bundle/gems/mini_mime-1.0.0/lib/db/content_type_mime.db +0 -853
  1489. data/vendor/bundle/gems/mini_mime-1.0.0/lib/db/ext_mime.db +0 -1161
  1490. data/vendor/bundle/gems/mini_mime-1.0.0/lib/mini_mime.rb +0 -153
  1491. data/vendor/bundle/gems/mini_mime-1.0.0/lib/mini_mime/version.rb +0 -3
  1492. data/vendor/bundle/gems/mini_mime-1.0.0/mini_mime.gemspec +0 -28
  1493. data/vendor/bundle/gems/mini_portile2-2.3.0/CHANGELOG.md +0 -202
  1494. data/vendor/bundle/gems/mini_portile2-2.3.0/Gemfile +0 -4
  1495. data/vendor/bundle/gems/mini_portile2-2.3.0/LICENSE.txt +0 -20
  1496. data/vendor/bundle/gems/mini_portile2-2.3.0/README.md +0 -245
  1497. data/vendor/bundle/gems/mini_portile2-2.3.0/Rakefile +0 -29
  1498. data/vendor/bundle/gems/mini_portile2-2.3.0/appveyor.yml +0 -25
  1499. data/vendor/bundle/gems/mini_portile2-2.3.0/concourse/mini_portile.yml +0 -160
  1500. data/vendor/bundle/gems/mini_portile2-2.3.0/concourse/tasks/rake-test/task.ps1 +0 -13
  1501. data/vendor/bundle/gems/mini_portile2-2.3.0/concourse/tasks/rake-test/task.sh +0 -13
  1502. data/vendor/bundle/gems/mini_portile2-2.3.0/lib/mini_portile2.rb +0 -3
  1503. data/vendor/bundle/gems/mini_portile2-2.3.0/lib/mini_portile2/mini_portile.rb +0 -551
  1504. data/vendor/bundle/gems/mini_portile2-2.3.0/lib/mini_portile2/mini_portile_cmake.rb +0 -40
  1505. data/vendor/bundle/gems/mini_portile2-2.3.0/lib/mini_portile2/version.rb +0 -3
  1506. data/vendor/bundle/gems/mini_portile2-2.3.0/mini_portile2.gemspec +0 -42
  1507. data/vendor/bundle/gems/mini_portile2-2.3.0/test/assets/git/config +0 -4
  1508. data/vendor/bundle/gems/mini_portile2-2.3.0/test/assets/gpg-fixtures/data +0 -1
  1509. data/vendor/bundle/gems/mini_portile2-2.3.0/test/assets/gpg-fixtures/data.asc +0 -9
  1510. data/vendor/bundle/gems/mini_portile2-2.3.0/test/assets/gpg-fixtures/data.invalid.asc +0 -9
  1511. data/vendor/bundle/gems/mini_portile2-2.3.0/test/assets/patch 1.diff +0 -7
  1512. data/vendor/bundle/gems/mini_portile2-2.3.0/test/assets/test mini portile-1.0.0/configure +0 -11
  1513. data/vendor/bundle/gems/mini_portile2-2.3.0/test/assets/test-cmake-1.0/CMakeLists.txt +0 -7
  1514. data/vendor/bundle/gems/mini_portile2-2.3.0/test/assets/test-cmake-1.0/hello.c +0 -4
  1515. data/vendor/bundle/gems/mini_portile2-2.3.0/test/assets/test-download-archive.tar.gz +0 -1
  1516. data/vendor/bundle/gems/mini_portile2-2.3.0/test/helper.rb +0 -60
  1517. data/vendor/bundle/gems/mini_portile2-2.3.0/test/test_cmake.rb +0 -64
  1518. data/vendor/bundle/gems/mini_portile2-2.3.0/test/test_cook.rb +0 -115
  1519. data/vendor/bundle/gems/mini_portile2-2.3.0/test/test_digest.rb +0 -215
  1520. data/vendor/bundle/gems/mini_portile2-2.3.0/test/test_download.rb +0 -71
  1521. data/vendor/bundle/gems/mini_portile2-2.3.0/test/test_proxy.rb +0 -121
  1522. data/vendor/bundle/gems/multipart-post-2.0.0/Gemfile +0 -14
  1523. data/vendor/bundle/gems/multipart-post-2.0.0/History.txt +0 -60
  1524. data/vendor/bundle/gems/multipart-post-2.0.0/Manifest.txt +0 -9
  1525. data/vendor/bundle/gems/multipart-post-2.0.0/README.md +0 -77
  1526. data/vendor/bundle/gems/multipart-post-2.0.0/Rakefile +0 -9
  1527. data/vendor/bundle/gems/multipart-post-2.0.0/lib/composite_io.rb +0 -108
  1528. data/vendor/bundle/gems/multipart-post-2.0.0/lib/multipart_post.rb +0 -9
  1529. data/vendor/bundle/gems/multipart-post-2.0.0/lib/multipartable.rb +0 -29
  1530. data/vendor/bundle/gems/multipart-post-2.0.0/lib/net/http/post/multipart.rb +0 -27
  1531. data/vendor/bundle/gems/multipart-post-2.0.0/lib/parts.rb +0 -96
  1532. data/vendor/bundle/gems/multipart-post-2.0.0/multipart-post.gemspec +0 -22
  1533. data/vendor/bundle/gems/multipart-post-2.0.0/test/multibyte.txt +0 -1
  1534. data/vendor/bundle/gems/multipart-post-2.0.0/test/net/http/post/test_multipart.rb +0 -110
  1535. data/vendor/bundle/gems/multipart-post-2.0.0/test/test_composite_io.rb +0 -115
  1536. data/vendor/bundle/gems/multipart-post-2.0.0/test/test_parts.rb +0 -86
  1537. data/vendor/bundle/gems/nokogiri-1.8.2/CHANGELOG.md +0 -1306
  1538. data/vendor/bundle/gems/nokogiri-1.8.2/CONTRIBUTING.md +0 -42
  1539. data/vendor/bundle/gems/nokogiri-1.8.2/C_CODING_STYLE.rdoc +0 -33
  1540. data/vendor/bundle/gems/nokogiri-1.8.2/Gemfile +0 -23
  1541. data/vendor/bundle/gems/nokogiri-1.8.2/Gemfile-libxml-ruby +0 -3
  1542. data/vendor/bundle/gems/nokogiri-1.8.2/LICENSE-DEPENDENCIES.md +0 -1612
  1543. data/vendor/bundle/gems/nokogiri-1.8.2/LICENSE.md +0 -31
  1544. data/vendor/bundle/gems/nokogiri-1.8.2/Manifest.txt +0 -365
  1545. data/vendor/bundle/gems/nokogiri-1.8.2/README.md +0 -173
  1546. data/vendor/bundle/gems/nokogiri-1.8.2/ROADMAP.md +0 -111
  1547. data/vendor/bundle/gems/nokogiri-1.8.2/Rakefile +0 -354
  1548. data/vendor/bundle/gems/nokogiri-1.8.2/STANDARD_RESPONSES.md +0 -47
  1549. data/vendor/bundle/gems/nokogiri-1.8.2/Y_U_NO_GEMSPEC.md +0 -155
  1550. data/vendor/bundle/gems/nokogiri-1.8.2/appveyor.yml +0 -29
  1551. data/vendor/bundle/gems/nokogiri-1.8.2/bin/nokogiri +0 -118
  1552. data/vendor/bundle/gems/nokogiri-1.8.2/build_all +0 -44
  1553. data/vendor/bundle/gems/nokogiri-1.8.2/dependencies.yml +0 -69
  1554. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/Makefile +0 -625
  1555. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/depend +0 -358
  1556. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/extconf.rb +0 -678
  1557. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/html_document.c +0 -170
  1558. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/html_document.h +0 -10
  1559. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/html_document.o +0 -0
  1560. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/html_element_description.c +0 -279
  1561. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/html_element_description.h +0 -10
  1562. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/html_element_description.o +0 -0
  1563. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/html_entity_lookup.c +0 -32
  1564. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/html_entity_lookup.h +0 -8
  1565. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/html_entity_lookup.o +0 -0
  1566. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/html_sax_parser_context.c +0 -116
  1567. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/html_sax_parser_context.h +0 -11
  1568. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/html_sax_parser_context.o +0 -0
  1569. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/html_sax_push_parser.c +0 -87
  1570. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/html_sax_push_parser.h +0 -9
  1571. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/html_sax_push_parser.o +0 -0
  1572. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/nokogiri.c +0 -141
  1573. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/nokogiri.h +0 -121
  1574. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/nokogiri.o +0 -0
  1575. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/nokogiri.so +0 -0
  1576. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_attr.c +0 -98
  1577. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_attr.h +0 -9
  1578. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_attr.o +0 -0
  1579. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_attribute_decl.c +0 -70
  1580. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_attribute_decl.h +0 -9
  1581. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_attribute_decl.o +0 -0
  1582. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_cdata.c +0 -60
  1583. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_cdata.h +0 -9
  1584. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_cdata.o +0 -0
  1585. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_comment.c +0 -69
  1586. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_comment.h +0 -9
  1587. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_comment.o +0 -0
  1588. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_document.c +0 -606
  1589. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_document.h +0 -23
  1590. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_document.o +0 -0
  1591. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_document_fragment.c +0 -48
  1592. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_document_fragment.h +0 -10
  1593. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_document_fragment.o +0 -0
  1594. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_dtd.c +0 -202
  1595. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_dtd.h +0 -10
  1596. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_dtd.o +0 -0
  1597. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_element_content.c +0 -123
  1598. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_element_content.h +0 -10
  1599. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_element_content.o +0 -0
  1600. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_element_decl.c +0 -69
  1601. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_element_decl.h +0 -9
  1602. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_element_decl.o +0 -0
  1603. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_encoding_handler.c +0 -79
  1604. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_encoding_handler.h +0 -8
  1605. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_encoding_handler.o +0 -0
  1606. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_entity_decl.c +0 -110
  1607. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_entity_decl.h +0 -10
  1608. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_entity_decl.o +0 -0
  1609. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_entity_reference.c +0 -52
  1610. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_entity_reference.h +0 -9
  1611. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_entity_reference.o +0 -0
  1612. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_io.c +0 -60
  1613. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_io.h +0 -11
  1614. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_io.o +0 -0
  1615. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_libxml2_hacks.c +0 -112
  1616. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_libxml2_hacks.h +0 -12
  1617. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_libxml2_hacks.o +0 -0
  1618. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_namespace.c +0 -117
  1619. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_namespace.h +0 -13
  1620. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_namespace.o +0 -0
  1621. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_node.c +0 -1682
  1622. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_node.h +0 -13
  1623. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_node.o +0 -0
  1624. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_node_set.c +0 -485
  1625. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_node_set.h +0 -13
  1626. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_node_set.o +0 -0
  1627. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_processing_instruction.c +0 -56
  1628. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_processing_instruction.h +0 -9
  1629. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_processing_instruction.o +0 -0
  1630. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_reader.c +0 -668
  1631. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_reader.h +0 -10
  1632. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_reader.o +0 -0
  1633. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_relax_ng.c +0 -161
  1634. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_relax_ng.h +0 -9
  1635. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_relax_ng.o +0 -0
  1636. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_sax_parser.c +0 -310
  1637. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_sax_parser.h +0 -39
  1638. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_sax_parser.o +0 -0
  1639. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_sax_parser_context.c +0 -262
  1640. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_sax_parser_context.h +0 -10
  1641. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_sax_parser_context.o +0 -0
  1642. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_sax_push_parser.c +0 -159
  1643. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_sax_push_parser.h +0 -9
  1644. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_sax_push_parser.o +0 -0
  1645. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_schema.c +0 -205
  1646. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_schema.h +0 -9
  1647. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_schema.o +0 -0
  1648. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_syntax_error.c +0 -64
  1649. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_syntax_error.h +0 -13
  1650. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_syntax_error.o +0 -0
  1651. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_text.c +0 -52
  1652. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_text.h +0 -9
  1653. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_text.o +0 -0
  1654. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_xpath_context.c +0 -298
  1655. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_xpath_context.h +0 -10
  1656. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xml_xpath_context.o +0 -0
  1657. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xslt_stylesheet.c +0 -270
  1658. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xslt_stylesheet.h +0 -14
  1659. data/vendor/bundle/gems/nokogiri-1.8.2/ext/nokogiri/xslt_stylesheet.o +0 -0
  1660. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri.rb +0 -144
  1661. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/css.rb +0 -27
  1662. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/css/node.rb +0 -52
  1663. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/css/parser.rb +0 -732
  1664. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/css/parser.y +0 -261
  1665. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/css/parser_extras.rb +0 -91
  1666. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/css/syntax_error.rb +0 -7
  1667. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/css/tokenizer.rb +0 -152
  1668. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/css/tokenizer.rex +0 -55
  1669. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/css/xpath_visitor.rb +0 -223
  1670. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/decorators/slop.rb +0 -42
  1671. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/html.rb +0 -37
  1672. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/html/builder.rb +0 -35
  1673. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/html/document.rb +0 -335
  1674. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/html/document_fragment.rb +0 -39
  1675. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/html/element_description.rb +0 -23
  1676. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/html/element_description_defaults.rb +0 -671
  1677. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/html/entity_lookup.rb +0 -13
  1678. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/html/sax/parser.rb +0 -62
  1679. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/html/sax/parser_context.rb +0 -16
  1680. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/html/sax/push_parser.rb +0 -36
  1681. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/nokogiri.so +0 -0
  1682. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/syntax_error.rb +0 -4
  1683. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/version.rb +0 -109
  1684. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/xml.rb +0 -75
  1685. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/xml/attr.rb +0 -14
  1686. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/xml/attribute_decl.rb +0 -18
  1687. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/xml/builder.rb +0 -443
  1688. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/xml/cdata.rb +0 -11
  1689. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/xml/character_data.rb +0 -7
  1690. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/xml/document.rb +0 -285
  1691. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/xml/document_fragment.rb +0 -149
  1692. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/xml/dtd.rb +0 -32
  1693. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/xml/element_content.rb +0 -36
  1694. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/xml/element_decl.rb +0 -13
  1695. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/xml/entity_decl.rb +0 -19
  1696. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/xml/entity_reference.rb +0 -18
  1697. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/xml/namespace.rb +0 -13
  1698. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/xml/node.rb +0 -832
  1699. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/xml/node/save_options.rb +0 -61
  1700. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/xml/node_set.rb +0 -327
  1701. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/xml/notation.rb +0 -6
  1702. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/xml/parse_options.rb +0 -120
  1703. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/xml/pp.rb +0 -2
  1704. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/xml/pp/character_data.rb +0 -18
  1705. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/xml/pp/node.rb +0 -56
  1706. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/xml/processing_instruction.rb +0 -8
  1707. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/xml/reader.rb +0 -112
  1708. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/xml/relax_ng.rb +0 -32
  1709. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/xml/sax.rb +0 -4
  1710. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/xml/sax/document.rb +0 -171
  1711. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/xml/sax/parser.rb +0 -122
  1712. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/xml/sax/parser_context.rb +0 -16
  1713. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/xml/sax/push_parser.rb +0 -60
  1714. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/xml/schema.rb +0 -63
  1715. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/xml/searchable.rb +0 -230
  1716. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/xml/syntax_error.rb +0 -70
  1717. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/xml/text.rb +0 -9
  1718. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/xml/xpath.rb +0 -10
  1719. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/xml/xpath/syntax_error.rb +0 -11
  1720. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/xml/xpath_context.rb +0 -16
  1721. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/xslt.rb +0 -56
  1722. data/vendor/bundle/gems/nokogiri-1.8.2/lib/nokogiri/xslt/stylesheet.rb +0 -25
  1723. data/vendor/bundle/gems/nokogiri-1.8.2/lib/xsd/xmlparser/nokogiri.rb +0 -102
  1724. data/vendor/bundle/gems/nokogiri-1.8.2/patches/sort-patches-by-date +0 -25
  1725. data/vendor/bundle/gems/nokogiri-1.8.2/suppressions/README.txt +0 -1
  1726. data/vendor/bundle/gems/nokogiri-1.8.2/suppressions/nokogiri_ruby-2.supp +0 -10
  1727. data/vendor/bundle/gems/nokogiri-1.8.2/tasks/test.rb +0 -100
  1728. data/vendor/bundle/gems/nokogiri-1.8.2/test/css/test_nthiness.rb +0 -226
  1729. data/vendor/bundle/gems/nokogiri-1.8.2/test/css/test_parser.rb +0 -369
  1730. data/vendor/bundle/gems/nokogiri-1.8.2/test/css/test_tokenizer.rb +0 -215
  1731. data/vendor/bundle/gems/nokogiri-1.8.2/test/css/test_xpath_visitor.rb +0 -96
  1732. data/vendor/bundle/gems/nokogiri-1.8.2/test/decorators/test_slop.rb +0 -23
  1733. data/vendor/bundle/gems/nokogiri-1.8.2/test/files/2ch.html +0 -108
  1734. data/vendor/bundle/gems/nokogiri-1.8.2/test/files/GH_1042.html +0 -18
  1735. data/vendor/bundle/gems/nokogiri-1.8.2/test/files/address_book.rlx +0 -12
  1736. data/vendor/bundle/gems/nokogiri-1.8.2/test/files/address_book.xml +0 -10
  1737. data/vendor/bundle/gems/nokogiri-1.8.2/test/files/atom.xml +0 -344
  1738. data/vendor/bundle/gems/nokogiri-1.8.2/test/files/bar/bar.xsd +0 -4
  1739. data/vendor/bundle/gems/nokogiri-1.8.2/test/files/bogus.xml +0 -0
  1740. data/vendor/bundle/gems/nokogiri-1.8.2/test/files/dont_hurt_em_why.xml +0 -422
  1741. data/vendor/bundle/gems/nokogiri-1.8.2/test/files/encoding.html +0 -82
  1742. data/vendor/bundle/gems/nokogiri-1.8.2/test/files/encoding.xhtml +0 -84
  1743. data/vendor/bundle/gems/nokogiri-1.8.2/test/files/exslt.xml +0 -8
  1744. data/vendor/bundle/gems/nokogiri-1.8.2/test/files/exslt.xslt +0 -35
  1745. data/vendor/bundle/gems/nokogiri-1.8.2/test/files/foo/foo.xsd +0 -4
  1746. data/vendor/bundle/gems/nokogiri-1.8.2/test/files/metacharset.html +0 -10
  1747. data/vendor/bundle/gems/nokogiri-1.8.2/test/files/namespace_pressure_test.xml +0 -1684
  1748. data/vendor/bundle/gems/nokogiri-1.8.2/test/files/noencoding.html +0 -47
  1749. data/vendor/bundle/gems/nokogiri-1.8.2/test/files/po.xml +0 -32
  1750. data/vendor/bundle/gems/nokogiri-1.8.2/test/files/po.xsd +0 -66
  1751. data/vendor/bundle/gems/nokogiri-1.8.2/test/files/saml/saml20assertion_schema.xsd +0 -283
  1752. data/vendor/bundle/gems/nokogiri-1.8.2/test/files/saml/saml20protocol_schema.xsd +0 -302
  1753. data/vendor/bundle/gems/nokogiri-1.8.2/test/files/saml/xenc_schema.xsd +0 -146
  1754. data/vendor/bundle/gems/nokogiri-1.8.2/test/files/saml/xmldsig_schema.xsd +0 -318
  1755. data/vendor/bundle/gems/nokogiri-1.8.2/test/files/shift_jis.html +0 -10
  1756. data/vendor/bundle/gems/nokogiri-1.8.2/test/files/shift_jis.xml +0 -5
  1757. data/vendor/bundle/gems/nokogiri-1.8.2/test/files/shift_jis_no_charset.html +0 -9
  1758. data/vendor/bundle/gems/nokogiri-1.8.2/test/files/slow-xpath.xml +0 -25509
  1759. data/vendor/bundle/gems/nokogiri-1.8.2/test/files/snuggles.xml +0 -3
  1760. data/vendor/bundle/gems/nokogiri-1.8.2/test/files/staff.dtd +0 -10
  1761. data/vendor/bundle/gems/nokogiri-1.8.2/test/files/staff.xml +0 -59
  1762. data/vendor/bundle/gems/nokogiri-1.8.2/test/files/staff.xslt +0 -32
  1763. data/vendor/bundle/gems/nokogiri-1.8.2/test/files/test_document_url/bar.xml +0 -2
  1764. data/vendor/bundle/gems/nokogiri-1.8.2/test/files/test_document_url/document.dtd +0 -4
  1765. data/vendor/bundle/gems/nokogiri-1.8.2/test/files/test_document_url/document.xml +0 -6
  1766. data/vendor/bundle/gems/nokogiri-1.8.2/test/files/tlm.html +0 -851
  1767. data/vendor/bundle/gems/nokogiri-1.8.2/test/files/to_be_xincluded.xml +0 -2
  1768. data/vendor/bundle/gems/nokogiri-1.8.2/test/files/valid_bar.xml +0 -2
  1769. data/vendor/bundle/gems/nokogiri-1.8.2/test/files/xinclude.xml +0 -4
  1770. data/vendor/bundle/gems/nokogiri-1.8.2/test/helper.rb +0 -271
  1771. data/vendor/bundle/gems/nokogiri-1.8.2/test/html/sax/test_parser.rb +0 -168
  1772. data/vendor/bundle/gems/nokogiri-1.8.2/test/html/sax/test_parser_context.rb +0 -46
  1773. data/vendor/bundle/gems/nokogiri-1.8.2/test/html/sax/test_parser_text.rb +0 -163
  1774. data/vendor/bundle/gems/nokogiri-1.8.2/test/html/sax/test_push_parser.rb +0 -87
  1775. data/vendor/bundle/gems/nokogiri-1.8.2/test/html/test_builder.rb +0 -164
  1776. data/vendor/bundle/gems/nokogiri-1.8.2/test/html/test_document.rb +0 -712
  1777. data/vendor/bundle/gems/nokogiri-1.8.2/test/html/test_document_encoding.rb +0 -143
  1778. data/vendor/bundle/gems/nokogiri-1.8.2/test/html/test_document_fragment.rb +0 -304
  1779. data/vendor/bundle/gems/nokogiri-1.8.2/test/html/test_element_description.rb +0 -105
  1780. data/vendor/bundle/gems/nokogiri-1.8.2/test/html/test_named_characters.rb +0 -14
  1781. data/vendor/bundle/gems/nokogiri-1.8.2/test/html/test_node.rb +0 -212
  1782. data/vendor/bundle/gems/nokogiri-1.8.2/test/html/test_node_encoding.rb +0 -91
  1783. data/vendor/bundle/gems/nokogiri-1.8.2/test/namespaces/test_additional_namespaces_in_builder_doc.rb +0 -14
  1784. data/vendor/bundle/gems/nokogiri-1.8.2/test/namespaces/test_namespaces_aliased_default.rb +0 -24
  1785. data/vendor/bundle/gems/nokogiri-1.8.2/test/namespaces/test_namespaces_in_builder_doc.rb +0 -75
  1786. data/vendor/bundle/gems/nokogiri-1.8.2/test/namespaces/test_namespaces_in_cloned_doc.rb +0 -31
  1787. data/vendor/bundle/gems/nokogiri-1.8.2/test/namespaces/test_namespaces_in_created_doc.rb +0 -75
  1788. data/vendor/bundle/gems/nokogiri-1.8.2/test/namespaces/test_namespaces_in_parsed_doc.rb +0 -80
  1789. data/vendor/bundle/gems/nokogiri-1.8.2/test/namespaces/test_namespaces_preservation.rb +0 -31
  1790. data/vendor/bundle/gems/nokogiri-1.8.2/test/test_convert_xpath.rb +0 -135
  1791. data/vendor/bundle/gems/nokogiri-1.8.2/test/test_css_cache.rb +0 -45
  1792. data/vendor/bundle/gems/nokogiri-1.8.2/test/test_encoding_handler.rb +0 -48
  1793. data/vendor/bundle/gems/nokogiri-1.8.2/test/test_memory_leak.rb +0 -156
  1794. data/vendor/bundle/gems/nokogiri-1.8.2/test/test_nokogiri.rb +0 -138
  1795. data/vendor/bundle/gems/nokogiri-1.8.2/test/test_soap4r_sax.rb +0 -52
  1796. data/vendor/bundle/gems/nokogiri-1.8.2/test/test_xslt_transforms.rb +0 -314
  1797. data/vendor/bundle/gems/nokogiri-1.8.2/test/xml/node/test_save_options.rb +0 -28
  1798. data/vendor/bundle/gems/nokogiri-1.8.2/test/xml/node/test_subclass.rb +0 -44
  1799. data/vendor/bundle/gems/nokogiri-1.8.2/test/xml/sax/test_parser.rb +0 -394
  1800. data/vendor/bundle/gems/nokogiri-1.8.2/test/xml/sax/test_parser_context.rb +0 -115
  1801. data/vendor/bundle/gems/nokogiri-1.8.2/test/xml/sax/test_parser_text.rb +0 -202
  1802. data/vendor/bundle/gems/nokogiri-1.8.2/test/xml/sax/test_push_parser.rb +0 -205
  1803. data/vendor/bundle/gems/nokogiri-1.8.2/test/xml/test_attr.rb +0 -74
  1804. data/vendor/bundle/gems/nokogiri-1.8.2/test/xml/test_attribute_decl.rb +0 -86
  1805. data/vendor/bundle/gems/nokogiri-1.8.2/test/xml/test_builder.rb +0 -341
  1806. data/vendor/bundle/gems/nokogiri-1.8.2/test/xml/test_c14n.rb +0 -180
  1807. data/vendor/bundle/gems/nokogiri-1.8.2/test/xml/test_cdata.rb +0 -54
  1808. data/vendor/bundle/gems/nokogiri-1.8.2/test/xml/test_comment.rb +0 -40
  1809. data/vendor/bundle/gems/nokogiri-1.8.2/test/xml/test_document.rb +0 -982
  1810. data/vendor/bundle/gems/nokogiri-1.8.2/test/xml/test_document_encoding.rb +0 -31
  1811. data/vendor/bundle/gems/nokogiri-1.8.2/test/xml/test_document_fragment.rb +0 -298
  1812. data/vendor/bundle/gems/nokogiri-1.8.2/test/xml/test_dtd.rb +0 -187
  1813. data/vendor/bundle/gems/nokogiri-1.8.2/test/xml/test_dtd_encoding.rb +0 -31
  1814. data/vendor/bundle/gems/nokogiri-1.8.2/test/xml/test_element_content.rb +0 -56
  1815. data/vendor/bundle/gems/nokogiri-1.8.2/test/xml/test_element_decl.rb +0 -73
  1816. data/vendor/bundle/gems/nokogiri-1.8.2/test/xml/test_entity_decl.rb +0 -122
  1817. data/vendor/bundle/gems/nokogiri-1.8.2/test/xml/test_entity_reference.rb +0 -262
  1818. data/vendor/bundle/gems/nokogiri-1.8.2/test/xml/test_namespace.rb +0 -96
  1819. data/vendor/bundle/gems/nokogiri-1.8.2/test/xml/test_node.rb +0 -1242
  1820. data/vendor/bundle/gems/nokogiri-1.8.2/test/xml/test_node_attributes.rb +0 -115
  1821. data/vendor/bundle/gems/nokogiri-1.8.2/test/xml/test_node_encoding.rb +0 -75
  1822. data/vendor/bundle/gems/nokogiri-1.8.2/test/xml/test_node_inheritance.rb +0 -32
  1823. data/vendor/bundle/gems/nokogiri-1.8.2/test/xml/test_node_reparenting.rb +0 -563
  1824. data/vendor/bundle/gems/nokogiri-1.8.2/test/xml/test_node_set.rb +0 -782
  1825. data/vendor/bundle/gems/nokogiri-1.8.2/test/xml/test_parse_options.rb +0 -64
  1826. data/vendor/bundle/gems/nokogiri-1.8.2/test/xml/test_processing_instruction.rb +0 -30
  1827. data/vendor/bundle/gems/nokogiri-1.8.2/test/xml/test_reader.rb +0 -608
  1828. data/vendor/bundle/gems/nokogiri-1.8.2/test/xml/test_reader_encoding.rb +0 -134
  1829. data/vendor/bundle/gems/nokogiri-1.8.2/test/xml/test_relax_ng.rb +0 -60
  1830. data/vendor/bundle/gems/nokogiri-1.8.2/test/xml/test_schema.rb +0 -142
  1831. data/vendor/bundle/gems/nokogiri-1.8.2/test/xml/test_syntax_error.rb +0 -36
  1832. data/vendor/bundle/gems/nokogiri-1.8.2/test/xml/test_text.rb +0 -60
  1833. data/vendor/bundle/gems/nokogiri-1.8.2/test/xml/test_unparented_node.rb +0 -483
  1834. data/vendor/bundle/gems/nokogiri-1.8.2/test/xml/test_xinclude.rb +0 -83
  1835. data/vendor/bundle/gems/nokogiri-1.8.2/test/xml/test_xpath.rb +0 -462
  1836. data/vendor/bundle/gems/nokogiri-1.8.2/test/xslt/test_custom_functions.rb +0 -133
  1837. data/vendor/bundle/gems/nokogiri-1.8.2/test/xslt/test_exception_handling.rb +0 -37
  1838. data/vendor/bundle/gems/octokit-4.9.0/CONTRIBUTING.md +0 -22
  1839. data/vendor/bundle/gems/octokit-4.9.0/LICENSE.md +0 -20
  1840. data/vendor/bundle/gems/octokit-4.9.0/README.md +0 -740
  1841. data/vendor/bundle/gems/octokit-4.9.0/Rakefile +0 -22
  1842. data/vendor/bundle/gems/octokit-4.9.0/lib/ext/sawyer/relation.rb +0 -10
  1843. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit.rb +0 -59
  1844. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/arguments.rb +0 -14
  1845. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/authentication.rb +0 -82
  1846. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client.rb +0 -241
  1847. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/apps.rb +0 -170
  1848. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/authorizations.rb +0 -246
  1849. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/commit_comments.rb +0 -95
  1850. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/commits.rb +0 -239
  1851. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/contents.rb +0 -164
  1852. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/deployments.rb +0 -72
  1853. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/downloads.rb +0 -50
  1854. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/emojis.rb +0 -18
  1855. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/events.rb +0 -151
  1856. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/feeds.rb +0 -33
  1857. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/gists.rb +0 -234
  1858. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/gitignore.rb +0 -43
  1859. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/hooks.rb +0 -297
  1860. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/issues.rb +0 -351
  1861. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/labels.rb +0 -156
  1862. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/legacy_search.rb +0 -42
  1863. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/licenses.rb +0 -45
  1864. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/markdown.rb +0 -27
  1865. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/marketplace.rb +0 -60
  1866. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/meta.rb +0 -21
  1867. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/milestones.rb +0 -87
  1868. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/notifications.rb +0 -167
  1869. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/objects.rb +0 -141
  1870. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/organizations.rb +0 -790
  1871. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/pages.rb +0 -63
  1872. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/projects.rb +0 -314
  1873. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/pub_sub_hubbub.rb +0 -111
  1874. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/pull_requests.rb +0 -301
  1875. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/rate_limit.rb +0 -54
  1876. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/reactions.rb +0 -158
  1877. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/refs.rb +0 -118
  1878. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/releases.rb +0 -164
  1879. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/repositories.rb +0 -653
  1880. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/repository_invitations.rb +0 -103
  1881. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/reviews.rb +0 -165
  1882. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/say.rb +0 -19
  1883. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/search.rb +0 -91
  1884. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/service_status.rb +0 -38
  1885. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/source_import.rb +0 -161
  1886. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/stats.rb +0 -106
  1887. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/statuses.rb +0 -47
  1888. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/traffic.rb +0 -69
  1889. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/client/users.rb +0 -355
  1890. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/configurable.rb +0 -151
  1891. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/connection.rb +0 -200
  1892. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/default.rb +0 -175
  1893. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/enterprise_admin_client.rb +0 -40
  1894. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/enterprise_admin_client/admin_stats.rb +0 -120
  1895. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/enterprise_admin_client/license.rb +0 -18
  1896. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/enterprise_admin_client/orgs.rb +0 -27
  1897. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/enterprise_admin_client/search_indexing.rb +0 -83
  1898. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/enterprise_admin_client/users.rb +0 -128
  1899. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/enterprise_management_console_client.rb +0 -50
  1900. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/enterprise_management_console_client/management_console.rb +0 -176
  1901. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/error.rb +0 -300
  1902. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/gist.rb +0 -36
  1903. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/middleware/follow_redirects.rb +0 -131
  1904. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/organization.rb +0 -17
  1905. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/preview.rb +0 -40
  1906. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/rate_limit.rb +0 -33
  1907. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/repo_arguments.rb +0 -19
  1908. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/repository.rb +0 -95
  1909. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/response/feed_parser.rb +0 -21
  1910. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/response/raise_error.rb +0 -21
  1911. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/user.rb +0 -19
  1912. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/version.rb +0 -17
  1913. data/vendor/bundle/gems/octokit-4.9.0/lib/octokit/warnable.rb +0 -17
  1914. data/vendor/bundle/gems/octokit-4.9.0/octokit.gemspec +0 -22
  1915. data/vendor/bundle/gems/phantomjs-2.1.1.0/Gemfile +0 -4
  1916. data/vendor/bundle/gems/phantomjs-2.1.1.0/LICENSE +0 -27
  1917. data/vendor/bundle/gems/phantomjs-2.1.1.0/README.md +0 -78
  1918. data/vendor/bundle/gems/phantomjs-2.1.1.0/Rakefile +0 -2
  1919. data/vendor/bundle/gems/phantomjs-2.1.1.0/lib/phantomjs.rb +0 -61
  1920. data/vendor/bundle/gems/phantomjs-2.1.1.0/lib/phantomjs/platform.rb +0 -162
  1921. data/vendor/bundle/gems/phantomjs-2.1.1.0/lib/phantomjs/poltergeist.rb +0 -13
  1922. data/vendor/bundle/gems/phantomjs-2.1.1.0/lib/phantomjs/version.rb +0 -3
  1923. data/vendor/bundle/gems/phantomjs-2.1.1.0/phantomjs.gemspec +0 -27
  1924. data/vendor/bundle/gems/phantomjs-2.1.1.0/spec/phantomjs_spec.rb +0 -50
  1925. data/vendor/bundle/gems/phantomjs-2.1.1.0/spec/platform_spec.rb +0 -203
  1926. data/vendor/bundle/gems/phantomjs-2.1.1.0/spec/runner.js +0 -5
  1927. data/vendor/bundle/gems/phantomjs-2.1.1.0/spec/spec_helper.rb +0 -11
  1928. data/vendor/bundle/gems/pit-0.0.7/ChangeLog +0 -87
  1929. data/vendor/bundle/gems/pit-0.0.7/Gemfile +0 -6
  1930. data/vendor/bundle/gems/pit-0.0.7/README +0 -59
  1931. data/vendor/bundle/gems/pit-0.0.7/Rakefile +0 -9
  1932. data/vendor/bundle/gems/pit-0.0.7/bin/pit +0 -137
  1933. data/vendor/bundle/gems/pit-0.0.7/lib/pit.rb +0 -97
  1934. data/vendor/bundle/gems/pit-0.0.7/lib/pit/version.rb +0 -4
  1935. data/vendor/bundle/gems/pit-0.0.7/pit.gemspec +0 -19
  1936. data/vendor/bundle/gems/pit-0.0.7/test/pit_test.rb +0 -112
  1937. data/vendor/bundle/gems/pit-0.0.7/test/test_helper.rb +0 -3
  1938. data/vendor/bundle/gems/power_assert-1.1.1/BSDL +0 -22
  1939. data/vendor/bundle/gems/power_assert-1.1.1/COPYING +0 -57
  1940. data/vendor/bundle/gems/power_assert-1.1.1/Gemfile +0 -9
  1941. data/vendor/bundle/gems/power_assert-1.1.1/LEGAL +0 -4
  1942. data/vendor/bundle/gems/power_assert-1.1.1/README.rdoc +0 -74
  1943. data/vendor/bundle/gems/power_assert-1.1.1/Rakefile +0 -59
  1944. data/vendor/bundle/gems/power_assert-1.1.1/bin/console +0 -12
  1945. data/vendor/bundle/gems/power_assert-1.1.1/bin/setup +0 -6
  1946. data/vendor/bundle/gems/power_assert-1.1.1/lib/power_assert.rb +0 -98
  1947. data/vendor/bundle/gems/power_assert-1.1.1/lib/power_assert/colorize.rb +0 -9
  1948. data/vendor/bundle/gems/power_assert-1.1.1/lib/power_assert/configuration.rb +0 -46
  1949. data/vendor/bundle/gems/power_assert-1.1.1/lib/power_assert/context.rb +0 -218
  1950. data/vendor/bundle/gems/power_assert-1.1.1/lib/power_assert/enable_tracepoint_events.rb +0 -91
  1951. data/vendor/bundle/gems/power_assert-1.1.1/lib/power_assert/inspector.rb +0 -61
  1952. data/vendor/bundle/gems/power_assert-1.1.1/lib/power_assert/parser.rb +0 -243
  1953. data/vendor/bundle/gems/power_assert-1.1.1/lib/power_assert/version.rb +0 -3
  1954. data/vendor/bundle/gems/power_assert-1.1.1/power_assert.gemspec +0 -30
  1955. data/vendor/bundle/gems/public_suffix-3.0.2/2.0-Upgrade.md +0 -52
  1956. data/vendor/bundle/gems/public_suffix-3.0.2/CHANGELOG.md +0 -335
  1957. data/vendor/bundle/gems/public_suffix-3.0.2/Gemfile +0 -10
  1958. data/vendor/bundle/gems/public_suffix-3.0.2/LICENSE.txt +0 -22
  1959. data/vendor/bundle/gems/public_suffix-3.0.2/README.md +0 -202
  1960. data/vendor/bundle/gems/public_suffix-3.0.2/Rakefile +0 -49
  1961. data/vendor/bundle/gems/public_suffix-3.0.2/bin/console +0 -14
  1962. data/vendor/bundle/gems/public_suffix-3.0.2/data/list.txt +0 -12370
  1963. data/vendor/bundle/gems/public_suffix-3.0.2/lib/public_suffix.rb +0 -175
  1964. data/vendor/bundle/gems/public_suffix-3.0.2/lib/public_suffix/domain.rb +0 -235
  1965. data/vendor/bundle/gems/public_suffix-3.0.2/lib/public_suffix/errors.rb +0 -39
  1966. data/vendor/bundle/gems/public_suffix-3.0.2/lib/public_suffix/list.rb +0 -243
  1967. data/vendor/bundle/gems/public_suffix-3.0.2/lib/public_suffix/rule.rb +0 -348
  1968. data/vendor/bundle/gems/public_suffix-3.0.2/lib/public_suffix/version.rb +0 -10
  1969. data/vendor/bundle/gems/public_suffix-3.0.2/public_suffix.gemspec +0 -25
  1970. data/vendor/bundle/gems/public_suffix-3.0.2/test/acceptance_test.rb +0 -127
  1971. data/vendor/bundle/gems/public_suffix-3.0.2/test/benchmarks/bm_find.rb +0 -66
  1972. data/vendor/bundle/gems/public_suffix-3.0.2/test/benchmarks/bm_find_all.rb +0 -102
  1973. data/vendor/bundle/gems/public_suffix-3.0.2/test/benchmarks/bm_names.rb +0 -91
  1974. data/vendor/bundle/gems/public_suffix-3.0.2/test/benchmarks/bm_select.rb +0 -26
  1975. data/vendor/bundle/gems/public_suffix-3.0.2/test/benchmarks/bm_select_incremental.rb +0 -25
  1976. data/vendor/bundle/gems/public_suffix-3.0.2/test/benchmarks/bm_valid.rb +0 -101
  1977. data/vendor/bundle/gems/public_suffix-3.0.2/test/profilers/domain_profiler.rb +0 -12
  1978. data/vendor/bundle/gems/public_suffix-3.0.2/test/profilers/find_profiler.rb +0 -12
  1979. data/vendor/bundle/gems/public_suffix-3.0.2/test/profilers/find_profiler_jp.rb +0 -12
  1980. data/vendor/bundle/gems/public_suffix-3.0.2/test/profilers/initialization_profiler.rb +0 -11
  1981. data/vendor/bundle/gems/public_suffix-3.0.2/test/profilers/list_profsize.rb +0 -11
  1982. data/vendor/bundle/gems/public_suffix-3.0.2/test/profilers/object_binsize.rb +0 -57
  1983. data/vendor/bundle/gems/public_suffix-3.0.2/test/psl_test.rb +0 -49
  1984. data/vendor/bundle/gems/public_suffix-3.0.2/test/test_helper.rb +0 -13
  1985. data/vendor/bundle/gems/public_suffix-3.0.2/test/tests.txt +0 -98
  1986. data/vendor/bundle/gems/public_suffix-3.0.2/test/unit/domain_test.rb +0 -104
  1987. data/vendor/bundle/gems/public_suffix-3.0.2/test/unit/errors_test.rb +0 -23
  1988. data/vendor/bundle/gems/public_suffix-3.0.2/test/unit/list_test.rb +0 -239
  1989. data/vendor/bundle/gems/public_suffix-3.0.2/test/unit/public_suffix_test.rb +0 -186
  1990. data/vendor/bundle/gems/public_suffix-3.0.2/test/unit/rule_test.rb +0 -220
  1991. data/vendor/bundle/gems/rack-2.0.5/COPYING +0 -18
  1992. data/vendor/bundle/gems/rack-2.0.5/HISTORY.md +0 -505
  1993. data/vendor/bundle/gems/rack-2.0.5/README.rdoc +0 -302
  1994. data/vendor/bundle/gems/rack-2.0.5/Rakefile +0 -116
  1995. data/vendor/bundle/gems/rack-2.0.5/SPEC +0 -263
  1996. data/vendor/bundle/gems/rack-2.0.5/bin/rackup +0 -4
  1997. data/vendor/bundle/gems/rack-2.0.5/contrib/rack.png +0 -0
  1998. data/vendor/bundle/gems/rack-2.0.5/contrib/rack.svg +0 -150
  1999. data/vendor/bundle/gems/rack-2.0.5/contrib/rack_logo.svg +0 -164
  2000. data/vendor/bundle/gems/rack-2.0.5/contrib/rdoc.css +0 -412
  2001. data/vendor/bundle/gems/rack-2.0.5/example/lobster.ru +0 -4
  2002. data/vendor/bundle/gems/rack-2.0.5/example/protectedlobster.rb +0 -14
  2003. data/vendor/bundle/gems/rack-2.0.5/example/protectedlobster.ru +0 -8
  2004. data/vendor/bundle/gems/rack-2.0.5/lib/rack.rb +0 -147
  2005. data/vendor/bundle/gems/rack-2.0.5/lib/rack/auth/abstract/handler.rb +0 -37
  2006. data/vendor/bundle/gems/rack-2.0.5/lib/rack/auth/abstract/request.rb +0 -47
  2007. data/vendor/bundle/gems/rack-2.0.5/lib/rack/auth/basic.rb +0 -58
  2008. data/vendor/bundle/gems/rack-2.0.5/lib/rack/auth/digest/md5.rb +0 -129
  2009. data/vendor/bundle/gems/rack-2.0.5/lib/rack/auth/digest/nonce.rb +0 -51
  2010. data/vendor/bundle/gems/rack-2.0.5/lib/rack/auth/digest/params.rb +0 -52
  2011. data/vendor/bundle/gems/rack-2.0.5/lib/rack/auth/digest/request.rb +0 -41
  2012. data/vendor/bundle/gems/rack-2.0.5/lib/rack/body_proxy.rb +0 -44
  2013. data/vendor/bundle/gems/rack-2.0.5/lib/rack/builder.rb +0 -164
  2014. data/vendor/bundle/gems/rack-2.0.5/lib/rack/cascade.rb +0 -52
  2015. data/vendor/bundle/gems/rack-2.0.5/lib/rack/chunked.rb +0 -69
  2016. data/vendor/bundle/gems/rack-2.0.5/lib/rack/common_logger.rb +0 -72
  2017. data/vendor/bundle/gems/rack-2.0.5/lib/rack/conditional_get.rb +0 -79
  2018. data/vendor/bundle/gems/rack-2.0.5/lib/rack/config.rb +0 -20
  2019. data/vendor/bundle/gems/rack-2.0.5/lib/rack/content_length.rb +0 -37
  2020. data/vendor/bundle/gems/rack-2.0.5/lib/rack/content_type.rb +0 -29
  2021. data/vendor/bundle/gems/rack-2.0.5/lib/rack/deflater.rb +0 -119
  2022. data/vendor/bundle/gems/rack-2.0.5/lib/rack/directory.rb +0 -179
  2023. data/vendor/bundle/gems/rack-2.0.5/lib/rack/etag.rb +0 -74
  2024. data/vendor/bundle/gems/rack-2.0.5/lib/rack/events.rb +0 -154
  2025. data/vendor/bundle/gems/rack-2.0.5/lib/rack/file.rb +0 -176
  2026. data/vendor/bundle/gems/rack-2.0.5/lib/rack/handler.rb +0 -99
  2027. data/vendor/bundle/gems/rack-2.0.5/lib/rack/handler/cgi.rb +0 -60
  2028. data/vendor/bundle/gems/rack-2.0.5/lib/rack/handler/fastcgi.rb +0 -100
  2029. data/vendor/bundle/gems/rack-2.0.5/lib/rack/handler/lsws.rb +0 -61
  2030. data/vendor/bundle/gems/rack-2.0.5/lib/rack/handler/scgi.rb +0 -70
  2031. data/vendor/bundle/gems/rack-2.0.5/lib/rack/handler/thin.rb +0 -36
  2032. data/vendor/bundle/gems/rack-2.0.5/lib/rack/handler/webrick.rb +0 -120
  2033. data/vendor/bundle/gems/rack-2.0.5/lib/rack/head.rb +0 -25
  2034. data/vendor/bundle/gems/rack-2.0.5/lib/rack/lint.rb +0 -760
  2035. data/vendor/bundle/gems/rack-2.0.5/lib/rack/lobster.rb +0 -70
  2036. data/vendor/bundle/gems/rack-2.0.5/lib/rack/lock.rb +0 -31
  2037. data/vendor/bundle/gems/rack-2.0.5/lib/rack/logger.rb +0 -18
  2038. data/vendor/bundle/gems/rack-2.0.5/lib/rack/media_type.rb +0 -38
  2039. data/vendor/bundle/gems/rack-2.0.5/lib/rack/method_override.rb +0 -50
  2040. data/vendor/bundle/gems/rack-2.0.5/lib/rack/mime.rb +0 -677
  2041. data/vendor/bundle/gems/rack-2.0.5/lib/rack/mock.rb +0 -196
  2042. data/vendor/bundle/gems/rack-2.0.5/lib/rack/multipart.rb +0 -63
  2043. data/vendor/bundle/gems/rack-2.0.5/lib/rack/multipart/generator.rb +0 -93
  2044. data/vendor/bundle/gems/rack-2.0.5/lib/rack/multipart/parser.rb +0 -369
  2045. data/vendor/bundle/gems/rack-2.0.5/lib/rack/multipart/uploaded_file.rb +0 -33
  2046. data/vendor/bundle/gems/rack-2.0.5/lib/rack/null_logger.rb +0 -37
  2047. data/vendor/bundle/gems/rack-2.0.5/lib/rack/query_parser.rb +0 -192
  2048. data/vendor/bundle/gems/rack-2.0.5/lib/rack/recursive.rb +0 -62
  2049. data/vendor/bundle/gems/rack-2.0.5/lib/rack/reloader.rb +0 -110
  2050. data/vendor/bundle/gems/rack-2.0.5/lib/rack/request.rb +0 -487
  2051. data/vendor/bundle/gems/rack-2.0.5/lib/rack/response.rb +0 -235
  2052. data/vendor/bundle/gems/rack-2.0.5/lib/rack/rewindable_input.rb +0 -93
  2053. data/vendor/bundle/gems/rack-2.0.5/lib/rack/runtime.rb +0 -32
  2054. data/vendor/bundle/gems/rack-2.0.5/lib/rack/sendfile.rb +0 -158
  2055. data/vendor/bundle/gems/rack-2.0.5/lib/rack/server.rb +0 -395
  2056. data/vendor/bundle/gems/rack-2.0.5/lib/rack/session/abstract/id.rb +0 -445
  2057. data/vendor/bundle/gems/rack-2.0.5/lib/rack/session/cookie.rb +0 -195
  2058. data/vendor/bundle/gems/rack-2.0.5/lib/rack/session/memcache.rb +0 -93
  2059. data/vendor/bundle/gems/rack-2.0.5/lib/rack/session/pool.rb +0 -76
  2060. data/vendor/bundle/gems/rack-2.0.5/lib/rack/show_exceptions.rb +0 -386
  2061. data/vendor/bundle/gems/rack-2.0.5/lib/rack/show_status.rb +0 -113
  2062. data/vendor/bundle/gems/rack-2.0.5/lib/rack/static.rb +0 -175
  2063. data/vendor/bundle/gems/rack-2.0.5/lib/rack/tempfile_reaper.rb +0 -22
  2064. data/vendor/bundle/gems/rack-2.0.5/lib/rack/urlmap.rb +0 -91
  2065. data/vendor/bundle/gems/rack-2.0.5/lib/rack/utils.rb +0 -620
  2066. data/vendor/bundle/gems/rack-2.0.5/rack.gemspec +0 -34
  2067. data/vendor/bundle/gems/rack-2.0.5/test/builder/an_underscore_app.rb +0 -5
  2068. data/vendor/bundle/gems/rack-2.0.5/test/builder/anything.rb +0 -5
  2069. data/vendor/bundle/gems/rack-2.0.5/test/builder/comment.ru +0 -4
  2070. data/vendor/bundle/gems/rack-2.0.5/test/builder/end.ru +0 -5
  2071. data/vendor/bundle/gems/rack-2.0.5/test/builder/line.ru +0 -1
  2072. data/vendor/bundle/gems/rack-2.0.5/test/builder/options.ru +0 -2
  2073. data/vendor/bundle/gems/rack-2.0.5/test/cgi/assets/folder/test.js +0 -1
  2074. data/vendor/bundle/gems/rack-2.0.5/test/cgi/assets/fonts/font.eot +0 -1
  2075. data/vendor/bundle/gems/rack-2.0.5/test/cgi/assets/images/image.png +0 -1
  2076. data/vendor/bundle/gems/rack-2.0.5/test/cgi/assets/index.html +0 -1
  2077. data/vendor/bundle/gems/rack-2.0.5/test/cgi/assets/javascripts/app.js +0 -1
  2078. data/vendor/bundle/gems/rack-2.0.5/test/cgi/assets/stylesheets/app.css +0 -1
  2079. data/vendor/bundle/gems/rack-2.0.5/test/cgi/lighttpd.conf +0 -26
  2080. data/vendor/bundle/gems/rack-2.0.5/test/cgi/rackup_stub.rb +0 -6
  2081. data/vendor/bundle/gems/rack-2.0.5/test/cgi/sample_rackup.ru +0 -5
  2082. data/vendor/bundle/gems/rack-2.0.5/test/cgi/test +0 -9
  2083. data/vendor/bundle/gems/rack-2.0.5/test/cgi/test+directory/test+file +0 -1
  2084. data/vendor/bundle/gems/rack-2.0.5/test/cgi/test.fcgi +0 -9
  2085. data/vendor/bundle/gems/rack-2.0.5/test/cgi/test.gz +0 -0
  2086. data/vendor/bundle/gems/rack-2.0.5/test/cgi/test.ru +0 -5
  2087. data/vendor/bundle/gems/rack-2.0.5/test/gemloader.rb +0 -10
  2088. data/vendor/bundle/gems/rack-2.0.5/test/helper.rb +0 -34
  2089. data/vendor/bundle/gems/rack-2.0.5/test/multipart/bad_robots +0 -259
  2090. data/vendor/bundle/gems/rack-2.0.5/test/multipart/binary +0 -0
  2091. data/vendor/bundle/gems/rack-2.0.5/test/multipart/content_type_and_no_filename +0 -6
  2092. data/vendor/bundle/gems/rack-2.0.5/test/multipart/empty +0 -10
  2093. data/vendor/bundle/gems/rack-2.0.5/test/multipart/fail_16384_nofile +0 -814
  2094. data/vendor/bundle/gems/rack-2.0.5/test/multipart/file1.txt +0 -1
  2095. data/vendor/bundle/gems/rack-2.0.5/test/multipart/filename_and_modification_param +0 -7
  2096. data/vendor/bundle/gems/rack-2.0.5/test/multipart/filename_and_no_name +0 -6
  2097. data/vendor/bundle/gems/rack-2.0.5/test/multipart/filename_with_encoded_words +0 -7
  2098. data/vendor/bundle/gems/rack-2.0.5/test/multipart/filename_with_escaped_quotes +0 -6
  2099. data/vendor/bundle/gems/rack-2.0.5/test/multipart/filename_with_escaped_quotes_and_modification_param +0 -7
  2100. data/vendor/bundle/gems/rack-2.0.5/test/multipart/filename_with_null_byte +0 -7
  2101. data/vendor/bundle/gems/rack-2.0.5/test/multipart/filename_with_percent_escaped_quotes +0 -6
  2102. data/vendor/bundle/gems/rack-2.0.5/test/multipart/filename_with_single_quote +0 -7
  2103. data/vendor/bundle/gems/rack-2.0.5/test/multipart/filename_with_unescaped_percentages +0 -6
  2104. data/vendor/bundle/gems/rack-2.0.5/test/multipart/filename_with_unescaped_percentages2 +0 -6
  2105. data/vendor/bundle/gems/rack-2.0.5/test/multipart/filename_with_unescaped_percentages3 +0 -6
  2106. data/vendor/bundle/gems/rack-2.0.5/test/multipart/filename_with_unescaped_quotes +0 -6
  2107. data/vendor/bundle/gems/rack-2.0.5/test/multipart/ie +0 -6
  2108. data/vendor/bundle/gems/rack-2.0.5/test/multipart/invalid_character +0 -6
  2109. data/vendor/bundle/gems/rack-2.0.5/test/multipart/mixed_files +0 -21
  2110. data/vendor/bundle/gems/rack-2.0.5/test/multipart/nested +0 -10
  2111. data/vendor/bundle/gems/rack-2.0.5/test/multipart/none +0 -9
  2112. data/vendor/bundle/gems/rack-2.0.5/test/multipart/quoted +0 -15
  2113. data/vendor/bundle/gems/rack-2.0.5/test/multipart/rack-logo.png +0 -0
  2114. data/vendor/bundle/gems/rack-2.0.5/test/multipart/semicolon +0 -6
  2115. data/vendor/bundle/gems/rack-2.0.5/test/multipart/text +0 -15
  2116. data/vendor/bundle/gems/rack-2.0.5/test/multipart/three_files_three_fields +0 -31
  2117. data/vendor/bundle/gems/rack-2.0.5/test/multipart/unity3d_wwwform +0 -11
  2118. data/vendor/bundle/gems/rack-2.0.5/test/multipart/webkit +0 -32
  2119. data/vendor/bundle/gems/rack-2.0.5/test/rackup/config.ru +0 -31
  2120. data/vendor/bundle/gems/rack-2.0.5/test/registering_handler/rack/handler/registering_myself.rb +0 -8
  2121. data/vendor/bundle/gems/rack-2.0.5/test/spec_auth_basic.rb +0 -89
  2122. data/vendor/bundle/gems/rack-2.0.5/test/spec_auth_digest.rb +0 -260
  2123. data/vendor/bundle/gems/rack-2.0.5/test/spec_body_proxy.rb +0 -85
  2124. data/vendor/bundle/gems/rack-2.0.5/test/spec_builder.rb +0 -233
  2125. data/vendor/bundle/gems/rack-2.0.5/test/spec_cascade.rb +0 -63
  2126. data/vendor/bundle/gems/rack-2.0.5/test/spec_cgi.rb +0 -84
  2127. data/vendor/bundle/gems/rack-2.0.5/test/spec_chunked.rb +0 -103
  2128. data/vendor/bundle/gems/rack-2.0.5/test/spec_common_logger.rb +0 -95
  2129. data/vendor/bundle/gems/rack-2.0.5/test/spec_conditional_get.rb +0 -103
  2130. data/vendor/bundle/gems/rack-2.0.5/test/spec_config.rb +0 -23
  2131. data/vendor/bundle/gems/rack-2.0.5/test/spec_content_length.rb +0 -86
  2132. data/vendor/bundle/gems/rack-2.0.5/test/spec_content_type.rb +0 -46
  2133. data/vendor/bundle/gems/rack-2.0.5/test/spec_deflater.rb +0 -375
  2134. data/vendor/bundle/gems/rack-2.0.5/test/spec_directory.rb +0 -148
  2135. data/vendor/bundle/gems/rack-2.0.5/test/spec_etag.rb +0 -108
  2136. data/vendor/bundle/gems/rack-2.0.5/test/spec_events.rb +0 -133
  2137. data/vendor/bundle/gems/rack-2.0.5/test/spec_fastcgi.rb +0 -85
  2138. data/vendor/bundle/gems/rack-2.0.5/test/spec_file.rb +0 -264
  2139. data/vendor/bundle/gems/rack-2.0.5/test/spec_handler.rb +0 -57
  2140. data/vendor/bundle/gems/rack-2.0.5/test/spec_head.rb +0 -46
  2141. data/vendor/bundle/gems/rack-2.0.5/test/spec_lint.rb +0 -515
  2142. data/vendor/bundle/gems/rack-2.0.5/test/spec_lobster.rb +0 -59
  2143. data/vendor/bundle/gems/rack-2.0.5/test/spec_lock.rb +0 -204
  2144. data/vendor/bundle/gems/rack-2.0.5/test/spec_logger.rb +0 -24
  2145. data/vendor/bundle/gems/rack-2.0.5/test/spec_media_type.rb +0 -42
  2146. data/vendor/bundle/gems/rack-2.0.5/test/spec_method_override.rb +0 -110
  2147. data/vendor/bundle/gems/rack-2.0.5/test/spec_mime.rb +0 -51
  2148. data/vendor/bundle/gems/rack-2.0.5/test/spec_mock.rb +0 -359
  2149. data/vendor/bundle/gems/rack-2.0.5/test/spec_multipart.rb +0 -722
  2150. data/vendor/bundle/gems/rack-2.0.5/test/spec_null_logger.rb +0 -21
  2151. data/vendor/bundle/gems/rack-2.0.5/test/spec_recursive.rb +0 -75
  2152. data/vendor/bundle/gems/rack-2.0.5/test/spec_request.rb +0 -1393
  2153. data/vendor/bundle/gems/rack-2.0.5/test/spec_response.rb +0 -510
  2154. data/vendor/bundle/gems/rack-2.0.5/test/spec_rewindable_input.rb +0 -128
  2155. data/vendor/bundle/gems/rack-2.0.5/test/spec_runtime.rb +0 -50
  2156. data/vendor/bundle/gems/rack-2.0.5/test/spec_sendfile.rb +0 -125
  2157. data/vendor/bundle/gems/rack-2.0.5/test/spec_server.rb +0 -193
  2158. data/vendor/bundle/gems/rack-2.0.5/test/spec_session_abstract_id.rb +0 -31
  2159. data/vendor/bundle/gems/rack-2.0.5/test/spec_session_abstract_session_hash.rb +0 -45
  2160. data/vendor/bundle/gems/rack-2.0.5/test/spec_session_cookie.rb +0 -442
  2161. data/vendor/bundle/gems/rack-2.0.5/test/spec_session_memcache.rb +0 -320
  2162. data/vendor/bundle/gems/rack-2.0.5/test/spec_session_pool.rb +0 -210
  2163. data/vendor/bundle/gems/rack-2.0.5/test/spec_show_exceptions.rb +0 -80
  2164. data/vendor/bundle/gems/rack-2.0.5/test/spec_show_status.rb +0 -104
  2165. data/vendor/bundle/gems/rack-2.0.5/test/spec_static.rb +0 -184
  2166. data/vendor/bundle/gems/rack-2.0.5/test/spec_tempfile_reaper.rb +0 -64
  2167. data/vendor/bundle/gems/rack-2.0.5/test/spec_thin.rb +0 -96
  2168. data/vendor/bundle/gems/rack-2.0.5/test/spec_urlmap.rb +0 -237
  2169. data/vendor/bundle/gems/rack-2.0.5/test/spec_utils.rb +0 -742
  2170. data/vendor/bundle/gems/rack-2.0.5/test/spec_version.rb +0 -11
  2171. data/vendor/bundle/gems/rack-2.0.5/test/spec_webrick.rb +0 -206
  2172. data/vendor/bundle/gems/rack-2.0.5/test/static/another/index.html +0 -1
  2173. data/vendor/bundle/gems/rack-2.0.5/test/static/foo.html +0 -1
  2174. data/vendor/bundle/gems/rack-2.0.5/test/static/index.html +0 -1
  2175. data/vendor/bundle/gems/rack-2.0.5/test/testrequest.rb +0 -78
  2176. data/vendor/bundle/gems/rack-2.0.5/test/unregistered_handler/rack/handler/unregistered.rb +0 -7
  2177. data/vendor/bundle/gems/rack-2.0.5/test/unregistered_handler/rack/handler/unregistered_long_one.rb +0 -7
  2178. data/vendor/bundle/gems/rack-test-1.0.0/History.md +0 -243
  2179. data/vendor/bundle/gems/rack-test-1.0.0/MIT-LICENSE.txt +0 -19
  2180. data/vendor/bundle/gems/rack-test-1.0.0/README.md +0 -148
  2181. data/vendor/bundle/gems/rack-test-1.0.0/lib/rack/mock_session.rb +0 -63
  2182. data/vendor/bundle/gems/rack-test-1.0.0/lib/rack/test.rb +0 -327
  2183. data/vendor/bundle/gems/rack-test-1.0.0/lib/rack/test/cookie_jar.rb +0 -194
  2184. data/vendor/bundle/gems/rack-test-1.0.0/lib/rack/test/methods.rb +0 -83
  2185. data/vendor/bundle/gems/rack-test-1.0.0/lib/rack/test/mock_digest_request.rb +0 -25
  2186. data/vendor/bundle/gems/rack-test-1.0.0/lib/rack/test/uploaded_file.rb +0 -85
  2187. data/vendor/bundle/gems/rack-test-1.0.0/lib/rack/test/utils.rb +0 -144
  2188. data/vendor/bundle/gems/rack-test-1.0.0/lib/rack/test/version.rb +0 -5
  2189. data/vendor/bundle/gems/racksh-1.0.0/CHANGELOG.txt +0 -34
  2190. data/vendor/bundle/gems/racksh-1.0.0/README.markdown +0 -150
  2191. data/vendor/bundle/gems/racksh-1.0.0/bin/racksh +0 -25
  2192. data/vendor/bundle/gems/racksh-1.0.0/lib/racksh/init.rb +0 -53
  2193. data/vendor/bundle/gems/racksh-1.0.0/lib/racksh/irb.rb +0 -2
  2194. data/vendor/bundle/gems/racksh-1.0.0/lib/racksh/session.rb +0 -18
  2195. data/vendor/bundle/gems/racksh-1.0.0/lib/racksh/version.rb +0 -5
  2196. data/vendor/bundle/gems/rake-12.3.1/CONTRIBUTING.rdoc +0 -36
  2197. data/vendor/bundle/gems/rake-12.3.1/Gemfile +0 -3
  2198. data/vendor/bundle/gems/rake-12.3.1/History.rdoc +0 -2317
  2199. data/vendor/bundle/gems/rake-12.3.1/MIT-LICENSE +0 -21
  2200. data/vendor/bundle/gems/rake-12.3.1/README.rdoc +0 -156
  2201. data/vendor/bundle/gems/rake-12.3.1/Rakefile +0 -41
  2202. data/vendor/bundle/gems/rake-12.3.1/bin/console +0 -7
  2203. data/vendor/bundle/gems/rake-12.3.1/bin/setup +0 -6
  2204. data/vendor/bundle/gems/rake-12.3.1/doc/command_line_usage.rdoc +0 -158
  2205. data/vendor/bundle/gems/rake-12.3.1/doc/example/Rakefile1 +0 -38
  2206. data/vendor/bundle/gems/rake-12.3.1/doc/example/Rakefile2 +0 -35
  2207. data/vendor/bundle/gems/rake-12.3.1/doc/example/a.c +0 -6
  2208. data/vendor/bundle/gems/rake-12.3.1/doc/example/b.c +0 -6
  2209. data/vendor/bundle/gems/rake-12.3.1/doc/example/main.c +0 -11
  2210. data/vendor/bundle/gems/rake-12.3.1/doc/glossary.rdoc +0 -42
  2211. data/vendor/bundle/gems/rake-12.3.1/doc/jamis.rb +0 -592
  2212. data/vendor/bundle/gems/rake-12.3.1/doc/proto_rake.rdoc +0 -127
  2213. data/vendor/bundle/gems/rake-12.3.1/doc/rake.1 +0 -156
  2214. data/vendor/bundle/gems/rake-12.3.1/doc/rakefile.rdoc +0 -622
  2215. data/vendor/bundle/gems/rake-12.3.1/doc/rational.rdoc +0 -151
  2216. data/vendor/bundle/gems/rake-12.3.1/exe/rake +0 -27
  2217. data/vendor/bundle/gems/rake-12.3.1/lib/rake.rb +0 -71
  2218. data/vendor/bundle/gems/rake-12.3.1/lib/rake/application.rb +0 -824
  2219. data/vendor/bundle/gems/rake-12.3.1/lib/rake/backtrace.rb +0 -24
  2220. data/vendor/bundle/gems/rake-12.3.1/lib/rake/clean.rb +0 -78
  2221. data/vendor/bundle/gems/rake-12.3.1/lib/rake/cloneable.rb +0 -17
  2222. data/vendor/bundle/gems/rake-12.3.1/lib/rake/cpu_counter.rb +0 -107
  2223. data/vendor/bundle/gems/rake-12.3.1/lib/rake/default_loader.rb +0 -15
  2224. data/vendor/bundle/gems/rake-12.3.1/lib/rake/dsl_definition.rb +0 -195
  2225. data/vendor/bundle/gems/rake-12.3.1/lib/rake/early_time.rb +0 -22
  2226. data/vendor/bundle/gems/rake-12.3.1/lib/rake/ext/core.rb +0 -26
  2227. data/vendor/bundle/gems/rake-12.3.1/lib/rake/ext/string.rb +0 -176
  2228. data/vendor/bundle/gems/rake-12.3.1/lib/rake/file_creation_task.rb +0 -25
  2229. data/vendor/bundle/gems/rake-12.3.1/lib/rake/file_list.rb +0 -435
  2230. data/vendor/bundle/gems/rake-12.3.1/lib/rake/file_task.rb +0 -54
  2231. data/vendor/bundle/gems/rake-12.3.1/lib/rake/file_utils.rb +0 -137
  2232. data/vendor/bundle/gems/rake-12.3.1/lib/rake/file_utils_ext.rb +0 -145
  2233. data/vendor/bundle/gems/rake-12.3.1/lib/rake/invocation_chain.rb +0 -57
  2234. data/vendor/bundle/gems/rake-12.3.1/lib/rake/invocation_exception_mixin.rb +0 -17
  2235. data/vendor/bundle/gems/rake-12.3.1/lib/rake/late_time.rb +0 -18
  2236. data/vendor/bundle/gems/rake-12.3.1/lib/rake/linked_list.rb +0 -112
  2237. data/vendor/bundle/gems/rake-12.3.1/lib/rake/loaders/makefile.rb +0 -54
  2238. data/vendor/bundle/gems/rake-12.3.1/lib/rake/multi_task.rb +0 -14
  2239. data/vendor/bundle/gems/rake-12.3.1/lib/rake/name_space.rb +0 -38
  2240. data/vendor/bundle/gems/rake-12.3.1/lib/rake/packagetask.rb +0 -211
  2241. data/vendor/bundle/gems/rake-12.3.1/lib/rake/phony.rb +0 -16
  2242. data/vendor/bundle/gems/rake-12.3.1/lib/rake/private_reader.rb +0 -21
  2243. data/vendor/bundle/gems/rake-12.3.1/lib/rake/promise.rb +0 -100
  2244. data/vendor/bundle/gems/rake-12.3.1/lib/rake/pseudo_status.rb +0 -30
  2245. data/vendor/bundle/gems/rake-12.3.1/lib/rake/rake_module.rb +0 -67
  2246. data/vendor/bundle/gems/rake-12.3.1/lib/rake/rake_test_loader.rb +0 -27
  2247. data/vendor/bundle/gems/rake-12.3.1/lib/rake/rule_recursion_overflow_error.rb +0 -20
  2248. data/vendor/bundle/gems/rake-12.3.1/lib/rake/scope.rb +0 -43
  2249. data/vendor/bundle/gems/rake-12.3.1/lib/rake/task.rb +0 -411
  2250. data/vendor/bundle/gems/rake-12.3.1/lib/rake/task_argument_error.rb +0 -8
  2251. data/vendor/bundle/gems/rake-12.3.1/lib/rake/task_arguments.rb +0 -109
  2252. data/vendor/bundle/gems/rake-12.3.1/lib/rake/task_manager.rb +0 -323
  2253. data/vendor/bundle/gems/rake-12.3.1/lib/rake/tasklib.rb +0 -12
  2254. data/vendor/bundle/gems/rake-12.3.1/lib/rake/testtask.rb +0 -224
  2255. data/vendor/bundle/gems/rake-12.3.1/lib/rake/thread_history_display.rb +0 -49
  2256. data/vendor/bundle/gems/rake-12.3.1/lib/rake/thread_pool.rb +0 -163
  2257. data/vendor/bundle/gems/rake-12.3.1/lib/rake/trace_output.rb +0 -23
  2258. data/vendor/bundle/gems/rake-12.3.1/lib/rake/version.rb +0 -10
  2259. data/vendor/bundle/gems/rake-12.3.1/lib/rake/win32.rb +0 -51
  2260. data/vendor/bundle/gems/rake-12.3.1/rake.gemspec +0 -42
  2261. data/vendor/bundle/gems/redcarpet-3.4.0/COPYING +0 -20
  2262. data/vendor/bundle/gems/redcarpet-3.4.0/Gemfile +0 -9
  2263. data/vendor/bundle/gems/redcarpet-3.4.0/README.markdown +0 -404
  2264. data/vendor/bundle/gems/redcarpet-3.4.0/Rakefile +0 -60
  2265. data/vendor/bundle/gems/redcarpet-3.4.0/bin/redcarpet +0 -7
  2266. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/Makefile +0 -263
  2267. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/autolink.c +0 -309
  2268. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/autolink.h +0 -55
  2269. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/autolink.o +0 -0
  2270. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/buffer.c +0 -203
  2271. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/buffer.h +0 -89
  2272. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/buffer.o +0 -0
  2273. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/extconf.rb +0 -6
  2274. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/houdini.h +0 -51
  2275. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/houdini_href_e.c +0 -124
  2276. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/houdini_href_e.o +0 -0
  2277. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/houdini_html_e.c +0 -105
  2278. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/houdini_html_e.o +0 -0
  2279. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/html.c +0 -842
  2280. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/html.h +0 -84
  2281. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/html.o +0 -0
  2282. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/html_blocks.h +0 -227
  2283. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/html_smartypants.c +0 -457
  2284. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/html_smartypants.o +0 -0
  2285. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/markdown.c +0 -2915
  2286. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/markdown.h +0 -143
  2287. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/markdown.o +0 -0
  2288. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/rc_markdown.c +0 -174
  2289. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/rc_markdown.o +0 -0
  2290. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/rc_render.c +0 -554
  2291. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/rc_render.o +0 -0
  2292. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/redcarpet.h +0 -52
  2293. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/redcarpet.so +0 -0
  2294. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/stack.c +0 -84
  2295. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/stack.h +0 -48
  2296. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/stack.o +0 -0
  2297. data/vendor/bundle/gems/redcarpet-3.4.0/lib/redcarpet.rb +0 -92
  2298. data/vendor/bundle/gems/redcarpet-3.4.0/lib/redcarpet.so +0 -0
  2299. data/vendor/bundle/gems/redcarpet-3.4.0/lib/redcarpet/cli.rb +0 -86
  2300. data/vendor/bundle/gems/redcarpet-3.4.0/lib/redcarpet/compat.rb +0 -73
  2301. data/vendor/bundle/gems/redcarpet-3.4.0/lib/redcarpet/render_man.rb +0 -65
  2302. data/vendor/bundle/gems/redcarpet-3.4.0/lib/redcarpet/render_strip.rb +0 -60
  2303. data/vendor/bundle/gems/redcarpet-3.4.0/redcarpet.gemspec +0 -71
  2304. data/vendor/bundle/gems/redcarpet-3.4.0/test/benchmark.rb +0 -24
  2305. data/vendor/bundle/gems/redcarpet-3.4.0/test/custom_render_test.rb +0 -57
  2306. data/vendor/bundle/gems/redcarpet-3.4.0/test/fixtures/benchmark.md +0 -232
  2307. data/vendor/bundle/gems/redcarpet-3.4.0/test/html5_test.rb +0 -82
  2308. data/vendor/bundle/gems/redcarpet-3.4.0/test/html_render_test.rb +0 -268
  2309. data/vendor/bundle/gems/redcarpet-3.4.0/test/html_toc_render_test.rb +0 -82
  2310. data/vendor/bundle/gems/redcarpet-3.4.0/test/markdown_test.rb +0 -406
  2311. data/vendor/bundle/gems/redcarpet-3.4.0/test/pathological_inputs_test.rb +0 -34
  2312. data/vendor/bundle/gems/redcarpet-3.4.0/test/redcarpet_bin_test.rb +0 -80
  2313. data/vendor/bundle/gems/redcarpet-3.4.0/test/redcarpet_compat_test.rb +0 -38
  2314. data/vendor/bundle/gems/redcarpet-3.4.0/test/safe_render_test.rb +0 -35
  2315. data/vendor/bundle/gems/redcarpet-3.4.0/test/smarty_html_test.rb +0 -45
  2316. data/vendor/bundle/gems/redcarpet-3.4.0/test/smarty_pants_test.rb +0 -58
  2317. data/vendor/bundle/gems/redcarpet-3.4.0/test/stripdown_render_test.rb +0 -61
  2318. data/vendor/bundle/gems/redcarpet-3.4.0/test/test_helper.rb +0 -47
  2319. data/vendor/bundle/gems/rspec-3.7.0/LICENSE.md +0 -27
  2320. data/vendor/bundle/gems/rspec-3.7.0/README.md +0 -39
  2321. data/vendor/bundle/gems/rspec-3.7.0/lib/rspec.rb +0 -3
  2322. data/vendor/bundle/gems/rspec-3.7.0/lib/rspec/version.rb +0 -5
  2323. data/vendor/bundle/gems/rspec-core-3.7.1/Changelog.md +0 -2192
  2324. data/vendor/bundle/gems/rspec-core-3.7.1/LICENSE.md +0 -26
  2325. data/vendor/bundle/gems/rspec-core-3.7.1/README.md +0 -384
  2326. data/vendor/bundle/gems/rspec-core-3.7.1/exe/rspec +0 -4
  2327. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/autorun.rb +0 -3
  2328. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core.rb +0 -185
  2329. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/backtrace_formatter.rb +0 -65
  2330. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/bisect/coordinator.rb +0 -66
  2331. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/bisect/example_minimizer.rb +0 -169
  2332. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/bisect/runner.rb +0 -169
  2333. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/bisect/server.rb +0 -70
  2334. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/configuration.rb +0 -2209
  2335. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/configuration_options.rb +0 -196
  2336. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/drb.rb +0 -113
  2337. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/dsl.rb +0 -98
  2338. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/example.rb +0 -653
  2339. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/example_group.rb +0 -884
  2340. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/example_status_persister.rb +0 -235
  2341. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/filter_manager.rb +0 -231
  2342. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/flat_map.rb +0 -20
  2343. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/formatters.rb +0 -265
  2344. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/formatters/base_formatter.rb +0 -70
  2345. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/formatters/base_text_formatter.rb +0 -75
  2346. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/formatters/bisect_formatter.rb +0 -69
  2347. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/formatters/bisect_progress_formatter.rb +0 -144
  2348. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/formatters/console_codes.rb +0 -68
  2349. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/formatters/deprecation_formatter.rb +0 -221
  2350. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/formatters/documentation_formatter.rb +0 -70
  2351. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/formatters/exception_presenter.rb +0 -496
  2352. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/formatters/fallback_message_formatter.rb +0 -28
  2353. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/formatters/helpers.rb +0 -110
  2354. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/formatters/html_formatter.rb +0 -153
  2355. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/formatters/html_printer.rb +0 -416
  2356. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/formatters/html_snippet_extractor.rb +0 -120
  2357. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/formatters/json_formatter.rb +0 -102
  2358. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/formatters/profile_formatter.rb +0 -68
  2359. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/formatters/progress_formatter.rb +0 -29
  2360. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/formatters/protocol.rb +0 -182
  2361. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/formatters/snippet_extractor.rb +0 -134
  2362. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/formatters/syntax_highlighter.rb +0 -91
  2363. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/hooks.rb +0 -626
  2364. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/invocations.rb +0 -85
  2365. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/memoized_helpers.rb +0 -535
  2366. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/metadata.rb +0 -499
  2367. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/metadata_filter.rb +0 -255
  2368. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/minitest_assertions_adapter.rb +0 -31
  2369. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/mocking_adapters/flexmock.rb +0 -31
  2370. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/mocking_adapters/mocha.rb +0 -57
  2371. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/mocking_adapters/null.rb +0 -14
  2372. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/mocking_adapters/rr.rb +0 -31
  2373. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/mocking_adapters/rspec.rb +0 -32
  2374. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/notifications.rb +0 -521
  2375. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/option_parser.rb +0 -309
  2376. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/ordering.rb +0 -158
  2377. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/output_wrapper.rb +0 -29
  2378. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/pending.rb +0 -165
  2379. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/profiler.rb +0 -32
  2380. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/project_initializer.rb +0 -48
  2381. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/project_initializer/spec/spec_helper.rb +0 -100
  2382. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/rake_task.rb +0 -168
  2383. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/reporter.rb +0 -260
  2384. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/ruby_project.rb +0 -53
  2385. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/runner.rb +0 -193
  2386. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/sandbox.rb +0 -37
  2387. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/set.rb +0 -54
  2388. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/shared_context.rb +0 -55
  2389. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/shared_example_group.rb +0 -271
  2390. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/shell_escape.rb +0 -49
  2391. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/test_unit_assertions_adapter.rb +0 -30
  2392. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/version.rb +0 -9
  2393. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/warnings.rb +0 -40
  2394. data/vendor/bundle/gems/rspec-core-3.7.1/lib/rspec/core/world.rb +0 -264
  2395. data/vendor/bundle/gems/rspec-expectations-3.7.0/Changelog.md +0 -1083
  2396. data/vendor/bundle/gems/rspec-expectations-3.7.0/LICENSE.md +0 -25
  2397. data/vendor/bundle/gems/rspec-expectations-3.7.0/README.md +0 -305
  2398. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/expectations.rb +0 -82
  2399. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/expectations/block_snippet_extractor.rb +0 -253
  2400. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/expectations/configuration.rb +0 -201
  2401. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/expectations/expectation_target.rb +0 -127
  2402. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/expectations/fail_with.rb +0 -39
  2403. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/expectations/failure_aggregator.rb +0 -194
  2404. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/expectations/handler.rb +0 -170
  2405. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/expectations/minitest_integration.rb +0 -58
  2406. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/expectations/syntax.rb +0 -132
  2407. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/expectations/version.rb +0 -8
  2408. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/matchers.rb +0 -1031
  2409. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/matchers/aliased_matcher.rb +0 -116
  2410. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/matchers/built_in.rb +0 -52
  2411. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/matchers/built_in/all.rb +0 -85
  2412. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/matchers/built_in/base_matcher.rb +0 -193
  2413. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/matchers/built_in/be.rb +0 -288
  2414. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/matchers/built_in/be_between.rb +0 -77
  2415. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/matchers/built_in/be_instance_of.rb +0 -22
  2416. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/matchers/built_in/be_kind_of.rb +0 -16
  2417. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/matchers/built_in/be_within.rb +0 -72
  2418. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/matchers/built_in/change.rb +0 -387
  2419. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/matchers/built_in/compound.rb +0 -272
  2420. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/matchers/built_in/contain_exactly.rb +0 -301
  2421. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/matchers/built_in/cover.rb +0 -24
  2422. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/matchers/built_in/eq.rb +0 -40
  2423. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/matchers/built_in/eql.rb +0 -34
  2424. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/matchers/built_in/equal.rb +0 -81
  2425. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/matchers/built_in/exist.rb +0 -90
  2426. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/matchers/built_in/has.rb +0 -103
  2427. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/matchers/built_in/have_attributes.rb +0 -114
  2428. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/matchers/built_in/include.rb +0 -143
  2429. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/matchers/built_in/match.rb +0 -106
  2430. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/matchers/built_in/operators.rb +0 -128
  2431. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/matchers/built_in/output.rb +0 -200
  2432. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/matchers/built_in/raise_error.rb +0 -230
  2433. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/matchers/built_in/respond_to.rb +0 -165
  2434. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/matchers/built_in/satisfy.rb +0 -60
  2435. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/matchers/built_in/start_or_end_with.rb +0 -94
  2436. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/matchers/built_in/throw_symbol.rb +0 -132
  2437. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/matchers/built_in/yield.rb +0 -432
  2438. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/matchers/composable.rb +0 -169
  2439. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/matchers/dsl.rb +0 -527
  2440. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/matchers/english_phrasing.rb +0 -58
  2441. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/matchers/expecteds_for_multiple_diffs.rb +0 -73
  2442. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/matchers/fail_matchers.rb +0 -42
  2443. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/matchers/generated_descriptions.rb +0 -42
  2444. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/matchers/matcher_delegator.rb +0 -35
  2445. data/vendor/bundle/gems/rspec-expectations-3.7.0/lib/rspec/matchers/matcher_protocol.rb +0 -99
  2446. data/vendor/bundle/gems/rspec-mocks-3.7.0/Changelog.md +0 -1089
  2447. data/vendor/bundle/gems/rspec-mocks-3.7.0/LICENSE.md +0 -25
  2448. data/vendor/bundle/gems/rspec-mocks-3.7.0/README.md +0 -460
  2449. data/vendor/bundle/gems/rspec-mocks-3.7.0/lib/rspec/mocks.rb +0 -130
  2450. data/vendor/bundle/gems/rspec-mocks-3.7.0/lib/rspec/mocks/any_instance.rb +0 -11
  2451. data/vendor/bundle/gems/rspec-mocks-3.7.0/lib/rspec/mocks/any_instance/chain.rb +0 -110
  2452. data/vendor/bundle/gems/rspec-mocks-3.7.0/lib/rspec/mocks/any_instance/error_generator.rb +0 -31
  2453. data/vendor/bundle/gems/rspec-mocks-3.7.0/lib/rspec/mocks/any_instance/expect_chain_chain.rb +0 -31
  2454. data/vendor/bundle/gems/rspec-mocks-3.7.0/lib/rspec/mocks/any_instance/expectation_chain.rb +0 -50
  2455. data/vendor/bundle/gems/rspec-mocks-3.7.0/lib/rspec/mocks/any_instance/message_chains.rb +0 -83
  2456. data/vendor/bundle/gems/rspec-mocks-3.7.0/lib/rspec/mocks/any_instance/proxy.rb +0 -116
  2457. data/vendor/bundle/gems/rspec-mocks-3.7.0/lib/rspec/mocks/any_instance/recorder.rb +0 -289
  2458. data/vendor/bundle/gems/rspec-mocks-3.7.0/lib/rspec/mocks/any_instance/stub_chain.rb +0 -51
  2459. data/vendor/bundle/gems/rspec-mocks-3.7.0/lib/rspec/mocks/any_instance/stub_chain_chain.rb +0 -23
  2460. data/vendor/bundle/gems/rspec-mocks-3.7.0/lib/rspec/mocks/argument_list_matcher.rb +0 -100
  2461. data/vendor/bundle/gems/rspec-mocks-3.7.0/lib/rspec/mocks/argument_matchers.rb +0 -320
  2462. data/vendor/bundle/gems/rspec-mocks-3.7.0/lib/rspec/mocks/configuration.rb +0 -212
  2463. data/vendor/bundle/gems/rspec-mocks-3.7.0/lib/rspec/mocks/error_generator.rb +0 -369
  2464. data/vendor/bundle/gems/rspec-mocks-3.7.0/lib/rspec/mocks/example_methods.rb +0 -434
  2465. data/vendor/bundle/gems/rspec-mocks-3.7.0/lib/rspec/mocks/instance_method_stasher.rb +0 -146
  2466. data/vendor/bundle/gems/rspec-mocks-3.7.0/lib/rspec/mocks/marshal_extension.rb +0 -41
  2467. data/vendor/bundle/gems/rspec-mocks-3.7.0/lib/rspec/mocks/matchers/expectation_customization.rb +0 -20
  2468. data/vendor/bundle/gems/rspec-mocks-3.7.0/lib/rspec/mocks/matchers/have_received.rb +0 -130
  2469. data/vendor/bundle/gems/rspec-mocks-3.7.0/lib/rspec/mocks/matchers/receive.rb +0 -132
  2470. data/vendor/bundle/gems/rspec-mocks-3.7.0/lib/rspec/mocks/matchers/receive_message_chain.rb +0 -82
  2471. data/vendor/bundle/gems/rspec-mocks-3.7.0/lib/rspec/mocks/matchers/receive_messages.rb +0 -77
  2472. data/vendor/bundle/gems/rspec-mocks-3.7.0/lib/rspec/mocks/message_chain.rb +0 -87
  2473. data/vendor/bundle/gems/rspec-mocks-3.7.0/lib/rspec/mocks/message_expectation.rb +0 -740
  2474. data/vendor/bundle/gems/rspec-mocks-3.7.0/lib/rspec/mocks/method_double.rb +0 -287
  2475. data/vendor/bundle/gems/rspec-mocks-3.7.0/lib/rspec/mocks/method_reference.rb +0 -202
  2476. data/vendor/bundle/gems/rspec-mocks-3.7.0/lib/rspec/mocks/minitest_integration.rb +0 -68
  2477. data/vendor/bundle/gems/rspec-mocks-3.7.0/lib/rspec/mocks/mutate_const.rb +0 -339
  2478. data/vendor/bundle/gems/rspec-mocks-3.7.0/lib/rspec/mocks/object_reference.rb +0 -149
  2479. data/vendor/bundle/gems/rspec-mocks-3.7.0/lib/rspec/mocks/order_group.rb +0 -81
  2480. data/vendor/bundle/gems/rspec-mocks-3.7.0/lib/rspec/mocks/proxy.rb +0 -484
  2481. data/vendor/bundle/gems/rspec-mocks-3.7.0/lib/rspec/mocks/space.rb +0 -238
  2482. data/vendor/bundle/gems/rspec-mocks-3.7.0/lib/rspec/mocks/standalone.rb +0 -3
  2483. data/vendor/bundle/gems/rspec-mocks-3.7.0/lib/rspec/mocks/syntax.rb +0 -325
  2484. data/vendor/bundle/gems/rspec-mocks-3.7.0/lib/rspec/mocks/targets.rb +0 -124
  2485. data/vendor/bundle/gems/rspec-mocks-3.7.0/lib/rspec/mocks/test_double.rb +0 -171
  2486. data/vendor/bundle/gems/rspec-mocks-3.7.0/lib/rspec/mocks/verifying_double.rb +0 -129
  2487. data/vendor/bundle/gems/rspec-mocks-3.7.0/lib/rspec/mocks/verifying_message_expectation.rb +0 -54
  2488. data/vendor/bundle/gems/rspec-mocks-3.7.0/lib/rspec/mocks/verifying_proxy.rb +0 -220
  2489. data/vendor/bundle/gems/rspec-mocks-3.7.0/lib/rspec/mocks/version.rb +0 -9
  2490. data/vendor/bundle/gems/rspec-support-3.7.1/Changelog.md +0 -234
  2491. data/vendor/bundle/gems/rspec-support-3.7.1/LICENSE.md +0 -23
  2492. data/vendor/bundle/gems/rspec-support-3.7.1/README.md +0 -40
  2493. data/vendor/bundle/gems/rspec-support-3.7.1/lib/rspec/support.rb +0 -149
  2494. data/vendor/bundle/gems/rspec-support-3.7.1/lib/rspec/support/caller_filter.rb +0 -83
  2495. data/vendor/bundle/gems/rspec-support-3.7.1/lib/rspec/support/comparable_version.rb +0 -46
  2496. data/vendor/bundle/gems/rspec-support-3.7.1/lib/rspec/support/differ.rb +0 -215
  2497. data/vendor/bundle/gems/rspec-support-3.7.1/lib/rspec/support/directory_maker.rb +0 -63
  2498. data/vendor/bundle/gems/rspec-support-3.7.1/lib/rspec/support/encoded_string.rb +0 -165
  2499. data/vendor/bundle/gems/rspec-support-3.7.1/lib/rspec/support/fuzzy_matcher.rb +0 -48
  2500. data/vendor/bundle/gems/rspec-support-3.7.1/lib/rspec/support/hunk_generator.rb +0 -47
  2501. data/vendor/bundle/gems/rspec-support-3.7.1/lib/rspec/support/matcher_definition.rb +0 -42
  2502. data/vendor/bundle/gems/rspec-support-3.7.1/lib/rspec/support/method_signature_verifier.rb +0 -392
  2503. data/vendor/bundle/gems/rspec-support-3.7.1/lib/rspec/support/mutex.rb +0 -73
  2504. data/vendor/bundle/gems/rspec-support-3.7.1/lib/rspec/support/object_formatter.rb +0 -267
  2505. data/vendor/bundle/gems/rspec-support-3.7.1/lib/rspec/support/recursive_const_methods.rb +0 -76
  2506. data/vendor/bundle/gems/rspec-support-3.7.1/lib/rspec/support/reentrant_mutex.rb +0 -53
  2507. data/vendor/bundle/gems/rspec-support-3.7.1/lib/rspec/support/ruby_features.rb +0 -162
  2508. data/vendor/bundle/gems/rspec-support-3.7.1/lib/rspec/support/source.rb +0 -75
  2509. data/vendor/bundle/gems/rspec-support-3.7.1/lib/rspec/support/source/location.rb +0 -21
  2510. data/vendor/bundle/gems/rspec-support-3.7.1/lib/rspec/support/source/node.rb +0 -110
  2511. data/vendor/bundle/gems/rspec-support-3.7.1/lib/rspec/support/source/token.rb +0 -87
  2512. data/vendor/bundle/gems/rspec-support-3.7.1/lib/rspec/support/spec.rb +0 -81
  2513. data/vendor/bundle/gems/rspec-support-3.7.1/lib/rspec/support/spec/deprecation_helpers.rb +0 -64
  2514. data/vendor/bundle/gems/rspec-support-3.7.1/lib/rspec/support/spec/formatting_support.rb +0 -9
  2515. data/vendor/bundle/gems/rspec-support-3.7.1/lib/rspec/support/spec/in_sub_process.rb +0 -69
  2516. data/vendor/bundle/gems/rspec-support-3.7.1/lib/rspec/support/spec/library_wide_checks.rb +0 -150
  2517. data/vendor/bundle/gems/rspec-support-3.7.1/lib/rspec/support/spec/shell_out.rb +0 -84
  2518. data/vendor/bundle/gems/rspec-support-3.7.1/lib/rspec/support/spec/stderr_splitter.rb +0 -63
  2519. data/vendor/bundle/gems/rspec-support-3.7.1/lib/rspec/support/spec/string_matcher.rb +0 -46
  2520. data/vendor/bundle/gems/rspec-support-3.7.1/lib/rspec/support/spec/with_isolated_directory.rb +0 -13
  2521. data/vendor/bundle/gems/rspec-support-3.7.1/lib/rspec/support/spec/with_isolated_stderr.rb +0 -13
  2522. data/vendor/bundle/gems/rspec-support-3.7.1/lib/rspec/support/version.rb +0 -7
  2523. data/vendor/bundle/gems/rspec-support-3.7.1/lib/rspec/support/warnings.rb +0 -39
  2524. data/vendor/bundle/gems/rubyzip-1.2.1/README.md +0 -306
  2525. data/vendor/bundle/gems/rubyzip-1.2.1/Rakefile +0 -18
  2526. data/vendor/bundle/gems/rubyzip-1.2.1/TODO +0 -15
  2527. data/vendor/bundle/gems/rubyzip-1.2.1/lib/zip.rb +0 -61
  2528. data/vendor/bundle/gems/rubyzip-1.2.1/lib/zip/central_directory.rb +0 -208
  2529. data/vendor/bundle/gems/rubyzip-1.2.1/lib/zip/compressor.rb +0 -10
  2530. data/vendor/bundle/gems/rubyzip-1.2.1/lib/zip/constants.rb +0 -63
  2531. data/vendor/bundle/gems/rubyzip-1.2.1/lib/zip/crypto/encryption.rb +0 -11
  2532. data/vendor/bundle/gems/rubyzip-1.2.1/lib/zip/crypto/null_encryption.rb +0 -45
  2533. data/vendor/bundle/gems/rubyzip-1.2.1/lib/zip/crypto/traditional_encryption.rb +0 -99
  2534. data/vendor/bundle/gems/rubyzip-1.2.1/lib/zip/decompressor.rb +0 -13
  2535. data/vendor/bundle/gems/rubyzip-1.2.1/lib/zip/deflater.rb +0 -34
  2536. data/vendor/bundle/gems/rubyzip-1.2.1/lib/zip/dos_time.rb +0 -48
  2537. data/vendor/bundle/gems/rubyzip-1.2.1/lib/zip/entry.rb +0 -690
  2538. data/vendor/bundle/gems/rubyzip-1.2.1/lib/zip/entry_set.rb +0 -86
  2539. data/vendor/bundle/gems/rubyzip-1.2.1/lib/zip/errors.rb +0 -17
  2540. data/vendor/bundle/gems/rubyzip-1.2.1/lib/zip/extra_field.rb +0 -101
  2541. data/vendor/bundle/gems/rubyzip-1.2.1/lib/zip/extra_field/generic.rb +0 -43
  2542. data/vendor/bundle/gems/rubyzip-1.2.1/lib/zip/extra_field/ntfs.rb +0 -90
  2543. data/vendor/bundle/gems/rubyzip-1.2.1/lib/zip/extra_field/old_unix.rb +0 -44
  2544. data/vendor/bundle/gems/rubyzip-1.2.1/lib/zip/extra_field/universal_time.rb +0 -47
  2545. data/vendor/bundle/gems/rubyzip-1.2.1/lib/zip/extra_field/unix.rb +0 -37
  2546. data/vendor/bundle/gems/rubyzip-1.2.1/lib/zip/extra_field/zip64.rb +0 -68
  2547. data/vendor/bundle/gems/rubyzip-1.2.1/lib/zip/extra_field/zip64_placeholder.rb +0 -16
  2548. data/vendor/bundle/gems/rubyzip-1.2.1/lib/zip/file.rb +0 -423
  2549. data/vendor/bundle/gems/rubyzip-1.2.1/lib/zip/filesystem.rb +0 -623
  2550. data/vendor/bundle/gems/rubyzip-1.2.1/lib/zip/inflater.rb +0 -66
  2551. data/vendor/bundle/gems/rubyzip-1.2.1/lib/zip/input_stream.rb +0 -170
  2552. data/vendor/bundle/gems/rubyzip-1.2.1/lib/zip/ioextras.rb +0 -36
  2553. data/vendor/bundle/gems/rubyzip-1.2.1/lib/zip/ioextras/abstract_input_stream.rb +0 -111
  2554. data/vendor/bundle/gems/rubyzip-1.2.1/lib/zip/ioextras/abstract_output_stream.rb +0 -43
  2555. data/vendor/bundle/gems/rubyzip-1.2.1/lib/zip/null_compressor.rb +0 -15
  2556. data/vendor/bundle/gems/rubyzip-1.2.1/lib/zip/null_decompressor.rb +0 -27
  2557. data/vendor/bundle/gems/rubyzip-1.2.1/lib/zip/null_input_stream.rb +0 -10
  2558. data/vendor/bundle/gems/rubyzip-1.2.1/lib/zip/output_stream.rb +0 -189
  2559. data/vendor/bundle/gems/rubyzip-1.2.1/lib/zip/pass_thru_compressor.rb +0 -23
  2560. data/vendor/bundle/gems/rubyzip-1.2.1/lib/zip/pass_thru_decompressor.rb +0 -40
  2561. data/vendor/bundle/gems/rubyzip-1.2.1/lib/zip/streamable_directory.rb +0 -15
  2562. data/vendor/bundle/gems/rubyzip-1.2.1/lib/zip/streamable_stream.rb +0 -56
  2563. data/vendor/bundle/gems/rubyzip-1.2.1/lib/zip/version.rb +0 -3
  2564. data/vendor/bundle/gems/rubyzip-1.2.1/samples/example.rb +0 -81
  2565. data/vendor/bundle/gems/rubyzip-1.2.1/samples/example_filesystem.rb +0 -31
  2566. data/vendor/bundle/gems/rubyzip-1.2.1/samples/example_recursive.rb +0 -55
  2567. data/vendor/bundle/gems/rubyzip-1.2.1/samples/gtk_ruby_zip.rb +0 -84
  2568. data/vendor/bundle/gems/rubyzip-1.2.1/samples/qtzip.rb +0 -92
  2569. data/vendor/bundle/gems/rubyzip-1.2.1/samples/write_simple.rb +0 -12
  2570. data/vendor/bundle/gems/rubyzip-1.2.1/samples/zipfind.rb +0 -66
  2571. data/vendor/bundle/gems/rubyzip-1.2.1/test/basic_zip_file_test.rb +0 -60
  2572. data/vendor/bundle/gems/rubyzip-1.2.1/test/case_sensitivity_test.rb +0 -69
  2573. data/vendor/bundle/gems/rubyzip-1.2.1/test/central_directory_entry_test.rb +0 -69
  2574. data/vendor/bundle/gems/rubyzip-1.2.1/test/central_directory_test.rb +0 -100
  2575. data/vendor/bundle/gems/rubyzip-1.2.1/test/crypto/null_encryption_test.rb +0 -57
  2576. data/vendor/bundle/gems/rubyzip-1.2.1/test/crypto/traditional_encryption_test.rb +0 -80
  2577. data/vendor/bundle/gems/rubyzip-1.2.1/test/data/WarnInvalidDate.zip +0 -0
  2578. data/vendor/bundle/gems/rubyzip-1.2.1/test/data/file1.txt +0 -46
  2579. data/vendor/bundle/gems/rubyzip-1.2.1/test/data/file1.txt.deflatedData +0 -0
  2580. data/vendor/bundle/gems/rubyzip-1.2.1/test/data/file2.txt +0 -1504
  2581. data/vendor/bundle/gems/rubyzip-1.2.1/test/data/globTest.zip +0 -0
  2582. data/vendor/bundle/gems/rubyzip-1.2.1/test/data/globTest/foo.txt +0 -0
  2583. data/vendor/bundle/gems/rubyzip-1.2.1/test/data/globTest/foo/bar/baz/foo.txt +0 -0
  2584. data/vendor/bundle/gems/rubyzip-1.2.1/test/data/globTest/food.txt +0 -0
  2585. data/vendor/bundle/gems/rubyzip-1.2.1/test/data/mimetype +0 -1
  2586. data/vendor/bundle/gems/rubyzip-1.2.1/test/data/notzippedruby.rb +0 -7
  2587. data/vendor/bundle/gems/rubyzip-1.2.1/test/data/ntfs.zip +0 -0
  2588. data/vendor/bundle/gems/rubyzip-1.2.1/test/data/oddExtraField.zip +0 -0
  2589. data/vendor/bundle/gems/rubyzip-1.2.1/test/data/rubycode.zip +0 -0
  2590. data/vendor/bundle/gems/rubyzip-1.2.1/test/data/rubycode2.zip +0 -0
  2591. data/vendor/bundle/gems/rubyzip-1.2.1/test/data/test.xls +0 -0
  2592. data/vendor/bundle/gems/rubyzip-1.2.1/test/data/testDirectory.bin +0 -0
  2593. data/vendor/bundle/gems/rubyzip-1.2.1/test/data/zip64-sample.zip +0 -0
  2594. data/vendor/bundle/gems/rubyzip-1.2.1/test/data/zipWithDirs.zip +0 -0
  2595. data/vendor/bundle/gems/rubyzip-1.2.1/test/data/zipWithEncryption.zip +0 -0
  2596. data/vendor/bundle/gems/rubyzip-1.2.1/test/deflater_test.rb +0 -65
  2597. data/vendor/bundle/gems/rubyzip-1.2.1/test/encryption_test.rb +0 -42
  2598. data/vendor/bundle/gems/rubyzip-1.2.1/test/entry_set_test.rb +0 -163
  2599. data/vendor/bundle/gems/rubyzip-1.2.1/test/entry_test.rb +0 -154
  2600. data/vendor/bundle/gems/rubyzip-1.2.1/test/errors_test.rb +0 -34
  2601. data/vendor/bundle/gems/rubyzip-1.2.1/test/extra_field_test.rb +0 -76
  2602. data/vendor/bundle/gems/rubyzip-1.2.1/test/file_extract_directory_test.rb +0 -54
  2603. data/vendor/bundle/gems/rubyzip-1.2.1/test/file_extract_test.rb +0 -83
  2604. data/vendor/bundle/gems/rubyzip-1.2.1/test/file_permissions_test.rb +0 -69
  2605. data/vendor/bundle/gems/rubyzip-1.2.1/test/file_split_test.rb +0 -57
  2606. data/vendor/bundle/gems/rubyzip-1.2.1/test/file_test.rb +0 -583
  2607. data/vendor/bundle/gems/rubyzip-1.2.1/test/filesystem/dir_iterator_test.rb +0 -58
  2608. data/vendor/bundle/gems/rubyzip-1.2.1/test/filesystem/directory_test.rb +0 -121
  2609. data/vendor/bundle/gems/rubyzip-1.2.1/test/filesystem/file_mutating_test.rb +0 -88
  2610. data/vendor/bundle/gems/rubyzip-1.2.1/test/filesystem/file_nonmutating_test.rb +0 -508
  2611. data/vendor/bundle/gems/rubyzip-1.2.1/test/filesystem/file_stat_test.rb +0 -64
  2612. data/vendor/bundle/gems/rubyzip-1.2.1/test/gentestfiles.rb +0 -126
  2613. data/vendor/bundle/gems/rubyzip-1.2.1/test/inflater_test.rb +0 -14
  2614. data/vendor/bundle/gems/rubyzip-1.2.1/test/input_stream_test.rb +0 -182
  2615. data/vendor/bundle/gems/rubyzip-1.2.1/test/ioextras/abstract_input_stream_test.rb +0 -102
  2616. data/vendor/bundle/gems/rubyzip-1.2.1/test/ioextras/abstract_output_stream_test.rb +0 -106
  2617. data/vendor/bundle/gems/rubyzip-1.2.1/test/ioextras/fake_io_test.rb +0 -18
  2618. data/vendor/bundle/gems/rubyzip-1.2.1/test/local_entry_test.rb +0 -154
  2619. data/vendor/bundle/gems/rubyzip-1.2.1/test/output_stream_test.rb +0 -128
  2620. data/vendor/bundle/gems/rubyzip-1.2.1/test/pass_thru_compressor_test.rb +0 -30
  2621. data/vendor/bundle/gems/rubyzip-1.2.1/test/pass_thru_decompressor_test.rb +0 -14
  2622. data/vendor/bundle/gems/rubyzip-1.2.1/test/samples/example_recursive_test.rb +0 -37
  2623. data/vendor/bundle/gems/rubyzip-1.2.1/test/settings_test.rb +0 -95
  2624. data/vendor/bundle/gems/rubyzip-1.2.1/test/test_helper.rb +0 -234
  2625. data/vendor/bundle/gems/rubyzip-1.2.1/test/unicode_file_names_and_comments_test.rb +0 -50
  2626. data/vendor/bundle/gems/rubyzip-1.2.1/test/zip64_full_test.rb +0 -51
  2627. data/vendor/bundle/gems/rubyzip-1.2.1/test/zip64_support_test.rb +0 -14
  2628. data/vendor/bundle/gems/sawyer-0.8.1/Gemfile +0 -8
  2629. data/vendor/bundle/gems/sawyer-0.8.1/LICENSE.md +0 -20
  2630. data/vendor/bundle/gems/sawyer-0.8.1/README.md +0 -19
  2631. data/vendor/bundle/gems/sawyer-0.8.1/Rakefile +0 -12
  2632. data/vendor/bundle/gems/sawyer-0.8.1/lib/sawyer.rb +0 -17
  2633. data/vendor/bundle/gems/sawyer-0.8.1/lib/sawyer/agent.rb +0 -158
  2634. data/vendor/bundle/gems/sawyer-0.8.1/lib/sawyer/link_parsers/hal.rb +0 -15
  2635. data/vendor/bundle/gems/sawyer-0.8.1/lib/sawyer/link_parsers/simple.rb +0 -29
  2636. data/vendor/bundle/gems/sawyer-0.8.1/lib/sawyer/relation.rb +0 -271
  2637. data/vendor/bundle/gems/sawyer-0.8.1/lib/sawyer/resource.rb +0 -155
  2638. data/vendor/bundle/gems/sawyer-0.8.1/lib/sawyer/response.rb +0 -64
  2639. data/vendor/bundle/gems/sawyer-0.8.1/lib/sawyer/serializer.rb +0 -127
  2640. data/vendor/bundle/gems/sawyer-0.8.1/sawyer.gemspec +0 -32
  2641. data/vendor/bundle/gems/sawyer-0.8.1/script/bootstrap +0 -5
  2642. data/vendor/bundle/gems/sawyer-0.8.1/script/console +0 -8
  2643. data/vendor/bundle/gems/sawyer-0.8.1/script/package +0 -8
  2644. data/vendor/bundle/gems/sawyer-0.8.1/script/release +0 -16
  2645. data/vendor/bundle/gems/sawyer-0.8.1/script/test +0 -6
  2646. data/vendor/bundle/gems/sawyer-0.8.1/test/agent_test.rb +0 -195
  2647. data/vendor/bundle/gems/sawyer-0.8.1/test/helper.rb +0 -7
  2648. data/vendor/bundle/gems/sawyer-0.8.1/test/relation_test.rb +0 -174
  2649. data/vendor/bundle/gems/sawyer-0.8.1/test/resource_test.rb +0 -199
  2650. data/vendor/bundle/gems/sawyer-0.8.1/test/response_test.rb +0 -77
  2651. data/vendor/bundle/gems/selenium-webdriver-3.12.0/CHANGES +0 -1411
  2652. data/vendor/bundle/gems/selenium-webdriver-3.12.0/Gemfile +0 -2
  2653. data/vendor/bundle/gems/selenium-webdriver-3.12.0/LICENSE +0 -202
  2654. data/vendor/bundle/gems/selenium-webdriver-3.12.0/README.md +0 -35
  2655. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium-webdriver.rb +0 -18
  2656. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/server.rb +0 -268
  2657. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver.rb +0 -99
  2658. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/atoms.rb +0 -18
  2659. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/atoms/getAttribute.js +0 -8
  2660. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/chrome.rb +0 -48
  2661. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/chrome/bridge.rb +0 -43
  2662. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/chrome/driver.rb +0 -115
  2663. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/chrome/options.rb +0 -183
  2664. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/chrome/profile.rb +0 -109
  2665. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/chrome/service.rb +0 -59
  2666. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common.rb +0 -73
  2667. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/action_builder.rb +0 -363
  2668. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/alert.rb +0 -45
  2669. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/bridge_helper.rb +0 -79
  2670. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/driver.rb +0 -293
  2671. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/driver_extensions/has_addons.rb +0 -48
  2672. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/driver_extensions/has_debugger.rb +0 -40
  2673. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/driver_extensions/has_location.rb +0 -40
  2674. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/driver_extensions/has_network_conditions.rb +0 -49
  2675. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/driver_extensions/has_network_connection.rb +0 -56
  2676. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/driver_extensions/has_permissions.rb +0 -49
  2677. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/driver_extensions/has_remote_status.rb +0 -28
  2678. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/driver_extensions/has_session_id.rb +0 -37
  2679. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/driver_extensions/has_touch_screen.rb +0 -34
  2680. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/driver_extensions/has_web_storage.rb +0 -36
  2681. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/driver_extensions/rotatable.rb +0 -59
  2682. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/driver_extensions/takes_screenshot.rb +0 -62
  2683. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/driver_extensions/uploads_files.rb +0 -60
  2684. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/element.rb +0 -333
  2685. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/error.rb +0 -326
  2686. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/file_reaper.rb +0 -65
  2687. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/html5/local_storage.rb +0 -57
  2688. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/html5/session_storage.rb +0 -59
  2689. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/html5/shared_web_storage.rb +0 -50
  2690. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/interactions/input_device.rb +0 -51
  2691. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/interactions/interaction.rb +0 -50
  2692. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/interactions/interactions.rb +0 -41
  2693. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/interactions/key_actions.rb +0 -143
  2694. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/interactions/key_input.rb +0 -62
  2695. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/interactions/none_input.rb +0 -33
  2696. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/interactions/pointer_actions.rb +0 -353
  2697. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/interactions/pointer_input.rb +0 -132
  2698. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/keyboard.rb +0 -67
  2699. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/keys.rb +0 -143
  2700. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/log_entry.rb +0 -46
  2701. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/logger.rb +0 -140
  2702. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/logs.rb +0 -38
  2703. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/mouse.rb +0 -86
  2704. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/navigation.rb +0 -58
  2705. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/options.rb +0 -151
  2706. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/platform.rb +0 -221
  2707. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/port_prober.rb +0 -60
  2708. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/profile_helper.rb +0 -81
  2709. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/proxy.rb +0 -154
  2710. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/search_context.rb +0 -110
  2711. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/service.rb +0 -161
  2712. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/socket_lock.rb +0 -75
  2713. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/socket_poller.rb +0 -117
  2714. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/target_locator.rb +0 -109
  2715. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/timeouts.rb +0 -53
  2716. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/touch_action_builder.rb +0 -79
  2717. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/touch_screen.rb +0 -120
  2718. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/w3c_action_builder.rb +0 -209
  2719. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/w3c_options.rb +0 -43
  2720. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/wait.rb +0 -75
  2721. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/window.rb +0 -161
  2722. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/common/zipper.rb +0 -97
  2723. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/edge.rb +0 -37
  2724. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/edge/bridge.rb +0 -74
  2725. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/edge/driver.rb +0 -73
  2726. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/edge/service.rb +0 -55
  2727. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/firefox.rb +0 -60
  2728. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/firefox/binary.rb +0 -186
  2729. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/firefox/driver.rb +0 -48
  2730. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/firefox/extension.rb +0 -95
  2731. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/firefox/extension/prefs.json +0 -70
  2732. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/firefox/extension/webdriver.xpi +0 -0
  2733. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/firefox/launcher.rb +0 -108
  2734. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/firefox/legacy/driver.rb +0 -79
  2735. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/firefox/marionette/bridge.rb +0 -47
  2736. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/firefox/marionette/driver.rb +0 -96
  2737. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/firefox/native/linux/amd64/x_ignore_nofocus.so +0 -0
  2738. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/firefox/native/linux/x86/x_ignore_nofocus.so +0 -0
  2739. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/firefox/options.rb +0 -149
  2740. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/firefox/profile.rb +0 -282
  2741. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/firefox/profiles_ini.rb +0 -71
  2742. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/firefox/service.rb +0 -63
  2743. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/firefox/util.rb +0 -44
  2744. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/ie.rb +0 -35
  2745. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/ie/driver.rb +0 -91
  2746. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/ie/options.rb +0 -136
  2747. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/ie/service.rb +0 -58
  2748. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/remote.rb +0 -33
  2749. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/remote/bridge.rb +0 -190
  2750. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/remote/capabilities.rb +0 -269
  2751. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/remote/driver.rb +0 -49
  2752. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/remote/http/common.rb +0 -98
  2753. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/remote/http/curb.rb +0 -95
  2754. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/remote/http/default.rb +0 -176
  2755. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/remote/http/persistent.rb +0 -58
  2756. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/remote/oss/bridge.rb +0 -586
  2757. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/remote/oss/commands.rb +0 -221
  2758. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/remote/response.rb +0 -128
  2759. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/remote/server_error.rb +0 -32
  2760. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/remote/w3c/bridge.rb +0 -573
  2761. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/remote/w3c/capabilities.rb +0 -293
  2762. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/remote/w3c/commands.rb +0 -148
  2763. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/safari.rb +0 -57
  2764. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/safari/bridge.rb +0 -49
  2765. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/safari/driver.rb +0 -61
  2766. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/safari/service.rb +0 -57
  2767. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/support.rb +0 -23
  2768. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/support/abstract_event_listener.rb +0 -85
  2769. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/support/block_event_listener.rb +0 -32
  2770. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/support/color.rb +0 -144
  2771. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/support/escaper.rb +0 -41
  2772. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/support/event_firing_bridge.rb +0 -127
  2773. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/support/select.rb +0 -269
  2774. data/vendor/bundle/gems/selenium-webdriver-3.12.0/lib/selenium/webdriver/version.rb +0 -22
  2775. data/vendor/bundle/gems/selenium-webdriver-3.12.0/selenium-webdriver.gemspec +0 -40
  2776. data/vendor/bundle/gems/sequel-5.9.0/CHANGELOG +0 -2237
  2777. data/vendor/bundle/gems/sequel-5.9.0/MIT-LICENSE +0 -19
  2778. data/vendor/bundle/gems/sequel-5.9.0/README.rdoc +0 -902
  2779. data/vendor/bundle/gems/sequel-5.9.0/Rakefile +0 -151
  2780. data/vendor/bundle/gems/sequel-5.9.0/bin/sequel +0 -263
  2781. data/vendor/bundle/gems/sequel-5.9.0/doc/advanced_associations.rdoc +0 -764
  2782. data/vendor/bundle/gems/sequel-5.9.0/doc/association_basics.rdoc +0 -1759
  2783. data/vendor/bundle/gems/sequel-5.9.0/doc/bin_sequel.rdoc +0 -146
  2784. data/vendor/bundle/gems/sequel-5.9.0/doc/cheat_sheet.rdoc +0 -246
  2785. data/vendor/bundle/gems/sequel-5.9.0/doc/code_order.rdoc +0 -104
  2786. data/vendor/bundle/gems/sequel-5.9.0/doc/core_extensions.rdoc +0 -405
  2787. data/vendor/bundle/gems/sequel-5.9.0/doc/dataset_basics.rdoc +0 -96
  2788. data/vendor/bundle/gems/sequel-5.9.0/doc/dataset_filtering.rdoc +0 -207
  2789. data/vendor/bundle/gems/sequel-5.9.0/doc/extensions.rdoc +0 -77
  2790. data/vendor/bundle/gems/sequel-5.9.0/doc/mass_assignment.rdoc +0 -98
  2791. data/vendor/bundle/gems/sequel-5.9.0/doc/migration.rdoc +0 -639
  2792. data/vendor/bundle/gems/sequel-5.9.0/doc/model_dataset_method_design.rdoc +0 -129
  2793. data/vendor/bundle/gems/sequel-5.9.0/doc/model_hooks.rdoc +0 -254
  2794. data/vendor/bundle/gems/sequel-5.9.0/doc/model_plugins.rdoc +0 -270
  2795. data/vendor/bundle/gems/sequel-5.9.0/doc/mssql_stored_procedures.rdoc +0 -43
  2796. data/vendor/bundle/gems/sequel-5.9.0/doc/object_model.rdoc +0 -563
  2797. data/vendor/bundle/gems/sequel-5.9.0/doc/opening_databases.rdoc +0 -396
  2798. data/vendor/bundle/gems/sequel-5.9.0/doc/postgresql.rdoc +0 -498
  2799. data/vendor/bundle/gems/sequel-5.9.0/doc/prepared_statements.rdoc +0 -144
  2800. data/vendor/bundle/gems/sequel-5.9.0/doc/querying.rdoc +0 -1063
  2801. data/vendor/bundle/gems/sequel-5.9.0/doc/reflection.rdoc +0 -120
  2802. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.0.0.txt +0 -262
  2803. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.1.0.txt +0 -85
  2804. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.10.0.txt +0 -226
  2805. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.11.0.txt +0 -147
  2806. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.12.0.txt +0 -105
  2807. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.13.0.txt +0 -169
  2808. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.14.0.txt +0 -68
  2809. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.15.0.txt +0 -56
  2810. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.16.0.txt +0 -36
  2811. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.17.0.txt +0 -38
  2812. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.18.0.txt +0 -36
  2813. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.19.0.txt +0 -45
  2814. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.2.0.txt +0 -129
  2815. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.20.0.txt +0 -79
  2816. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.21.0.txt +0 -94
  2817. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.22.0.txt +0 -72
  2818. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.23.0.txt +0 -65
  2819. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.24.0.txt +0 -99
  2820. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.25.0.txt +0 -181
  2821. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.26.0.txt +0 -44
  2822. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.27.0.txt +0 -78
  2823. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.28.0.txt +0 -57
  2824. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.29.0.txt +0 -41
  2825. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.3.0.txt +0 -40
  2826. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.30.0.txt +0 -37
  2827. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.31.0.txt +0 -57
  2828. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.32.0.txt +0 -132
  2829. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.33.0.txt +0 -88
  2830. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.34.0.txt +0 -86
  2831. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.35.0.txt +0 -130
  2832. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.36.0.txt +0 -116
  2833. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.37.0.txt +0 -50
  2834. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.38.0.txt +0 -67
  2835. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.39.0.txt +0 -127
  2836. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.4.0.txt +0 -92
  2837. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.40.0.txt +0 -179
  2838. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.41.0.txt +0 -77
  2839. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.42.0.txt +0 -221
  2840. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.43.0.txt +0 -87
  2841. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.44.0.txt +0 -125
  2842. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.45.0.txt +0 -370
  2843. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.46.0.txt +0 -404
  2844. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.47.0.txt +0 -56
  2845. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.48.0.txt +0 -293
  2846. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.49.0.txt +0 -222
  2847. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.5.0.txt +0 -34
  2848. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.6.0.txt +0 -30
  2849. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.7.0.txt +0 -103
  2850. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.8.0.txt +0 -175
  2851. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/4.9.0.txt +0 -190
  2852. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/5.0.0.txt +0 -159
  2853. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/5.1.0.txt +0 -31
  2854. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/5.2.0.txt +0 -33
  2855. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/5.3.0.txt +0 -121
  2856. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/5.4.0.txt +0 -80
  2857. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/5.5.0.txt +0 -61
  2858. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/5.6.0.txt +0 -31
  2859. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/5.7.0.txt +0 -108
  2860. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/5.8.0.txt +0 -170
  2861. data/vendor/bundle/gems/sequel-5.9.0/doc/release_notes/5.9.0.txt +0 -99
  2862. data/vendor/bundle/gems/sequel-5.9.0/doc/schema_modification.rdoc +0 -679
  2863. data/vendor/bundle/gems/sequel-5.9.0/doc/security.rdoc +0 -433
  2864. data/vendor/bundle/gems/sequel-5.9.0/doc/sharding.rdoc +0 -270
  2865. data/vendor/bundle/gems/sequel-5.9.0/doc/sql.rdoc +0 -624
  2866. data/vendor/bundle/gems/sequel-5.9.0/doc/testing.rdoc +0 -170
  2867. data/vendor/bundle/gems/sequel-5.9.0/doc/thread_safety.rdoc +0 -15
  2868. data/vendor/bundle/gems/sequel-5.9.0/doc/transactions.rdoc +0 -172
  2869. data/vendor/bundle/gems/sequel-5.9.0/doc/validations.rdoc +0 -558
  2870. data/vendor/bundle/gems/sequel-5.9.0/doc/virtual_rows.rdoc +0 -265
  2871. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel.rb +0 -3
  2872. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/ado.rb +0 -275
  2873. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/ado/access.rb +0 -335
  2874. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/ado/mssql.rb +0 -65
  2875. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/amalgalite.rb +0 -171
  2876. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/ibmdb.rb +0 -422
  2877. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/jdbc.rb +0 -802
  2878. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/jdbc/db2.rb +0 -83
  2879. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/jdbc/derby.rb +0 -310
  2880. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/jdbc/h2.rb +0 -237
  2881. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/jdbc/hsqldb.rb +0 -220
  2882. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/jdbc/jtds.rb +0 -39
  2883. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/jdbc/mssql.rb +0 -30
  2884. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/jdbc/mysql.rb +0 -89
  2885. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/jdbc/oracle.rb +0 -145
  2886. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/jdbc/postgresql.rb +0 -242
  2887. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/jdbc/sqlanywhere.rb +0 -73
  2888. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/jdbc/sqlite.rb +0 -102
  2889. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/jdbc/sqlserver.rb +0 -87
  2890. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/jdbc/transactions.rb +0 -109
  2891. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/mock.rb +0 -381
  2892. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/mysql.rb +0 -356
  2893. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/mysql2.rb +0 -293
  2894. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/odbc.rb +0 -148
  2895. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/odbc/db2.rb +0 -11
  2896. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/odbc/mssql.rb +0 -57
  2897. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/odbc/oracle.rb +0 -11
  2898. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/oracle.rb +0 -410
  2899. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/postgres.rb +0 -782
  2900. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/postgresql.rb +0 -3
  2901. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/shared/access.rb +0 -285
  2902. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/shared/db2.rb +0 -457
  2903. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/shared/mssql.rb +0 -1073
  2904. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/shared/mysql.rb +0 -1040
  2905. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/shared/oracle.rb +0 -646
  2906. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/shared/postgres.rb +0 -1953
  2907. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/shared/sqlanywhere.rb +0 -441
  2908. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/shared/sqlite.rb +0 -796
  2909. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/sqlanywhere.rb +0 -176
  2910. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/sqlite.rb +0 -366
  2911. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/tinytds.rb +0 -251
  2912. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/utils/emulate_offset_with_reverse_and_count.rb +0 -77
  2913. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/utils/emulate_offset_with_row_number.rb +0 -93
  2914. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/utils/mysql_mysql2.rb +0 -83
  2915. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/utils/mysql_prepared_statements.rb +0 -56
  2916. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/utils/replace.rb +0 -35
  2917. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/utils/split_alter_table.rb +0 -46
  2918. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/utils/stored_procedures.rb +0 -61
  2919. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/adapters/utils/unmodified_identifiers.rb +0 -28
  2920. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/ast_transformer.rb +0 -124
  2921. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/connection_pool.rb +0 -148
  2922. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/connection_pool/sharded_single.rb +0 -112
  2923. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/connection_pool/sharded_threaded.rb +0 -368
  2924. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/connection_pool/single.rb +0 -59
  2925. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/connection_pool/threaded.rb +0 -282
  2926. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/core.rb +0 -429
  2927. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/database.rb +0 -37
  2928. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/database/connecting.rb +0 -332
  2929. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/database/dataset.rb +0 -79
  2930. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/database/dataset_defaults.rb +0 -93
  2931. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/database/features.rb +0 -150
  2932. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/database/logging.rb +0 -85
  2933. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/database/misc.rb +0 -537
  2934. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/database/query.rb +0 -363
  2935. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/database/schema_generator.rb +0 -637
  2936. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/database/schema_methods.rb +0 -1052
  2937. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/database/transactions.rb +0 -442
  2938. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/dataset.rb +0 -54
  2939. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/dataset/actions.rb +0 -1233
  2940. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/dataset/dataset_module.rb +0 -46
  2941. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/dataset/features.rb +0 -226
  2942. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/dataset/graph.rb +0 -280
  2943. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/dataset/misc.rb +0 -357
  2944. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/dataset/placeholder_literalizer.rb +0 -190
  2945. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/dataset/prepared_statements.rb +0 -357
  2946. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/dataset/query.rb +0 -1353
  2947. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/dataset/sql.rb +0 -1539
  2948. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/deprecated.rb +0 -68
  2949. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/exceptions.rb +0 -123
  2950. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/_model_constraint_validations.rb +0 -16
  2951. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/_model_pg_row.rb +0 -43
  2952. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/_pretty_table.rb +0 -86
  2953. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/arbitrary_servers.rb +0 -114
  2954. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/auto_literal_strings.rb +0 -74
  2955. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/blank.rb +0 -49
  2956. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/columns_introspection.rb +0 -89
  2957. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/connection_expiration.rb +0 -99
  2958. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/connection_validator.rb +0 -122
  2959. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/constraint_validations.rb +0 -485
  2960. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/core_extensions.rb +0 -222
  2961. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/core_refinements.rb +0 -217
  2962. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/current_datetime_timestamp.rb +0 -59
  2963. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/dataset_source_alias.rb +0 -95
  2964. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/date_arithmetic.rb +0 -214
  2965. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/datetime_parse_to_time.rb +0 -37
  2966. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/duplicate_columns_handler.rb +0 -92
  2967. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/empty_array_consider_nulls.rb +0 -39
  2968. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/error_sql.rb +0 -76
  2969. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/escaped_like.rb +0 -100
  2970. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/eval_inspect.rb +0 -181
  2971. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/freeze_datasets.rb +0 -3
  2972. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/from_block.rb +0 -3
  2973. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/graph_each.rb +0 -88
  2974. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/identifier_mangling.rb +0 -180
  2975. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/implicit_subquery.rb +0 -48
  2976. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/index_caching.rb +0 -107
  2977. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/inflector.rb +0 -250
  2978. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/integer64.rb +0 -30
  2979. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/looser_typecasting.rb +0 -54
  2980. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/migration.rb +0 -785
  2981. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/mssql_emulate_lateral_with_apply.rb +0 -84
  2982. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/named_timezones.rb +0 -103
  2983. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/no_auto_literal_strings.rb +0 -4
  2984. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/null_dataset.rb +0 -109
  2985. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/pagination.rb +0 -140
  2986. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/pg_array.rb +0 -518
  2987. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/pg_array_ops.rb +0 -328
  2988. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/pg_enum.rb +0 -184
  2989. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/pg_extended_date_support.rb +0 -243
  2990. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/pg_hstore.rb +0 -342
  2991. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/pg_hstore_ops.rb +0 -361
  2992. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/pg_inet.rb +0 -127
  2993. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/pg_inet_ops.rb +0 -204
  2994. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/pg_interval.rb +0 -196
  2995. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/pg_json.rb +0 -382
  2996. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/pg_json_ops.rb +0 -513
  2997. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/pg_loose_count.rb +0 -37
  2998. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/pg_range.rb +0 -563
  2999. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/pg_range_ops.rb +0 -165
  3000. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/pg_row.rb +0 -580
  3001. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/pg_row_ops.rb +0 -193
  3002. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/pg_static_cache_updater.rb +0 -144
  3003. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/pg_timestamptz.rb +0 -26
  3004. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/pretty_table.rb +0 -40
  3005. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/query.rb +0 -82
  3006. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/round_timestamps.rb +0 -49
  3007. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/s.rb +0 -57
  3008. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/schema_caching.rb +0 -88
  3009. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/schema_dumper.rb +0 -498
  3010. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/select_remove.rb +0 -52
  3011. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/sequel_4_dataset_methods.rb +0 -83
  3012. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/server_block.rb +0 -171
  3013. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/server_logging.rb +0 -61
  3014. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/split_array_nil.rb +0 -70
  3015. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/sql_comments.rb +0 -96
  3016. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/sql_expr.rb +0 -23
  3017. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/string_agg.rb +0 -181
  3018. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/string_date_time.rb +0 -52
  3019. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/symbol_aref.rb +0 -53
  3020. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/symbol_aref_refinement.rb +0 -41
  3021. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/symbol_as.rb +0 -23
  3022. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/symbol_as_refinement.rb +0 -35
  3023. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/synchronize_sql.rb +0 -45
  3024. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/thread_local_timezones.rb +0 -59
  3025. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/to_dot.rb +0 -158
  3026. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/extensions/virtual_row_method_block.rb +0 -44
  3027. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/model.rb +0 -83
  3028. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/model/associations.rb +0 -3470
  3029. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/model/base.rb +0 -2174
  3030. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/model/dataset_module.rb +0 -33
  3031. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/model/default_inflections.rb +0 -47
  3032. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/model/errors.rb +0 -58
  3033. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/model/exceptions.rb +0 -55
  3034. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/model/inflections.rb +0 -151
  3035. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/model/plugins.rb +0 -55
  3036. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/accessed_columns.rb +0 -63
  3037. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/active_model.rb +0 -124
  3038. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/after_initialize.rb +0 -39
  3039. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/association_dependencies.rb +0 -106
  3040. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/association_pks.rb +0 -264
  3041. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/association_proxies.rb +0 -125
  3042. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/auto_validations.rb +0 -211
  3043. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/before_after_save.rb +0 -8
  3044. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/blacklist_security.rb +0 -105
  3045. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/boolean_readers.rb +0 -59
  3046. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/boolean_subsets.rb +0 -61
  3047. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/caching.rb +0 -161
  3048. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/class_table_inheritance.rb +0 -411
  3049. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/column_conflicts.rb +0 -108
  3050. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/column_select.rb +0 -61
  3051. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/columns_updated.rb +0 -42
  3052. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/composition.rb +0 -195
  3053. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/constraint_validations.rb +0 -250
  3054. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/csv_serializer.rb +0 -177
  3055. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/dataset_associations.rb +0 -149
  3056. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/def_dataset_method.rb +0 -90
  3057. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/defaults_setter.rb +0 -130
  3058. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/delay_add_association.rb +0 -53
  3059. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/dirty.rb +0 -238
  3060. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/eager_each.rb +0 -88
  3061. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/error_splitter.rb +0 -61
  3062. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/finder.rb +0 -246
  3063. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/force_encoding.rb +0 -78
  3064. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/hook_class_methods.rb +0 -98
  3065. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/input_transformer.rb +0 -89
  3066. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/insert_returning_select.rb +0 -72
  3067. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/instance_filters.rb +0 -135
  3068. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/instance_hooks.rb +0 -115
  3069. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/inverted_subsets.rb +0 -59
  3070. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/json_serializer.rb +0 -429
  3071. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/lazy_attributes.rb +0 -123
  3072. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/list.rb +0 -191
  3073. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/many_through_many.rb +0 -338
  3074. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/modification_detection.rb +0 -102
  3075. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/mssql_optimistic_locking.rb +0 -95
  3076. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/nested_attributes.rb +0 -308
  3077. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/optimistic_locking.rb +0 -85
  3078. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/pg_array_associations.rb +0 -559
  3079. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/pg_auto_constraint_validations.rb +0 -260
  3080. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/pg_row.rb +0 -79
  3081. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/prepared_statements.rb +0 -192
  3082. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/prepared_statements_safe.rb +0 -83
  3083. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/rcte_tree.rb +0 -332
  3084. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/serialization.rb +0 -230
  3085. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/serialization_modification_detection.rb +0 -86
  3086. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/sharding.rb +0 -120
  3087. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/single_table_inheritance.rb +0 -256
  3088. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/singular_table_names.rb +0 -33
  3089. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/skip_create_refresh.rb +0 -37
  3090. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/split_values.rb +0 -71
  3091. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/static_cache.rb +0 -245
  3092. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/string_stripper.rb +0 -59
  3093. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/subclasses.rb +0 -77
  3094. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/subset_conditions.rb +0 -48
  3095. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/table_select.rb +0 -43
  3096. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/tactical_eager_loading.rb +0 -128
  3097. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/timestamps.rb +0 -109
  3098. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/touch.rb +0 -153
  3099. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/tree.rb +0 -165
  3100. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/typecast_on_load.rb +0 -89
  3101. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/unlimited_update.rb +0 -27
  3102. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/update_or_create.rb +0 -64
  3103. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/update_primary_key.rb +0 -72
  3104. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/update_refresh.rb +0 -88
  3105. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/uuid.rb +0 -70
  3106. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/validate_associated.rb +0 -75
  3107. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/validation_class_methods.rb +0 -454
  3108. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/validation_contexts.rb +0 -49
  3109. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/validation_helpers.rb +0 -317
  3110. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/whitelist_security.rb +0 -122
  3111. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/plugins/xml_serializer.rb +0 -411
  3112. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/sql.rb +0 -1959
  3113. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/timezones.rb +0 -210
  3114. data/vendor/bundle/gems/sequel-5.9.0/lib/sequel/version.rb +0 -23
  3115. data/vendor/bundle/gems/sequel-5.9.0/spec/adapter_spec.rb +0 -4
  3116. data/vendor/bundle/gems/sequel-5.9.0/spec/adapters/db2_spec.rb +0 -170
  3117. data/vendor/bundle/gems/sequel-5.9.0/spec/adapters/mssql_spec.rb +0 -804
  3118. data/vendor/bundle/gems/sequel-5.9.0/spec/adapters/mysql_spec.rb +0 -1065
  3119. data/vendor/bundle/gems/sequel-5.9.0/spec/adapters/oracle_spec.rb +0 -327
  3120. data/vendor/bundle/gems/sequel-5.9.0/spec/adapters/postgres_spec.rb +0 -4000
  3121. data/vendor/bundle/gems/sequel-5.9.0/spec/adapters/spec_helper.rb +0 -43
  3122. data/vendor/bundle/gems/sequel-5.9.0/spec/adapters/sqlanywhere_spec.rb +0 -97
  3123. data/vendor/bundle/gems/sequel-5.9.0/spec/adapters/sqlite_spec.rb +0 -600
  3124. data/vendor/bundle/gems/sequel-5.9.0/spec/bin_spec.rb +0 -269
  3125. data/vendor/bundle/gems/sequel-5.9.0/spec/core/connection_pool_spec.rb +0 -1250
  3126. data/vendor/bundle/gems/sequel-5.9.0/spec/core/database_spec.rb +0 -2673
  3127. data/vendor/bundle/gems/sequel-5.9.0/spec/core/dataset_spec.rb +0 -5430
  3128. data/vendor/bundle/gems/sequel-5.9.0/spec/core/deprecated_spec.rb +0 -70
  3129. data/vendor/bundle/gems/sequel-5.9.0/spec/core/expression_filters_spec.rb +0 -1344
  3130. data/vendor/bundle/gems/sequel-5.9.0/spec/core/mock_adapter_spec.rb +0 -722
  3131. data/vendor/bundle/gems/sequel-5.9.0/spec/core/object_graph_spec.rb +0 -306
  3132. data/vendor/bundle/gems/sequel-5.9.0/spec/core/placeholder_literalizer_spec.rb +0 -166
  3133. data/vendor/bundle/gems/sequel-5.9.0/spec/core/schema_generator_spec.rb +0 -214
  3134. data/vendor/bundle/gems/sequel-5.9.0/spec/core/schema_spec.rb +0 -1820
  3135. data/vendor/bundle/gems/sequel-5.9.0/spec/core/spec_helper.rb +0 -23
  3136. data/vendor/bundle/gems/sequel-5.9.0/spec/core/version_spec.rb +0 -14
  3137. data/vendor/bundle/gems/sequel-5.9.0/spec/core_extensions_spec.rb +0 -762
  3138. data/vendor/bundle/gems/sequel-5.9.0/spec/core_model_spec.rb +0 -2
  3139. data/vendor/bundle/gems/sequel-5.9.0/spec/core_spec.rb +0 -1
  3140. data/vendor/bundle/gems/sequel-5.9.0/spec/deprecation_helper.rb +0 -30
  3141. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/accessed_columns_spec.rb +0 -51
  3142. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/active_model_spec.rb +0 -99
  3143. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/after_initialize_spec.rb +0 -24
  3144. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/arbitrary_servers_spec.rb +0 -109
  3145. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/association_dependencies_spec.rb +0 -125
  3146. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/association_pks_spec.rb +0 -423
  3147. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/association_proxies_spec.rb +0 -100
  3148. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/auto_literal_strings_spec.rb +0 -205
  3149. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/auto_validations_spec.rb +0 -202
  3150. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/blacklist_security_spec.rb +0 -95
  3151. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/blank_spec.rb +0 -69
  3152. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/boolean_readers_spec.rb +0 -93
  3153. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/boolean_subsets_spec.rb +0 -47
  3154. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/caching_spec.rb +0 -273
  3155. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/class_table_inheritance_spec.rb +0 -568
  3156. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/column_conflicts_spec.rb +0 -75
  3157. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/column_select_spec.rb +0 -129
  3158. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/columns_introspection_spec.rb +0 -90
  3159. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/columns_updated_spec.rb +0 -35
  3160. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/composition_spec.rb +0 -248
  3161. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/connection_expiration_spec.rb +0 -151
  3162. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/connection_validator_spec.rb +0 -144
  3163. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/constraint_validations_plugin_spec.rb +0 -300
  3164. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/constraint_validations_spec.rb +0 -395
  3165. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/core_refinements_spec.rb +0 -528
  3166. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/csv_serializer_spec.rb +0 -183
  3167. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/current_datetime_timestamp_spec.rb +0 -27
  3168. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/dataset_associations_spec.rb +0 -365
  3169. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/dataset_source_alias_spec.rb +0 -51
  3170. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/date_arithmetic_spec.rb +0 -181
  3171. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/datetime_parse_to_time_spec.rb +0 -169
  3172. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/def_dataset_method_spec.rb +0 -100
  3173. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/defaults_setter_spec.rb +0 -141
  3174. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/delay_add_association_spec.rb +0 -73
  3175. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/dirty_spec.rb +0 -189
  3176. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/duplicate_columns_handler_spec.rb +0 -104
  3177. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/eager_each_spec.rb +0 -62
  3178. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/empty_array_consider_nulls_spec.rb +0 -24
  3179. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/error_splitter_spec.rb +0 -18
  3180. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/error_sql_spec.rb +0 -20
  3181. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/escaped_like_spec.rb +0 -40
  3182. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/eval_inspect_spec.rb +0 -74
  3183. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/finder_spec.rb +0 -260
  3184. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/force_encoding_spec.rb +0 -126
  3185. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/freeze_datasets_spec.rb +0 -31
  3186. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/graph_each_spec.rb +0 -113
  3187. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/hook_class_methods_spec.rb +0 -380
  3188. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/identifier_mangling_spec.rb +0 -201
  3189. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/implicit_subquery_spec.rb +0 -58
  3190. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/index_caching_spec.rb +0 -66
  3191. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/inflector_spec.rb +0 -183
  3192. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/input_transformer_spec.rb +0 -69
  3193. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/insert_returning_select_spec.rb +0 -72
  3194. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/instance_filters_spec.rb +0 -79
  3195. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/instance_hooks_spec.rb +0 -246
  3196. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/integer64_spec.rb +0 -22
  3197. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/inverted_subsets_spec.rb +0 -33
  3198. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/json_serializer_spec.rb +0 -336
  3199. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/lazy_attributes_spec.rb +0 -183
  3200. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/list_spec.rb +0 -275
  3201. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/looser_typecasting_spec.rb +0 -43
  3202. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/many_through_many_spec.rb +0 -2177
  3203. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/migration_spec.rb +0 -840
  3204. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/modification_detection_spec.rb +0 -93
  3205. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/mssql_optimistic_locking_spec.rb +0 -92
  3206. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/named_timezones_spec.rb +0 -109
  3207. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/nested_attributes_spec.rb +0 -709
  3208. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/null_dataset_spec.rb +0 -85
  3209. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/optimistic_locking_spec.rb +0 -127
  3210. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/pagination_spec.rb +0 -116
  3211. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/pg_array_associations_spec.rb +0 -802
  3212. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/pg_array_ops_spec.rb +0 -144
  3213. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/pg_array_spec.rb +0 -398
  3214. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/pg_auto_constraint_validations_spec.rb +0 -164
  3215. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/pg_enum_spec.rb +0 -113
  3216. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/pg_extended_date_support_spec.rb +0 -126
  3217. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/pg_hstore_ops_spec.rb +0 -238
  3218. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/pg_hstore_spec.rb +0 -219
  3219. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/pg_inet_ops_spec.rb +0 -102
  3220. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/pg_inet_spec.rb +0 -72
  3221. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/pg_interval_spec.rb +0 -103
  3222. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/pg_json_ops_spec.rb +0 -289
  3223. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/pg_json_spec.rb +0 -262
  3224. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/pg_loose_count_spec.rb +0 -23
  3225. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/pg_range_ops_spec.rb +0 -60
  3226. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/pg_range_spec.rb +0 -487
  3227. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/pg_row_ops_spec.rb +0 -61
  3228. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/pg_row_plugin_spec.rb +0 -60
  3229. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/pg_row_spec.rb +0 -363
  3230. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/pg_static_cache_updater_spec.rb +0 -93
  3231. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/pg_timestamptz_spec.rb +0 -17
  3232. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/prepared_statements_safe_spec.rb +0 -66
  3233. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/prepared_statements_spec.rb +0 -182
  3234. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/pretty_table_spec.rb +0 -123
  3235. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/query_spec.rb +0 -94
  3236. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/rcte_tree_spec.rb +0 -381
  3237. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/round_timestamps_spec.rb +0 -39
  3238. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/s_spec.rb +0 -60
  3239. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/schema_caching_spec.rb +0 -64
  3240. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/schema_dumper_spec.rb +0 -868
  3241. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/select_remove_spec.rb +0 -38
  3242. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/sequel_4_dataset_methods_spec.rb +0 -121
  3243. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/serialization_modification_detection_spec.rb +0 -98
  3244. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/serialization_spec.rb +0 -365
  3245. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/server_block_spec.rb +0 -97
  3246. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/server_logging_spec.rb +0 -45
  3247. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/sharding_spec.rb +0 -189
  3248. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/shared_caching_spec.rb +0 -151
  3249. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/single_table_inheritance_spec.rb +0 -347
  3250. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/singular_table_names_spec.rb +0 -22
  3251. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/skip_create_refresh_spec.rb +0 -18
  3252. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/spec_helper.rb +0 -61
  3253. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/split_array_nil_spec.rb +0 -24
  3254. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/split_values_spec.rb +0 -57
  3255. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/sql_comments_spec.rb +0 -33
  3256. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/sql_expr_spec.rb +0 -59
  3257. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/static_cache_spec.rb +0 -410
  3258. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/string_agg_spec.rb +0 -90
  3259. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/string_date_time_spec.rb +0 -95
  3260. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/string_stripper_spec.rb +0 -68
  3261. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/subclasses_spec.rb +0 -79
  3262. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/subset_conditions_spec.rb +0 -38
  3263. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/symbol_aref_refinement_spec.rb +0 -28
  3264. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/symbol_as_refinement_spec.rb +0 -21
  3265. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/synchronize_sql_spec.rb +0 -124
  3266. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/table_select_spec.rb +0 -83
  3267. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/tactical_eager_loading_spec.rb +0 -141
  3268. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/thread_local_timezones_spec.rb +0 -67
  3269. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/timestamps_spec.rb +0 -209
  3270. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/to_dot_spec.rb +0 -153
  3271. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/touch_spec.rb +0 -226
  3272. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/tree_spec.rb +0 -284
  3273. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/typecast_on_load_spec.rb +0 -86
  3274. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/unlimited_update_spec.rb +0 -21
  3275. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/update_or_create_spec.rb +0 -83
  3276. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/update_primary_key_spec.rb +0 -105
  3277. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/update_refresh_spec.rb +0 -59
  3278. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/uuid_spec.rb +0 -101
  3279. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/validate_associated_spec.rb +0 -52
  3280. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/validation_class_methods_spec.rb +0 -1040
  3281. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/validation_contexts_spec.rb +0 -31
  3282. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/validation_helpers_spec.rb +0 -525
  3283. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/whitelist_security_spec.rb +0 -157
  3284. data/vendor/bundle/gems/sequel-5.9.0/spec/extensions/xml_serializer_spec.rb +0 -213
  3285. data/vendor/bundle/gems/sequel-5.9.0/spec/files/bad_down_migration/001_create_alt_basic.rb +0 -4
  3286. data/vendor/bundle/gems/sequel-5.9.0/spec/files/bad_down_migration/002_create_alt_advanced.rb +0 -4
  3287. data/vendor/bundle/gems/sequel-5.9.0/spec/files/bad_timestamped_migrations/1273253849_create_sessions.rb +0 -9
  3288. data/vendor/bundle/gems/sequel-5.9.0/spec/files/bad_timestamped_migrations/1273253851_create_nodes.rb +0 -9
  3289. data/vendor/bundle/gems/sequel-5.9.0/spec/files/bad_timestamped_migrations/1273253853_3_create_users.rb +0 -3
  3290. data/vendor/bundle/gems/sequel-5.9.0/spec/files/bad_up_migration/001_create_alt_basic.rb +0 -4
  3291. data/vendor/bundle/gems/sequel-5.9.0/spec/files/bad_up_migration/002_create_alt_advanced.rb +0 -3
  3292. data/vendor/bundle/gems/sequel-5.9.0/spec/files/convert_to_timestamp_migrations/001_create_sessions.rb +0 -9
  3293. data/vendor/bundle/gems/sequel-5.9.0/spec/files/convert_to_timestamp_migrations/002_create_nodes.rb +0 -9
  3294. data/vendor/bundle/gems/sequel-5.9.0/spec/files/convert_to_timestamp_migrations/003_3_create_users.rb +0 -4
  3295. data/vendor/bundle/gems/sequel-5.9.0/spec/files/convert_to_timestamp_migrations/1273253850_create_artists.rb +0 -9
  3296. data/vendor/bundle/gems/sequel-5.9.0/spec/files/convert_to_timestamp_migrations/1273253852_create_albums.rb +0 -9
  3297. data/vendor/bundle/gems/sequel-5.9.0/spec/files/double_migration/001_create_sessions.rb +0 -9
  3298. data/vendor/bundle/gems/sequel-5.9.0/spec/files/double_migration/002_create_nodes.rb +0 -19
  3299. data/vendor/bundle/gems/sequel-5.9.0/spec/files/double_migration/003_3_create_users.rb +0 -4
  3300. data/vendor/bundle/gems/sequel-5.9.0/spec/files/duplicate_integer_migrations/001_create_alt_advanced.rb +0 -4
  3301. data/vendor/bundle/gems/sequel-5.9.0/spec/files/duplicate_integer_migrations/001_create_alt_basic.rb +0 -4
  3302. data/vendor/bundle/gems/sequel-5.9.0/spec/files/duplicate_timestamped_migrations/1273253849_create_sessions.rb +0 -9
  3303. data/vendor/bundle/gems/sequel-5.9.0/spec/files/duplicate_timestamped_migrations/1273253853_create_nodes.rb +0 -9
  3304. data/vendor/bundle/gems/sequel-5.9.0/spec/files/duplicate_timestamped_migrations/1273253853_create_users.rb +0 -4
  3305. data/vendor/bundle/gems/sequel-5.9.0/spec/files/empty_migration/001_create_sessions.rb +0 -9
  3306. data/vendor/bundle/gems/sequel-5.9.0/spec/files/empty_migration/002_create_nodes.rb +0 -0
  3307. data/vendor/bundle/gems/sequel-5.9.0/spec/files/empty_migration/003_3_create_users.rb +0 -4
  3308. data/vendor/bundle/gems/sequel-5.9.0/spec/files/integer_migrations/001_create_sessions.rb +0 -9
  3309. data/vendor/bundle/gems/sequel-5.9.0/spec/files/integer_migrations/002_create_nodes.rb +0 -9
  3310. data/vendor/bundle/gems/sequel-5.9.0/spec/files/integer_migrations/003_3_create_users.rb +0 -4
  3311. data/vendor/bundle/gems/sequel-5.9.0/spec/files/interleaved_timestamped_migrations/1273253849_create_sessions.rb +0 -9
  3312. data/vendor/bundle/gems/sequel-5.9.0/spec/files/interleaved_timestamped_migrations/1273253850_create_artists.rb +0 -9
  3313. data/vendor/bundle/gems/sequel-5.9.0/spec/files/interleaved_timestamped_migrations/1273253851_create_nodes.rb +0 -9
  3314. data/vendor/bundle/gems/sequel-5.9.0/spec/files/interleaved_timestamped_migrations/1273253852_create_albums.rb +0 -9
  3315. data/vendor/bundle/gems/sequel-5.9.0/spec/files/interleaved_timestamped_migrations/1273253853_3_create_users.rb +0 -4
  3316. data/vendor/bundle/gems/sequel-5.9.0/spec/files/missing_integer_migrations/001_create_alt_basic.rb +0 -4
  3317. data/vendor/bundle/gems/sequel-5.9.0/spec/files/missing_integer_migrations/003_create_alt_advanced.rb +0 -4
  3318. data/vendor/bundle/gems/sequel-5.9.0/spec/files/missing_timestamped_migrations/1273253849_create_sessions.rb +0 -9
  3319. data/vendor/bundle/gems/sequel-5.9.0/spec/files/missing_timestamped_migrations/1273253853_3_create_users.rb +0 -4
  3320. data/vendor/bundle/gems/sequel-5.9.0/spec/files/reversible_migrations/001_reversible.rb +0 -5
  3321. data/vendor/bundle/gems/sequel-5.9.0/spec/files/reversible_migrations/002_reversible.rb +0 -5
  3322. data/vendor/bundle/gems/sequel-5.9.0/spec/files/reversible_migrations/003_reversible.rb +0 -5
  3323. data/vendor/bundle/gems/sequel-5.9.0/spec/files/reversible_migrations/004_reversible.rb +0 -5
  3324. data/vendor/bundle/gems/sequel-5.9.0/spec/files/reversible_migrations/005_reversible.rb +0 -10
  3325. data/vendor/bundle/gems/sequel-5.9.0/spec/files/reversible_migrations/006_reversible.rb +0 -10
  3326. data/vendor/bundle/gems/sequel-5.9.0/spec/files/reversible_migrations/007_reversible.rb +0 -10
  3327. data/vendor/bundle/gems/sequel-5.9.0/spec/files/timestamped_migrations/1273253849_create_sessions.rb +0 -9
  3328. data/vendor/bundle/gems/sequel-5.9.0/spec/files/timestamped_migrations/1273253851_create_nodes.rb +0 -9
  3329. data/vendor/bundle/gems/sequel-5.9.0/spec/files/timestamped_migrations/1273253853_3_create_users.rb +0 -4
  3330. data/vendor/bundle/gems/sequel-5.9.0/spec/files/transaction_specified_migrations/001_create_alt_basic.rb +0 -4
  3331. data/vendor/bundle/gems/sequel-5.9.0/spec/files/transaction_specified_migrations/002_create_basic.rb +0 -4
  3332. data/vendor/bundle/gems/sequel-5.9.0/spec/files/transaction_unspecified_migrations/001_create_alt_basic.rb +0 -3
  3333. data/vendor/bundle/gems/sequel-5.9.0/spec/files/transaction_unspecified_migrations/002_create_basic.rb +0 -3
  3334. data/vendor/bundle/gems/sequel-5.9.0/spec/files/uppercase_timestamped_migrations/1273253849_CREATE_SESSIONS.RB +0 -9
  3335. data/vendor/bundle/gems/sequel-5.9.0/spec/files/uppercase_timestamped_migrations/1273253851_CREATE_NODES.RB +0 -9
  3336. data/vendor/bundle/gems/sequel-5.9.0/spec/files/uppercase_timestamped_migrations/1273253853_3_CREATE_USERS.RB +0 -4
  3337. data/vendor/bundle/gems/sequel-5.9.0/spec/guards_helper.rb +0 -58
  3338. data/vendor/bundle/gems/sequel-5.9.0/spec/integration/associations_test.rb +0 -2525
  3339. data/vendor/bundle/gems/sequel-5.9.0/spec/integration/database_test.rb +0 -113
  3340. data/vendor/bundle/gems/sequel-5.9.0/spec/integration/dataset_test.rb +0 -1901
  3341. data/vendor/bundle/gems/sequel-5.9.0/spec/integration/eager_loader_test.rb +0 -687
  3342. data/vendor/bundle/gems/sequel-5.9.0/spec/integration/migrator_test.rb +0 -262
  3343. data/vendor/bundle/gems/sequel-5.9.0/spec/integration/model_test.rb +0 -203
  3344. data/vendor/bundle/gems/sequel-5.9.0/spec/integration/plugin_test.rb +0 -2302
  3345. data/vendor/bundle/gems/sequel-5.9.0/spec/integration/prepared_statement_test.rb +0 -398
  3346. data/vendor/bundle/gems/sequel-5.9.0/spec/integration/schema_test.rb +0 -869
  3347. data/vendor/bundle/gems/sequel-5.9.0/spec/integration/spec_helper.rb +0 -64
  3348. data/vendor/bundle/gems/sequel-5.9.0/spec/integration/timezone_test.rb +0 -86
  3349. data/vendor/bundle/gems/sequel-5.9.0/spec/integration/transaction_test.rb +0 -354
  3350. data/vendor/bundle/gems/sequel-5.9.0/spec/integration/type_test.rb +0 -127
  3351. data/vendor/bundle/gems/sequel-5.9.0/spec/model/association_reflection_spec.rb +0 -803
  3352. data/vendor/bundle/gems/sequel-5.9.0/spec/model/associations_spec.rb +0 -4538
  3353. data/vendor/bundle/gems/sequel-5.9.0/spec/model/base_spec.rb +0 -826
  3354. data/vendor/bundle/gems/sequel-5.9.0/spec/model/class_dataset_methods_spec.rb +0 -146
  3355. data/vendor/bundle/gems/sequel-5.9.0/spec/model/dataset_methods_spec.rb +0 -198
  3356. data/vendor/bundle/gems/sequel-5.9.0/spec/model/eager_loading_spec.rb +0 -2287
  3357. data/vendor/bundle/gems/sequel-5.9.0/spec/model/hooks_spec.rb +0 -370
  3358. data/vendor/bundle/gems/sequel-5.9.0/spec/model/inflector_spec.rb +0 -26
  3359. data/vendor/bundle/gems/sequel-5.9.0/spec/model/model_spec.rb +0 -953
  3360. data/vendor/bundle/gems/sequel-5.9.0/spec/model/plugins_spec.rb +0 -318
  3361. data/vendor/bundle/gems/sequel-5.9.0/spec/model/record_spec.rb +0 -2107
  3362. data/vendor/bundle/gems/sequel-5.9.0/spec/model/spec_helper.rb +0 -45
  3363. data/vendor/bundle/gems/sequel-5.9.0/spec/model/validations_spec.rb +0 -193
  3364. data/vendor/bundle/gems/sequel-5.9.0/spec/model_no_assoc_spec.rb +0 -1
  3365. data/vendor/bundle/gems/sequel-5.9.0/spec/model_spec.rb +0 -1
  3366. data/vendor/bundle/gems/sequel-5.9.0/spec/plugin_spec.rb +0 -1
  3367. data/vendor/bundle/gems/sequel-5.9.0/spec/sequel_coverage.rb +0 -15
  3368. data/vendor/bundle/gems/sequel-5.9.0/spec/sequel_warning.rb +0 -4
  3369. data/vendor/bundle/gems/sequel-5.9.0/spec/spec_config.rb +0 -12
  3370. data/vendor/bundle/gems/simplecov-0.14.1/CHANGELOG.md +0 -435
  3371. data/vendor/bundle/gems/simplecov-0.14.1/CONTRIBUTING.md +0 -48
  3372. data/vendor/bundle/gems/simplecov-0.14.1/Gemfile +0 -38
  3373. data/vendor/bundle/gems/simplecov-0.14.1/MIT-LICENSE +0 -20
  3374. data/vendor/bundle/gems/simplecov-0.14.1/README.md +0 -638
  3375. data/vendor/bundle/gems/simplecov-0.14.1/Rakefile +0 -41
  3376. data/vendor/bundle/gems/simplecov-0.14.1/cucumber.yml +0 -13
  3377. data/vendor/bundle/gems/simplecov-0.14.1/doc/alternate-formatters.md +0 -36
  3378. data/vendor/bundle/gems/simplecov-0.14.1/doc/commercial-services.md +0 -20
  3379. data/vendor/bundle/gems/simplecov-0.14.1/doc/editor-integration.md +0 -13
  3380. data/vendor/bundle/gems/simplecov-0.14.1/features/config_autoload.feature +0 -46
  3381. data/vendor/bundle/gems/simplecov-0.14.1/features/config_command_name.feature +0 -45
  3382. data/vendor/bundle/gems/simplecov-0.14.1/features/config_coverage_dir.feature +0 -33
  3383. data/vendor/bundle/gems/simplecov-0.14.1/features/config_deactivate_merging.feature +0 -42
  3384. data/vendor/bundle/gems/simplecov-0.14.1/features/config_formatters.feature +0 -77
  3385. data/vendor/bundle/gems/simplecov-0.14.1/features/config_merge_timeout.feature +0 -39
  3386. data/vendor/bundle/gems/simplecov-0.14.1/features/config_nocov_token.feature +0 -79
  3387. data/vendor/bundle/gems/simplecov-0.14.1/features/config_profiles.feature +0 -44
  3388. data/vendor/bundle/gems/simplecov-0.14.1/features/config_project_name.feature +0 -27
  3389. data/vendor/bundle/gems/simplecov-0.14.1/features/config_styles.feature +0 -121
  3390. data/vendor/bundle/gems/simplecov-0.14.1/features/config_tracked_files.feature +0 -29
  3391. data/vendor/bundle/gems/simplecov-0.14.1/features/cucumber_basic.feature +0 -29
  3392. data/vendor/bundle/gems/simplecov-0.14.1/features/maximum_coverage_drop.feature +0 -89
  3393. data/vendor/bundle/gems/simplecov-0.14.1/features/merging_test_unit_and_rspec.feature +0 -44
  3394. data/vendor/bundle/gems/simplecov-0.14.1/features/minimum_coverage.feature +0 -59
  3395. data/vendor/bundle/gems/simplecov-0.14.1/features/refuse_coverage_drop.feature +0 -95
  3396. data/vendor/bundle/gems/simplecov-0.14.1/features/rspec_basic.feature +0 -32
  3397. data/vendor/bundle/gems/simplecov-0.14.1/features/rspec_fails_on_initialization.feature +0 -14
  3398. data/vendor/bundle/gems/simplecov-0.14.1/features/rspec_groups_and_filters_basic.feature +0 -29
  3399. data/vendor/bundle/gems/simplecov-0.14.1/features/rspec_groups_and_filters_complex.feature +0 -37
  3400. data/vendor/bundle/gems/simplecov-0.14.1/features/rspec_groups_using_filter_class.feature +0 -41
  3401. data/vendor/bundle/gems/simplecov-0.14.1/features/rspec_without_simplecov.feature +0 -20
  3402. data/vendor/bundle/gems/simplecov-0.14.1/features/skipping_code_blocks_manually.feature +0 -70
  3403. data/vendor/bundle/gems/simplecov-0.14.1/features/step_definitions/html_steps.rb +0 -44
  3404. data/vendor/bundle/gems/simplecov-0.14.1/features/step_definitions/simplecov_steps.rb +0 -68
  3405. data/vendor/bundle/gems/simplecov-0.14.1/features/step_definitions/transformers.rb +0 -13
  3406. data/vendor/bundle/gems/simplecov-0.14.1/features/step_definitions/web_steps.rb +0 -64
  3407. data/vendor/bundle/gems/simplecov-0.14.1/features/support/env.rb +0 -50
  3408. data/vendor/bundle/gems/simplecov-0.14.1/features/test_unit_basic.feature +0 -34
  3409. data/vendor/bundle/gems/simplecov-0.14.1/features/test_unit_groups_and_filters_basic.feature +0 -29
  3410. data/vendor/bundle/gems/simplecov-0.14.1/features/test_unit_groups_and_filters_complex.feature +0 -35
  3411. data/vendor/bundle/gems/simplecov-0.14.1/features/test_unit_groups_using_filter_class.feature +0 -40
  3412. data/vendor/bundle/gems/simplecov-0.14.1/features/test_unit_without_simplecov.feature +0 -20
  3413. data/vendor/bundle/gems/simplecov-0.14.1/features/unicode_compatiblity.feature +0 -67
  3414. data/vendor/bundle/gems/simplecov-0.14.1/lib/simplecov.rb +0 -184
  3415. data/vendor/bundle/gems/simplecov-0.14.1/lib/simplecov/command_guesser.rb +0 -59
  3416. data/vendor/bundle/gems/simplecov-0.14.1/lib/simplecov/configuration.rb +0 -307
  3417. data/vendor/bundle/gems/simplecov-0.14.1/lib/simplecov/defaults.rb +0 -121
  3418. data/vendor/bundle/gems/simplecov-0.14.1/lib/simplecov/exit_codes.rb +0 -8
  3419. data/vendor/bundle/gems/simplecov-0.14.1/lib/simplecov/file_list.rb +0 -59
  3420. data/vendor/bundle/gems/simplecov-0.14.1/lib/simplecov/filter.rb +0 -54
  3421. data/vendor/bundle/gems/simplecov-0.14.1/lib/simplecov/formatter.rb +0 -8
  3422. data/vendor/bundle/gems/simplecov-0.14.1/lib/simplecov/formatter/multi_formatter.rb +0 -32
  3423. data/vendor/bundle/gems/simplecov-0.14.1/lib/simplecov/formatter/simple_formatter.rb +0 -23
  3424. data/vendor/bundle/gems/simplecov-0.14.1/lib/simplecov/jruby_fix.rb +0 -42
  3425. data/vendor/bundle/gems/simplecov-0.14.1/lib/simplecov/last_run.rb +0 -24
  3426. data/vendor/bundle/gems/simplecov-0.14.1/lib/simplecov/load_global_config.rb +0 -6
  3427. data/vendor/bundle/gems/simplecov-0.14.1/lib/simplecov/no_defaults.rb +0 -2
  3428. data/vendor/bundle/gems/simplecov-0.14.1/lib/simplecov/profiles.rb +0 -31
  3429. data/vendor/bundle/gems/simplecov-0.14.1/lib/simplecov/railtie.rb +0 -7
  3430. data/vendor/bundle/gems/simplecov-0.14.1/lib/simplecov/railties/tasks.rake +0 -11
  3431. data/vendor/bundle/gems/simplecov-0.14.1/lib/simplecov/raw_coverage.rb +0 -39
  3432. data/vendor/bundle/gems/simplecov-0.14.1/lib/simplecov/result.rb +0 -86
  3433. data/vendor/bundle/gems/simplecov-0.14.1/lib/simplecov/result_merger.rb +0 -92
  3434. data/vendor/bundle/gems/simplecov-0.14.1/lib/simplecov/source_file.rb +0 -196
  3435. data/vendor/bundle/gems/simplecov-0.14.1/lib/simplecov/version.rb +0 -25
  3436. data/vendor/bundle/gems/simplecov-0.14.1/simplecov.gemspec +0 -27
  3437. data/vendor/bundle/gems/simplecov-0.14.1/spec/1_8_fallbacks_spec.rb +0 -31
  3438. data/vendor/bundle/gems/simplecov-0.14.1/spec/command_guesser_spec.rb +0 -48
  3439. data/vendor/bundle/gems/simplecov-0.14.1/spec/config_loader_spec.rb +0 -14
  3440. data/vendor/bundle/gems/simplecov-0.14.1/spec/configuration_spec.rb +0 -35
  3441. data/vendor/bundle/gems/simplecov-0.14.1/spec/deleted_source_spec.rb +0 -12
  3442. data/vendor/bundle/gems/simplecov-0.14.1/spec/faked_project/Gemfile +0 -6
  3443. data/vendor/bundle/gems/simplecov-0.14.1/spec/faked_project/Rakefile +0 -8
  3444. data/vendor/bundle/gems/simplecov-0.14.1/spec/faked_project/cucumber.yml +0 -13
  3445. data/vendor/bundle/gems/simplecov-0.14.1/spec/faked_project/features/step_definitions/my_steps.rb +0 -22
  3446. data/vendor/bundle/gems/simplecov-0.14.1/spec/faked_project/features/support/env.rb +0 -12
  3447. data/vendor/bundle/gems/simplecov-0.14.1/spec/faked_project/features/test_stuff.feature +0 -6
  3448. data/vendor/bundle/gems/simplecov-0.14.1/spec/faked_project/lib/faked_project.rb +0 -11
  3449. data/vendor/bundle/gems/simplecov-0.14.1/spec/faked_project/lib/faked_project/framework_specific.rb +0 -18
  3450. data/vendor/bundle/gems/simplecov-0.14.1/spec/faked_project/lib/faked_project/meta_magic.rb +0 -24
  3451. data/vendor/bundle/gems/simplecov-0.14.1/spec/faked_project/lib/faked_project/some_class.rb +0 -28
  3452. data/vendor/bundle/gems/simplecov-0.14.1/spec/faked_project/lib/faked_project/untested_class.rb +0 -11
  3453. data/vendor/bundle/gems/simplecov-0.14.1/spec/faked_project/spec/faked_spec.rb +0 -11
  3454. data/vendor/bundle/gems/simplecov-0.14.1/spec/faked_project/spec/forking_spec.rb +0 -8
  3455. data/vendor/bundle/gems/simplecov-0.14.1/spec/faked_project/spec/meta_magic_spec.rb +0 -15
  3456. data/vendor/bundle/gems/simplecov-0.14.1/spec/faked_project/spec/some_class_spec.rb +0 -13
  3457. data/vendor/bundle/gems/simplecov-0.14.1/spec/faked_project/spec/spec_helper.rb +0 -11
  3458. data/vendor/bundle/gems/simplecov-0.14.1/spec/faked_project/test/faked_test.rb +0 -11
  3459. data/vendor/bundle/gems/simplecov-0.14.1/spec/faked_project/test/meta_magic_test.rb +0 -13
  3460. data/vendor/bundle/gems/simplecov-0.14.1/spec/faked_project/test/some_class_test.rb +0 -15
  3461. data/vendor/bundle/gems/simplecov-0.14.1/spec/faked_project/test/test_helper.rb +0 -12
  3462. data/vendor/bundle/gems/simplecov-0.14.1/spec/file_list_spec.rb +0 -50
  3463. data/vendor/bundle/gems/simplecov-0.14.1/spec/filters_spec.rb +0 -98
  3464. data/vendor/bundle/gems/simplecov-0.14.1/spec/fixtures/app/controllers/sample_controller.rb +0 -10
  3465. data/vendor/bundle/gems/simplecov-0.14.1/spec/fixtures/app/models/user.rb +0 -10
  3466. data/vendor/bundle/gems/simplecov-0.14.1/spec/fixtures/deleted_source_sample.rb +0 -15
  3467. data/vendor/bundle/gems/simplecov-0.14.1/spec/fixtures/frameworks/rspec_bad.rb +0 -9
  3468. data/vendor/bundle/gems/simplecov-0.14.1/spec/fixtures/frameworks/rspec_good.rb +0 -9
  3469. data/vendor/bundle/gems/simplecov-0.14.1/spec/fixtures/frameworks/testunit_bad.rb +0 -9
  3470. data/vendor/bundle/gems/simplecov-0.14.1/spec/fixtures/frameworks/testunit_good.rb +0 -9
  3471. data/vendor/bundle/gems/simplecov-0.14.1/spec/fixtures/iso-8859.rb +0 -3
  3472. data/vendor/bundle/gems/simplecov-0.14.1/spec/fixtures/never.rb +0 -2
  3473. data/vendor/bundle/gems/simplecov-0.14.1/spec/fixtures/resultset1.rb +0 -4
  3474. data/vendor/bundle/gems/simplecov-0.14.1/spec/fixtures/resultset2.rb +0 -4
  3475. data/vendor/bundle/gems/simplecov-0.14.1/spec/fixtures/sample.rb +0 -16
  3476. data/vendor/bundle/gems/simplecov-0.14.1/spec/fixtures/skipped.rb +0 -4
  3477. data/vendor/bundle/gems/simplecov-0.14.1/spec/fixtures/skipped_and_executed.rb +0 -8
  3478. data/vendor/bundle/gems/simplecov-0.14.1/spec/fixtures/utf-8.rb +0 -3
  3479. data/vendor/bundle/gems/simplecov-0.14.1/spec/helper.rb +0 -26
  3480. data/vendor/bundle/gems/simplecov-0.14.1/spec/last_run_spec.rb +0 -48
  3481. data/vendor/bundle/gems/simplecov-0.14.1/spec/multi_formatter_spec.rb +0 -20
  3482. data/vendor/bundle/gems/simplecov-0.14.1/spec/raw_coverage_spec.rb +0 -92
  3483. data/vendor/bundle/gems/simplecov-0.14.1/spec/result_merger_spec.rb +0 -88
  3484. data/vendor/bundle/gems/simplecov-0.14.1/spec/result_spec.rb +0 -209
  3485. data/vendor/bundle/gems/simplecov-0.14.1/spec/return_codes_spec.rb +0 -34
  3486. data/vendor/bundle/gems/simplecov-0.14.1/spec/source_file_line_spec.rb +0 -155
  3487. data/vendor/bundle/gems/simplecov-0.14.1/spec/source_file_spec.rb +0 -141
  3488. data/vendor/bundle/gems/simplecov-0.14.1/spec/support/fail_rspec_on_ruby_warning.rb +0 -75
  3489. data/vendor/bundle/gems/simplecov-html-0.10.2/CHANGELOG.md +0 -13
  3490. data/vendor/bundle/gems/simplecov-html-0.10.2/Gemfile +0 -34
  3491. data/vendor/bundle/gems/simplecov-html-0.10.2/Guardfile +0 -12
  3492. data/vendor/bundle/gems/simplecov-html-0.10.2/LICENSE +0 -20
  3493. data/vendor/bundle/gems/simplecov-html-0.10.2/README.md +0 -30
  3494. data/vendor/bundle/gems/simplecov-html-0.10.2/Rakefile +0 -41
  3495. data/vendor/bundle/gems/simplecov-html-0.10.2/assets/javascripts/application.js +0 -127
  3496. data/vendor/bundle/gems/simplecov-html-0.10.2/assets/javascripts/libraries/jquery-1.6.2.min.js +0 -18
  3497. data/vendor/bundle/gems/simplecov-html-0.10.2/assets/javascripts/plugins/highlight.pack.js +0 -1
  3498. data/vendor/bundle/gems/simplecov-html-0.10.2/assets/javascripts/plugins/jquery.colorbox.js +0 -1090
  3499. data/vendor/bundle/gems/simplecov-html-0.10.2/assets/javascripts/plugins/jquery.dataTables.min.js +0 -152
  3500. data/vendor/bundle/gems/simplecov-html-0.10.2/assets/javascripts/plugins/jquery.timeago.js +0 -141
  3501. data/vendor/bundle/gems/simplecov-html-0.10.2/assets/javascripts/plugins/jquery.url.js +0 -174
  3502. data/vendor/bundle/gems/simplecov-html-0.10.2/assets/stylesheets/application.css +0 -3
  3503. data/vendor/bundle/gems/simplecov-html-0.10.2/assets/stylesheets/plugins/highlight.css +0 -129
  3504. data/vendor/bundle/gems/simplecov-html-0.10.2/assets/stylesheets/plugins/jquery-ui-1.8.4.custom.css +0 -295
  3505. data/vendor/bundle/gems/simplecov-html-0.10.2/assets/stylesheets/plugins/jquery.colorbox.css +0 -52
  3506. data/vendor/bundle/gems/simplecov-html-0.10.2/assets/stylesheets/reset.css +0 -103
  3507. data/vendor/bundle/gems/simplecov-html-0.10.2/assets/stylesheets/screen.css.sass +0 -220
  3508. data/vendor/bundle/gems/simplecov-html-0.10.2/lib/simplecov-html.rb +0 -110
  3509. data/vendor/bundle/gems/simplecov-html-0.10.2/lib/simplecov-html/version.rb +0 -7
  3510. data/vendor/bundle/gems/simplecov-html-0.10.2/public/application.css +0 -799
  3511. data/vendor/bundle/gems/simplecov-html-0.10.2/public/application.js +0 -1707
  3512. data/vendor/bundle/gems/simplecov-html-0.10.2/public/colorbox/border.png +0 -0
  3513. data/vendor/bundle/gems/simplecov-html-0.10.2/public/colorbox/controls.png +0 -0
  3514. data/vendor/bundle/gems/simplecov-html-0.10.2/public/colorbox/loading.gif +0 -0
  3515. data/vendor/bundle/gems/simplecov-html-0.10.2/public/colorbox/loading_background.png +0 -0
  3516. data/vendor/bundle/gems/simplecov-html-0.10.2/public/favicon_green.png +0 -0
  3517. data/vendor/bundle/gems/simplecov-html-0.10.2/public/favicon_red.png +0 -0
  3518. data/vendor/bundle/gems/simplecov-html-0.10.2/public/favicon_yellow.png +0 -0
  3519. data/vendor/bundle/gems/simplecov-html-0.10.2/public/loading.gif +0 -0
  3520. data/vendor/bundle/gems/simplecov-html-0.10.2/public/magnify.png +0 -0
  3521. data/vendor/bundle/gems/simplecov-html-0.10.2/public/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  3522. data/vendor/bundle/gems/simplecov-html-0.10.2/public/smoothness/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  3523. data/vendor/bundle/gems/simplecov-html-0.10.2/public/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  3524. data/vendor/bundle/gems/simplecov-html-0.10.2/public/smoothness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  3525. data/vendor/bundle/gems/simplecov-html-0.10.2/public/smoothness/images/ui-bg_glass_75_dadada_1x400.png +0 -0
  3526. data/vendor/bundle/gems/simplecov-html-0.10.2/public/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  3527. data/vendor/bundle/gems/simplecov-html-0.10.2/public/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  3528. data/vendor/bundle/gems/simplecov-html-0.10.2/public/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  3529. data/vendor/bundle/gems/simplecov-html-0.10.2/public/smoothness/images/ui-icons_222222_256x240.png +0 -0
  3530. data/vendor/bundle/gems/simplecov-html-0.10.2/public/smoothness/images/ui-icons_2e83ff_256x240.png +0 -0
  3531. data/vendor/bundle/gems/simplecov-html-0.10.2/public/smoothness/images/ui-icons_454545_256x240.png +0 -0
  3532. data/vendor/bundle/gems/simplecov-html-0.10.2/public/smoothness/images/ui-icons_888888_256x240.png +0 -0
  3533. data/vendor/bundle/gems/simplecov-html-0.10.2/public/smoothness/images/ui-icons_cd0a0a_256x240.png +0 -0
  3534. data/vendor/bundle/gems/simplecov-html-0.10.2/simplecov-html.gemspec +0 -22
  3535. data/vendor/bundle/gems/simplecov-html-0.10.2/test/helper.rb +0 -4
  3536. data/vendor/bundle/gems/simplecov-html-0.10.2/test/test_simple_cov-html.rb +0 -8
  3537. data/vendor/bundle/gems/simplecov-html-0.10.2/views/file_list.erb +0 -45
  3538. data/vendor/bundle/gems/simplecov-html-0.10.2/views/layout.erb +0 -41
  3539. data/vendor/bundle/gems/simplecov-html-0.10.2/views/source_file.erb +0 -23
  3540. data/vendor/bundle/gems/sprockets-3.7.2/CHANGELOG.md +0 -296
  3541. data/vendor/bundle/gems/sprockets-3.7.2/LICENSE +0 -21
  3542. data/vendor/bundle/gems/sprockets-3.7.2/README.md +0 -509
  3543. data/vendor/bundle/gems/sprockets-3.7.2/bin/sprockets +0 -89
  3544. data/vendor/bundle/gems/sprockets-3.7.2/lib/rake/sprocketstask.rb +0 -152
  3545. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets.rb +0 -169
  3546. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/asset.rb +0 -200
  3547. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/autoload.rb +0 -11
  3548. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/autoload/closure.rb +0 -7
  3549. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/autoload/coffee_script.rb +0 -7
  3550. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/autoload/eco.rb +0 -7
  3551. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/autoload/ejs.rb +0 -7
  3552. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/autoload/sass.rb +0 -7
  3553. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/autoload/uglifier.rb +0 -7
  3554. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/autoload/yui.rb +0 -7
  3555. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/base.rb +0 -110
  3556. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/bower.rb +0 -58
  3557. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/bundle.rb +0 -69
  3558. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/cache.rb +0 -236
  3559. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/cache/file_store.rb +0 -186
  3560. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/cache/memory_store.rb +0 -66
  3561. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/cache/null_store.rb +0 -46
  3562. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/cached_environment.rb +0 -69
  3563. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/closure_compressor.rb +0 -47
  3564. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/coffee_script_processor.rb +0 -25
  3565. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/coffee_script_template.rb +0 -17
  3566. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/compressing.rb +0 -94
  3567. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/configuration.rb +0 -83
  3568. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/context.rb +0 -231
  3569. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/dependencies.rb +0 -73
  3570. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/deprecation.rb +0 -90
  3571. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/digest_utils.rb +0 -180
  3572. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/directive_processor.rb +0 -404
  3573. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/eco_processor.rb +0 -32
  3574. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/eco_template.rb +0 -17
  3575. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/ejs_processor.rb +0 -31
  3576. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/ejs_template.rb +0 -17
  3577. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/encoding_utils.rb +0 -261
  3578. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/engines.rb +0 -92
  3579. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/environment.rb +0 -41
  3580. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/erb_processor.rb +0 -30
  3581. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/erb_template.rb +0 -11
  3582. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/errors.rb +0 -11
  3583. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/file_reader.rb +0 -15
  3584. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/http_utils.rb +0 -117
  3585. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/jst_processor.rb +0 -49
  3586. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/legacy.rb +0 -330
  3587. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/legacy_proc_processor.rb +0 -35
  3588. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/legacy_tilt_processor.rb +0 -29
  3589. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/loader.rb +0 -325
  3590. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/manifest.rb +0 -336
  3591. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/manifest_utils.rb +0 -45
  3592. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/mime.rb +0 -130
  3593. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/path_dependency_utils.rb +0 -85
  3594. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/path_digest_utils.rb +0 -47
  3595. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/path_utils.rb +0 -287
  3596. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/paths.rb +0 -81
  3597. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/processing.rb +0 -258
  3598. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/processor_utils.rb +0 -180
  3599. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/resolve.rb +0 -211
  3600. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/sass_cache_store.rb +0 -34
  3601. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/sass_compressor.rb +0 -51
  3602. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/sass_functions.rb +0 -2
  3603. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/sass_importer.rb +0 -2
  3604. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/sass_processor.rb +0 -292
  3605. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/sass_template.rb +0 -19
  3606. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/server.rb +0 -292
  3607. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/transformers.rb +0 -145
  3608. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/uglifier_compressor.rb +0 -56
  3609. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/unloaded_asset.rb +0 -137
  3610. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/uri_tar.rb +0 -98
  3611. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/uri_utils.rb +0 -188
  3612. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/utils.rb +0 -235
  3613. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/utils/gzip.rb +0 -67
  3614. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/version.rb +0 -3
  3615. data/vendor/bundle/gems/sprockets-3.7.2/lib/sprockets/yui_compressor.rb +0 -55
  3616. data/vendor/bundle/gems/sqlite3-1.3.13/API_CHANGES.rdoc +0 -50
  3617. data/vendor/bundle/gems/sqlite3-1.3.13/CHANGELOG.rdoc +0 -292
  3618. data/vendor/bundle/gems/sqlite3-1.3.13/ChangeLog.cvs +0 -88
  3619. data/vendor/bundle/gems/sqlite3-1.3.13/Gemfile +0 -15
  3620. data/vendor/bundle/gems/sqlite3-1.3.13/LICENSE +0 -27
  3621. data/vendor/bundle/gems/sqlite3-1.3.13/Manifest.txt +0 -52
  3622. data/vendor/bundle/gems/sqlite3-1.3.13/README.rdoc +0 -118
  3623. data/vendor/bundle/gems/sqlite3-1.3.13/Rakefile +0 -10
  3624. data/vendor/bundle/gems/sqlite3-1.3.13/ext/sqlite3/Makefile +0 -263
  3625. data/vendor/bundle/gems/sqlite3-1.3.13/ext/sqlite3/backup.c +0 -168
  3626. data/vendor/bundle/gems/sqlite3-1.3.13/ext/sqlite3/backup.h +0 -15
  3627. data/vendor/bundle/gems/sqlite3-1.3.13/ext/sqlite3/backup.o +0 -0
  3628. data/vendor/bundle/gems/sqlite3-1.3.13/ext/sqlite3/database.c +0 -888
  3629. data/vendor/bundle/gems/sqlite3-1.3.13/ext/sqlite3/database.h +0 -15
  3630. data/vendor/bundle/gems/sqlite3-1.3.13/ext/sqlite3/database.o +0 -0
  3631. data/vendor/bundle/gems/sqlite3-1.3.13/ext/sqlite3/exception.c +0 -94
  3632. data/vendor/bundle/gems/sqlite3-1.3.13/ext/sqlite3/exception.h +0 -8
  3633. data/vendor/bundle/gems/sqlite3-1.3.13/ext/sqlite3/exception.o +0 -0
  3634. data/vendor/bundle/gems/sqlite3-1.3.13/ext/sqlite3/extconf.rb +0 -71
  3635. data/vendor/bundle/gems/sqlite3-1.3.13/ext/sqlite3/sqlite3.c +0 -152
  3636. data/vendor/bundle/gems/sqlite3-1.3.13/ext/sqlite3/sqlite3.o +0 -0
  3637. data/vendor/bundle/gems/sqlite3-1.3.13/ext/sqlite3/sqlite3_native.so +0 -0
  3638. data/vendor/bundle/gems/sqlite3-1.3.13/ext/sqlite3/sqlite3_ruby.h +0 -52
  3639. data/vendor/bundle/gems/sqlite3-1.3.13/ext/sqlite3/statement.c +0 -447
  3640. data/vendor/bundle/gems/sqlite3-1.3.13/ext/sqlite3/statement.h +0 -16
  3641. data/vendor/bundle/gems/sqlite3-1.3.13/ext/sqlite3/statement.o +0 -0
  3642. data/vendor/bundle/gems/sqlite3-1.3.13/faq/faq.rb +0 -145
  3643. data/vendor/bundle/gems/sqlite3-1.3.13/faq/faq.yml +0 -426
  3644. data/vendor/bundle/gems/sqlite3-1.3.13/lib/sqlite3.rb +0 -15
  3645. data/vendor/bundle/gems/sqlite3-1.3.13/lib/sqlite3/constants.rb +0 -49
  3646. data/vendor/bundle/gems/sqlite3-1.3.13/lib/sqlite3/database.rb +0 -591
  3647. data/vendor/bundle/gems/sqlite3-1.3.13/lib/sqlite3/errors.rb +0 -44
  3648. data/vendor/bundle/gems/sqlite3-1.3.13/lib/sqlite3/pragmas.rb +0 -588
  3649. data/vendor/bundle/gems/sqlite3-1.3.13/lib/sqlite3/resultset.rb +0 -195
  3650. data/vendor/bundle/gems/sqlite3-1.3.13/lib/sqlite3/sqlite3_native.so +0 -0
  3651. data/vendor/bundle/gems/sqlite3-1.3.13/lib/sqlite3/statement.rb +0 -144
  3652. data/vendor/bundle/gems/sqlite3-1.3.13/lib/sqlite3/translator.rb +0 -118
  3653. data/vendor/bundle/gems/sqlite3-1.3.13/lib/sqlite3/value.rb +0 -57
  3654. data/vendor/bundle/gems/sqlite3-1.3.13/lib/sqlite3/version.rb +0 -25
  3655. data/vendor/bundle/gems/sqlite3-1.3.13/setup.rb +0 -1333
  3656. data/vendor/bundle/gems/sqlite3-1.3.13/tasks/faq.rake +0 -9
  3657. data/vendor/bundle/gems/sqlite3-1.3.13/tasks/gem.rake +0 -38
  3658. data/vendor/bundle/gems/sqlite3-1.3.13/tasks/native.rake +0 -52
  3659. data/vendor/bundle/gems/sqlite3-1.3.13/tasks/vendor_sqlite3.rake +0 -97
  3660. data/vendor/bundle/gems/sqlite3-1.3.13/test/helper.rb +0 -18
  3661. data/vendor/bundle/gems/sqlite3-1.3.13/test/test_backup.rb +0 -33
  3662. data/vendor/bundle/gems/sqlite3-1.3.13/test/test_collation.rb +0 -82
  3663. data/vendor/bundle/gems/sqlite3-1.3.13/test/test_database.rb +0 -430
  3664. data/vendor/bundle/gems/sqlite3-1.3.13/test/test_database_readonly.rb +0 -36
  3665. data/vendor/bundle/gems/sqlite3-1.3.13/test/test_deprecated.rb +0 -44
  3666. data/vendor/bundle/gems/sqlite3-1.3.13/test/test_encoding.rb +0 -155
  3667. data/vendor/bundle/gems/sqlite3-1.3.13/test/test_integration.rb +0 -576
  3668. data/vendor/bundle/gems/sqlite3-1.3.13/test/test_integration_open_close.rb +0 -30
  3669. data/vendor/bundle/gems/sqlite3-1.3.13/test/test_integration_pending.rb +0 -115
  3670. data/vendor/bundle/gems/sqlite3-1.3.13/test/test_integration_resultset.rb +0 -159
  3671. data/vendor/bundle/gems/sqlite3-1.3.13/test/test_integration_statement.rb +0 -194
  3672. data/vendor/bundle/gems/sqlite3-1.3.13/test/test_result_set.rb +0 -37
  3673. data/vendor/bundle/gems/sqlite3-1.3.13/test/test_sqlite3.rb +0 -21
  3674. data/vendor/bundle/gems/sqlite3-1.3.13/test/test_statement.rb +0 -260
  3675. data/vendor/bundle/gems/sqlite3-1.3.13/test/test_statement_execute.rb +0 -35
  3676. data/vendor/bundle/gems/term-ansicolor-1.6.0/CHANGES +0 -65
  3677. data/vendor/bundle/gems/term-ansicolor-1.6.0/COPYING +0 -202
  3678. data/vendor/bundle/gems/term-ansicolor-1.6.0/Gemfile +0 -5
  3679. data/vendor/bundle/gems/term-ansicolor-1.6.0/README.md +0 -42
  3680. data/vendor/bundle/gems/term-ansicolor-1.6.0/Rakefile +0 -28
  3681. data/vendor/bundle/gems/term-ansicolor-1.6.0/VERSION +0 -1
  3682. data/vendor/bundle/gems/term-ansicolor-1.6.0/bin/term_cdiff +0 -19
  3683. data/vendor/bundle/gems/term-ansicolor-1.6.0/bin/term_colortab +0 -48
  3684. data/vendor/bundle/gems/term-ansicolor-1.6.0/bin/term_decolor +0 -12
  3685. data/vendor/bundle/gems/term-ansicolor-1.6.0/bin/term_display +0 -91
  3686. data/vendor/bundle/gems/term-ansicolor-1.6.0/bin/term_mandel +0 -52
  3687. data/vendor/bundle/gems/term-ansicolor-1.6.0/examples/example.rb +0 -90
  3688. data/vendor/bundle/gems/term-ansicolor-1.6.0/examples/lambda-red-plain.ppm +0 -135
  3689. data/vendor/bundle/gems/term-ansicolor-1.6.0/examples/lambda-red.png +0 -0
  3690. data/vendor/bundle/gems/term-ansicolor-1.6.0/examples/lambda-red.ppm +0 -4
  3691. data/vendor/bundle/gems/term-ansicolor-1.6.0/lib/term/ansicolor.rb +0 -124
  3692. data/vendor/bundle/gems/term-ansicolor-1.6.0/lib/term/ansicolor/attribute.rb +0 -142
  3693. data/vendor/bundle/gems/term-ansicolor-1.6.0/lib/term/ansicolor/attribute/color256.rb +0 -69
  3694. data/vendor/bundle/gems/term-ansicolor-1.6.0/lib/term/ansicolor/attribute/color8.rb +0 -25
  3695. data/vendor/bundle/gems/term-ansicolor-1.6.0/lib/term/ansicolor/attribute/intense_color8.rb +0 -43
  3696. data/vendor/bundle/gems/term-ansicolor-1.6.0/lib/term/ansicolor/attribute/text.rb +0 -21
  3697. data/vendor/bundle/gems/term-ansicolor-1.6.0/lib/term/ansicolor/hsl_triple.rb +0 -169
  3698. data/vendor/bundle/gems/term-ansicolor-1.6.0/lib/term/ansicolor/ppm_reader.rb +0 -96
  3699. data/vendor/bundle/gems/term-ansicolor-1.6.0/lib/term/ansicolor/rgb_color_metrics.rb +0 -161
  3700. data/vendor/bundle/gems/term-ansicolor-1.6.0/lib/term/ansicolor/rgb_triple.rb +0 -179
  3701. data/vendor/bundle/gems/term-ansicolor-1.6.0/lib/term/ansicolor/version.rb +0 -8
  3702. data/vendor/bundle/gems/term-ansicolor-1.6.0/term-ansicolor.gemspec +0 -45
  3703. data/vendor/bundle/gems/term-ansicolor-1.6.0/tests/ansicolor_test.rb +0 -142
  3704. data/vendor/bundle/gems/term-ansicolor-1.6.0/tests/attribute_test.rb +0 -73
  3705. data/vendor/bundle/gems/term-ansicolor-1.6.0/tests/hsl_triple_test.rb +0 -85
  3706. data/vendor/bundle/gems/term-ansicolor-1.6.0/tests/ppm_reader_test.rb +0 -46
  3707. data/vendor/bundle/gems/term-ansicolor-1.6.0/tests/rgb_color_metrics_test.rb +0 -100
  3708. data/vendor/bundle/gems/term-ansicolor-1.6.0/tests/rgb_triple_test.rb +0 -101
  3709. data/vendor/bundle/gems/term-ansicolor-1.6.0/tests/test_helper.rb +0 -8
  3710. data/vendor/bundle/gems/test-unit-3.2.8/COPYING +0 -67
  3711. data/vendor/bundle/gems/test-unit-3.2.8/GPL +0 -339
  3712. data/vendor/bundle/gems/test-unit-3.2.8/LGPL +0 -502
  3713. data/vendor/bundle/gems/test-unit-3.2.8/PSFL +0 -271
  3714. data/vendor/bundle/gems/test-unit-3.2.8/README.md +0 -101
  3715. data/vendor/bundle/gems/test-unit-3.2.8/Rakefile +0 -80
  3716. data/vendor/bundle/gems/test-unit-3.2.8/doc/text/getting-started.md +0 -246
  3717. data/vendor/bundle/gems/test-unit-3.2.8/doc/text/how-to.md +0 -90
  3718. data/vendor/bundle/gems/test-unit-3.2.8/doc/text/news.md +0 -1303
  3719. data/vendor/bundle/gems/test-unit-3.2.8/lib/test-unit.rb +0 -34
  3720. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit.rb +0 -505
  3721. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/assertion-failed-error.rb +0 -25
  3722. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/assertions.rb +0 -2249
  3723. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/attribute-matcher.rb +0 -26
  3724. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/attribute.rb +0 -222
  3725. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/auto-runner-loader.rb +0 -17
  3726. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/autorunner.rb +0 -533
  3727. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/code-snippet-fetcher.rb +0 -58
  3728. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/collector.rb +0 -73
  3729. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/collector/descendant.rb +0 -19
  3730. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/collector/dir.rb +0 -108
  3731. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/collector/load.rb +0 -199
  3732. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/collector/objectspace.rb +0 -34
  3733. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/collector/xml.rb +0 -249
  3734. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/color-scheme.rb +0 -198
  3735. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/color.rb +0 -134
  3736. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/data.rb +0 -262
  3737. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/diff.rb +0 -746
  3738. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/error.rb +0 -158
  3739. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/exception-handler.rb +0 -82
  3740. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/failure.rb +0 -169
  3741. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/fault-location-detector.rb +0 -100
  3742. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/fixture.rb +0 -298
  3743. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/notification.rb +0 -136
  3744. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/omission.rb +0 -195
  3745. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/pending.rb +0 -154
  3746. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/priority.rb +0 -192
  3747. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/runner/console.rb +0 -84
  3748. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/runner/emacs.rb +0 -8
  3749. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/runner/xml.rb +0 -15
  3750. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/test-suite-creator.rb +0 -89
  3751. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/testcase.rb +0 -860
  3752. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/testresult.rb +0 -132
  3753. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/testsuite.rb +0 -175
  3754. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/ui/console/outputlevel.rb +0 -15
  3755. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/ui/console/testrunner.rb +0 -750
  3756. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/ui/emacs/testrunner.rb +0 -49
  3757. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/ui/testrunner.rb +0 -53
  3758. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/ui/testrunnermediator.rb +0 -114
  3759. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/ui/testrunnerutilities.rb +0 -41
  3760. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/ui/xml/testrunner.rb +0 -224
  3761. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/util/backtracefilter.rb +0 -59
  3762. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/util/method-owner-finder.rb +0 -28
  3763. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/util/observable.rb +0 -90
  3764. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/util/output.rb +0 -31
  3765. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/util/procwrapper.rb +0 -48
  3766. data/vendor/bundle/gems/test-unit-3.2.8/lib/test/unit/version.rb +0 -5
  3767. data/vendor/bundle/gems/test-unit-3.2.8/sample/adder.rb +0 -13
  3768. data/vendor/bundle/gems/test-unit-3.2.8/sample/subtracter.rb +0 -12
  3769. data/vendor/bundle/gems/test-unit-3.2.8/sample/test_adder.rb +0 -20
  3770. data/vendor/bundle/gems/test-unit-3.2.8/sample/test_subtracter.rb +0 -20
  3771. data/vendor/bundle/gems/test-unit-3.2.8/sample/test_user.rb +0 -23
  3772. data/vendor/bundle/gems/test-unit-3.2.8/test/collector/test-descendant.rb +0 -182
  3773. data/vendor/bundle/gems/test-unit-3.2.8/test/collector/test-load.rb +0 -442
  3774. data/vendor/bundle/gems/test-unit-3.2.8/test/collector/test_dir.rb +0 -407
  3775. data/vendor/bundle/gems/test-unit-3.2.8/test/collector/test_objectspace.rb +0 -102
  3776. data/vendor/bundle/gems/test-unit-3.2.8/test/fixtures/header-label.csv +0 -3
  3777. data/vendor/bundle/gems/test-unit-3.2.8/test/fixtures/header-label.tsv +0 -3
  3778. data/vendor/bundle/gems/test-unit-3.2.8/test/fixtures/header.csv +0 -3
  3779. data/vendor/bundle/gems/test-unit-3.2.8/test/fixtures/header.tsv +0 -3
  3780. data/vendor/bundle/gems/test-unit-3.2.8/test/fixtures/no-header.csv +0 -2
  3781. data/vendor/bundle/gems/test-unit-3.2.8/test/fixtures/no-header.tsv +0 -2
  3782. data/vendor/bundle/gems/test-unit-3.2.8/test/fixtures/plus.csv +0 -3
  3783. data/vendor/bundle/gems/test-unit-3.2.8/test/run-test.rb +0 -22
  3784. data/vendor/bundle/gems/test-unit-3.2.8/test/test-assertions.rb +0 -2180
  3785. data/vendor/bundle/gems/test-unit-3.2.8/test/test-attribute-matcher.rb +0 -38
  3786. data/vendor/bundle/gems/test-unit-3.2.8/test/test-attribute.rb +0 -123
  3787. data/vendor/bundle/gems/test-unit-3.2.8/test/test-code-snippet.rb +0 -37
  3788. data/vendor/bundle/gems/test-unit-3.2.8/test/test-color-scheme.rb +0 -82
  3789. data/vendor/bundle/gems/test-unit-3.2.8/test/test-color.rb +0 -47
  3790. data/vendor/bundle/gems/test-unit-3.2.8/test/test-data.rb +0 -303
  3791. data/vendor/bundle/gems/test-unit-3.2.8/test/test-diff.rb +0 -518
  3792. data/vendor/bundle/gems/test-unit-3.2.8/test/test-emacs-runner.rb +0 -60
  3793. data/vendor/bundle/gems/test-unit-3.2.8/test/test-error.rb +0 -26
  3794. data/vendor/bundle/gems/test-unit-3.2.8/test/test-failure.rb +0 -33
  3795. data/vendor/bundle/gems/test-unit-3.2.8/test/test-fault-location-detector.rb +0 -163
  3796. data/vendor/bundle/gems/test-unit-3.2.8/test/test-fixture.rb +0 -713
  3797. data/vendor/bundle/gems/test-unit-3.2.8/test/test-notification.rb +0 -33
  3798. data/vendor/bundle/gems/test-unit-3.2.8/test/test-omission.rb +0 -81
  3799. data/vendor/bundle/gems/test-unit-3.2.8/test/test-pending.rb +0 -70
  3800. data/vendor/bundle/gems/test-unit-3.2.8/test/test-priority.rb +0 -173
  3801. data/vendor/bundle/gems/test-unit-3.2.8/test/test-test-case.rb +0 -1278
  3802. data/vendor/bundle/gems/test-unit-3.2.8/test/test-test-result.rb +0 -113
  3803. data/vendor/bundle/gems/test-unit-3.2.8/test/test-test-suite-creator.rb +0 -97
  3804. data/vendor/bundle/gems/test-unit-3.2.8/test/test-test-suite.rb +0 -151
  3805. data/vendor/bundle/gems/test-unit-3.2.8/test/testunit-test-util.rb +0 -31
  3806. data/vendor/bundle/gems/test-unit-3.2.8/test/ui/test_testrunmediator.rb +0 -20
  3807. data/vendor/bundle/gems/test-unit-3.2.8/test/util/test-method-owner-finder.rb +0 -38
  3808. data/vendor/bundle/gems/test-unit-3.2.8/test/util/test-output.rb +0 -11
  3809. data/vendor/bundle/gems/test-unit-3.2.8/test/util/test_backtracefilter.rb +0 -52
  3810. data/vendor/bundle/gems/test-unit-3.2.8/test/util/test_observable.rb +0 -102
  3811. data/vendor/bundle/gems/test-unit-3.2.8/test/util/test_procwrapper.rb +0 -36
  3812. data/vendor/bundle/gems/thor-0.19.4/CHANGELOG.md +0 -163
  3813. data/vendor/bundle/gems/thor-0.19.4/CONTRIBUTING.md +0 -15
  3814. data/vendor/bundle/gems/thor-0.19.4/LICENSE.md +0 -20
  3815. data/vendor/bundle/gems/thor-0.19.4/README.md +0 -47
  3816. data/vendor/bundle/gems/thor-0.19.4/bin/thor +0 -6
  3817. data/vendor/bundle/gems/thor-0.19.4/lib/thor.rb +0 -492
  3818. data/vendor/bundle/gems/thor-0.19.4/lib/thor/actions.rb +0 -318
  3819. data/vendor/bundle/gems/thor-0.19.4/lib/thor/actions/create_file.rb +0 -103
  3820. data/vendor/bundle/gems/thor-0.19.4/lib/thor/actions/create_link.rb +0 -59
  3821. data/vendor/bundle/gems/thor-0.19.4/lib/thor/actions/directory.rb +0 -118
  3822. data/vendor/bundle/gems/thor-0.19.4/lib/thor/actions/empty_directory.rb +0 -135
  3823. data/vendor/bundle/gems/thor-0.19.4/lib/thor/actions/file_manipulation.rb +0 -327
  3824. data/vendor/bundle/gems/thor-0.19.4/lib/thor/actions/inject_into_file.rb +0 -103
  3825. data/vendor/bundle/gems/thor-0.19.4/lib/thor/base.rb +0 -656
  3826. data/vendor/bundle/gems/thor-0.19.4/lib/thor/command.rb +0 -133
  3827. data/vendor/bundle/gems/thor-0.19.4/lib/thor/core_ext/hash_with_indifferent_access.rb +0 -85
  3828. data/vendor/bundle/gems/thor-0.19.4/lib/thor/core_ext/io_binary_read.rb +0 -12
  3829. data/vendor/bundle/gems/thor-0.19.4/lib/thor/core_ext/ordered_hash.rb +0 -129
  3830. data/vendor/bundle/gems/thor-0.19.4/lib/thor/error.rb +0 -32
  3831. data/vendor/bundle/gems/thor-0.19.4/lib/thor/group.rb +0 -281
  3832. data/vendor/bundle/gems/thor-0.19.4/lib/thor/invocation.rb +0 -177
  3833. data/vendor/bundle/gems/thor-0.19.4/lib/thor/line_editor.rb +0 -17
  3834. data/vendor/bundle/gems/thor-0.19.4/lib/thor/line_editor/basic.rb +0 -35
  3835. data/vendor/bundle/gems/thor-0.19.4/lib/thor/line_editor/readline.rb +0 -88
  3836. data/vendor/bundle/gems/thor-0.19.4/lib/thor/parser.rb +0 -4
  3837. data/vendor/bundle/gems/thor-0.19.4/lib/thor/parser/argument.rb +0 -70
  3838. data/vendor/bundle/gems/thor-0.19.4/lib/thor/parser/arguments.rb +0 -175
  3839. data/vendor/bundle/gems/thor-0.19.4/lib/thor/parser/option.rb +0 -146
  3840. data/vendor/bundle/gems/thor-0.19.4/lib/thor/parser/options.rb +0 -220
  3841. data/vendor/bundle/gems/thor-0.19.4/lib/thor/rake_compat.rb +0 -71
  3842. data/vendor/bundle/gems/thor-0.19.4/lib/thor/runner.rb +0 -322
  3843. data/vendor/bundle/gems/thor-0.19.4/lib/thor/shell.rb +0 -81
  3844. data/vendor/bundle/gems/thor-0.19.4/lib/thor/shell/basic.rb +0 -436
  3845. data/vendor/bundle/gems/thor-0.19.4/lib/thor/shell/color.rb +0 -149
  3846. data/vendor/bundle/gems/thor-0.19.4/lib/thor/shell/html.rb +0 -126
  3847. data/vendor/bundle/gems/thor-0.19.4/lib/thor/util.rb +0 -268
  3848. data/vendor/bundle/gems/thor-0.19.4/lib/thor/version.rb +0 -3
  3849. data/vendor/bundle/gems/thor-0.19.4/thor.gemspec +0 -21
  3850. data/vendor/bundle/gems/tins-1.16.3/COPYING +0 -18
  3851. data/vendor/bundle/gems/tins-1.16.3/Gemfile +0 -10
  3852. data/vendor/bundle/gems/tins-1.16.3/README.md +0 -94
  3853. data/vendor/bundle/gems/tins-1.16.3/Rakefile +0 -23
  3854. data/vendor/bundle/gems/tins-1.16.3/TODO +0 -3
  3855. data/vendor/bundle/gems/tins-1.16.3/VERSION +0 -1
  3856. data/vendor/bundle/gems/tins-1.16.3/examples/add_one.png +0 -0
  3857. data/vendor/bundle/gems/tins-1.16.3/examples/add_one.stm +0 -13
  3858. data/vendor/bundle/gems/tins-1.16.3/examples/bb3.png +0 -0
  3859. data/vendor/bundle/gems/tins-1.16.3/examples/bb3.stm +0 -26
  3860. data/vendor/bundle/gems/tins-1.16.3/examples/concatenate_compare.mtm +0 -31
  3861. data/vendor/bundle/gems/tins-1.16.3/examples/concatenate_compare.png +0 -0
  3862. data/vendor/bundle/gems/tins-1.16.3/examples/length_difference.mtm +0 -17
  3863. data/vendor/bundle/gems/tins-1.16.3/examples/length_difference.png +0 -0
  3864. data/vendor/bundle/gems/tins-1.16.3/examples/let.rb +0 -62
  3865. data/vendor/bundle/gems/tins-1.16.3/examples/mail.rb +0 -73
  3866. data/vendor/bundle/gems/tins-1.16.3/examples/minsky.rb +0 -145
  3867. data/vendor/bundle/gems/tins-1.16.3/examples/multiply.reg +0 -42
  3868. data/vendor/bundle/gems/tins-1.16.3/examples/null_pattern.rb +0 -52
  3869. data/vendor/bundle/gems/tins-1.16.3/examples/ones_difference-mtm.png +0 -0
  3870. data/vendor/bundle/gems/tins-1.16.3/examples/ones_difference-stm.png +0 -0
  3871. data/vendor/bundle/gems/tins-1.16.3/examples/ones_difference.mtm +0 -12
  3872. data/vendor/bundle/gems/tins-1.16.3/examples/ones_difference.stm +0 -25
  3873. data/vendor/bundle/gems/tins-1.16.3/examples/prefix-equals-suffix-reversed-with-infix.png +0 -0
  3874. data/vendor/bundle/gems/tins-1.16.3/examples/prefix-equals-suffix-reversed-with-infix.stm +0 -38
  3875. data/vendor/bundle/gems/tins-1.16.3/examples/recipe.rb +0 -81
  3876. data/vendor/bundle/gems/tins-1.16.3/examples/recipe2.rb +0 -82
  3877. data/vendor/bundle/gems/tins-1.16.3/examples/recipe_common.rb +0 -65
  3878. data/vendor/bundle/gems/tins-1.16.3/examples/subtract.reg +0 -9
  3879. data/vendor/bundle/gems/tins-1.16.3/examples/turing-graph.rb +0 -17
  3880. data/vendor/bundle/gems/tins-1.16.3/examples/turing.rb +0 -310
  3881. data/vendor/bundle/gems/tins-1.16.3/lib/dslkit.rb +0 -2
  3882. data/vendor/bundle/gems/tins-1.16.3/lib/dslkit/polite.rb +0 -1
  3883. data/vendor/bundle/gems/tins-1.16.3/lib/dslkit/rude.rb +0 -1
  3884. data/vendor/bundle/gems/tins-1.16.3/lib/spruz.rb +0 -2
  3885. data/vendor/bundle/gems/tins-1.16.3/lib/tins.rb +0 -60
  3886. data/vendor/bundle/gems/tins-1.16.3/lib/tins/alias.rb +0 -1
  3887. data/vendor/bundle/gems/tins-1.16.3/lib/tins/annotate.rb +0 -38
  3888. data/vendor/bundle/gems/tins-1.16.3/lib/tins/ask_and_send.rb +0 -31
  3889. data/vendor/bundle/gems/tins-1.16.3/lib/tins/attempt.rb +0 -88
  3890. data/vendor/bundle/gems/tins-1.16.3/lib/tins/bijection.rb +0 -46
  3891. data/vendor/bundle/gems/tins-1.16.3/lib/tins/case_predicate.rb +0 -7
  3892. data/vendor/bundle/gems/tins-1.16.3/lib/tins/complete.rb +0 -18
  3893. data/vendor/bundle/gems/tins-1.16.3/lib/tins/concern.rb +0 -30
  3894. data/vendor/bundle/gems/tins-1.16.3/lib/tins/count_by.rb +0 -8
  3895. data/vendor/bundle/gems/tins-1.16.3/lib/tins/date_dummy.rb +0 -53
  3896. data/vendor/bundle/gems/tins-1.16.3/lib/tins/date_time_dummy.rb +0 -51
  3897. data/vendor/bundle/gems/tins-1.16.3/lib/tins/deep_const_get.rb +0 -42
  3898. data/vendor/bundle/gems/tins-1.16.3/lib/tins/deep_dup.rb +0 -11
  3899. data/vendor/bundle/gems/tins-1.16.3/lib/tins/dslkit.rb +0 -626
  3900. data/vendor/bundle/gems/tins-1.16.3/lib/tins/duration.rb +0 -87
  3901. data/vendor/bundle/gems/tins-1.16.3/lib/tins/expose.rb +0 -27
  3902. data/vendor/bundle/gems/tins-1.16.3/lib/tins/extract_last_argument_options.rb +0 -14
  3903. data/vendor/bundle/gems/tins-1.16.3/lib/tins/file_binary.rb +0 -83
  3904. data/vendor/bundle/gems/tins-1.16.3/lib/tins/find.rb +0 -149
  3905. data/vendor/bundle/gems/tins-1.16.3/lib/tins/generator.rb +0 -68
  3906. data/vendor/bundle/gems/tins-1.16.3/lib/tins/go.rb +0 -73
  3907. data/vendor/bundle/gems/tins-1.16.3/lib/tins/hash_symbolize_keys_recursive.rb +0 -27
  3908. data/vendor/bundle/gems/tins-1.16.3/lib/tins/hash_union.rb +0 -15
  3909. data/vendor/bundle/gems/tins-1.16.3/lib/tins/if_predicate.rb +0 -7
  3910. data/vendor/bundle/gems/tins-1.16.3/lib/tins/implement.rb +0 -40
  3911. data/vendor/bundle/gems/tins-1.16.3/lib/tins/limited.rb +0 -38
  3912. data/vendor/bundle/gems/tins-1.16.3/lib/tins/lines_file.rb +0 -123
  3913. data/vendor/bundle/gems/tins-1.16.3/lib/tins/memoize.rb +0 -91
  3914. data/vendor/bundle/gems/tins-1.16.3/lib/tins/method_description.rb +0 -143
  3915. data/vendor/bundle/gems/tins-1.16.3/lib/tins/minimize.rb +0 -55
  3916. data/vendor/bundle/gems/tins-1.16.3/lib/tins/module_group.rb +0 -13
  3917. data/vendor/bundle/gems/tins-1.16.3/lib/tins/named_set.rb +0 -12
  3918. data/vendor/bundle/gems/tins-1.16.3/lib/tins/null.rb +0 -99
  3919. data/vendor/bundle/gems/tins-1.16.3/lib/tins/once.rb +0 -25
  3920. data/vendor/bundle/gems/tins-1.16.3/lib/tins/p.rb +0 -23
  3921. data/vendor/bundle/gems/tins-1.16.3/lib/tins/partial_application.rb +0 -31
  3922. data/vendor/bundle/gems/tins-1.16.3/lib/tins/proc_compose.rb +0 -15
  3923. data/vendor/bundle/gems/tins-1.16.3/lib/tins/proc_prelude.rb +0 -73
  3924. data/vendor/bundle/gems/tins-1.16.3/lib/tins/range_plus.rb +0 -9
  3925. data/vendor/bundle/gems/tins-1.16.3/lib/tins/require_maybe.rb +0 -9
  3926. data/vendor/bundle/gems/tins-1.16.3/lib/tins/responding.rb +0 -19
  3927. data/vendor/bundle/gems/tins-1.16.3/lib/tins/secure_write.rb +0 -27
  3928. data/vendor/bundle/gems/tins-1.16.3/lib/tins/sexy_singleton.rb +0 -39
  3929. data/vendor/bundle/gems/tins-1.16.3/lib/tins/string_byte_order_mark.rb +0 -20
  3930. data/vendor/bundle/gems/tins-1.16.3/lib/tins/string_camelize.rb +0 -16
  3931. data/vendor/bundle/gems/tins-1.16.3/lib/tins/string_underscore.rb +0 -15
  3932. data/vendor/bundle/gems/tins-1.16.3/lib/tins/string_version.rb +0 -104
  3933. data/vendor/bundle/gems/tins-1.16.3/lib/tins/subhash.rb +0 -42
  3934. data/vendor/bundle/gems/tins-1.16.3/lib/tins/temp_io.rb +0 -26
  3935. data/vendor/bundle/gems/tins-1.16.3/lib/tins/terminal.rb +0 -43
  3936. data/vendor/bundle/gems/tins-1.16.3/lib/tins/thread_local.rb +0 -51
  3937. data/vendor/bundle/gems/tins-1.16.3/lib/tins/time_dummy.rb +0 -57
  3938. data/vendor/bundle/gems/tins-1.16.3/lib/tins/to.rb +0 -8
  3939. data/vendor/bundle/gems/tins-1.16.3/lib/tins/to_proc.rb +0 -12
  3940. data/vendor/bundle/gems/tins-1.16.3/lib/tins/token.rb +0 -36
  3941. data/vendor/bundle/gems/tins-1.16.3/lib/tins/uniq_by.rb +0 -10
  3942. data/vendor/bundle/gems/tins-1.16.3/lib/tins/unit.rb +0 -179
  3943. data/vendor/bundle/gems/tins-1.16.3/lib/tins/version.rb +0 -8
  3944. data/vendor/bundle/gems/tins-1.16.3/lib/tins/write.rb +0 -19
  3945. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt.rb +0 -45
  3946. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/annotate.rb +0 -5
  3947. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/ask_and_send.rb +0 -7
  3948. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/attempt.rb +0 -7
  3949. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/blank.rb +0 -67
  3950. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/case_predicate.rb +0 -8
  3951. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/complete.rb +0 -7
  3952. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/concern.rb +0 -20
  3953. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/count_by.rb +0 -11
  3954. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/date_dummy.rb +0 -7
  3955. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/date_time_dummy.rb +0 -7
  3956. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/deep_const_get.rb +0 -7
  3957. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/deep_dup.rb +0 -7
  3958. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/dslkit.rb +0 -22
  3959. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/expose.rb +0 -5
  3960. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/extract_last_argument_options.rb +0 -7
  3961. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/file_binary.rb +0 -7
  3962. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/full.rb +0 -39
  3963. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/hash_symbolize_keys_recursive.rb +0 -7
  3964. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/hash_union.rb +0 -11
  3965. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/if_predicate.rb +0 -7
  3966. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/implement.rb +0 -5
  3967. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/irb.rb +0 -23
  3968. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/method_description.rb +0 -23
  3969. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/named.rb +0 -23
  3970. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/null.rb +0 -9
  3971. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/p.rb +0 -7
  3972. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/partial_application.rb +0 -11
  3973. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/proc_compose.rb +0 -7
  3974. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/proc_prelude.rb +0 -7
  3975. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/range_plus.rb +0 -12
  3976. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/require_maybe.rb +0 -7
  3977. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/responding.rb +0 -7
  3978. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/secure_write.rb +0 -11
  3979. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/sexy_singleton.rb +0 -3
  3980. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/string.rb +0 -6
  3981. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/string_byte_order_mark.rb +0 -7
  3982. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/string_camelize.rb +0 -6
  3983. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/string_underscore.rb +0 -6
  3984. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/string_version.rb +0 -7
  3985. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/subhash.rb +0 -11
  3986. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/temp_io.rb +0 -5
  3987. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/time_dummy.rb +0 -7
  3988. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/time_freezer.rb +0 -15
  3989. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/to.rb +0 -5
  3990. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/uniq_by.rb +0 -15
  3991. data/vendor/bundle/gems/tins-1.16.3/lib/tins/xt/write.rb +0 -11
  3992. data/vendor/bundle/gems/tins-1.16.3/tests/annotate_test.rb +0 -47
  3993. data/vendor/bundle/gems/tins-1.16.3/tests/ask_and_send_test.rb +0 -46
  3994. data/vendor/bundle/gems/tins-1.16.3/tests/attempt_test.rb +0 -109
  3995. data/vendor/bundle/gems/tins-1.16.3/tests/bijection_test.rb +0 -19
  3996. data/vendor/bundle/gems/tins-1.16.3/tests/blank_full_test.rb +0 -77
  3997. data/vendor/bundle/gems/tins-1.16.3/tests/case_predicate_test.rb +0 -29
  3998. data/vendor/bundle/gems/tins-1.16.3/tests/concern_test.rb +0 -35
  3999. data/vendor/bundle/gems/tins-1.16.3/tests/count_by_test.rb +0 -17
  4000. data/vendor/bundle/gems/tins-1.16.3/tests/date_dummy_test.rb +0 -31
  4001. data/vendor/bundle/gems/tins-1.16.3/tests/date_time_dummy_test.rb +0 -31
  4002. data/vendor/bundle/gems/tins-1.16.3/tests/deep_const_get_test.rb +0 -37
  4003. data/vendor/bundle/gems/tins-1.16.3/tests/deep_dup_test.rb +0 -20
  4004. data/vendor/bundle/gems/tins-1.16.3/tests/delegate_test.rb +0 -49
  4005. data/vendor/bundle/gems/tins-1.16.3/tests/dslkit_test.rb +0 -284
  4006. data/vendor/bundle/gems/tins-1.16.3/tests/duration_test.rb +0 -73
  4007. data/vendor/bundle/gems/tins-1.16.3/tests/dynamic_scope_test.rb +0 -31
  4008. data/vendor/bundle/gems/tins-1.16.3/tests/expose_test.rb +0 -43
  4009. data/vendor/bundle/gems/tins-1.16.3/tests/extract_last_argument_options_test.rb +0 -30
  4010. data/vendor/bundle/gems/tins-1.16.3/tests/file_binary_test.rb +0 -65
  4011. data/vendor/bundle/gems/tins-1.16.3/tests/find_test.rb +0 -135
  4012. data/vendor/bundle/gems/tins-1.16.3/tests/from_module_test.rb +0 -61
  4013. data/vendor/bundle/gems/tins-1.16.3/tests/generator_test.rb +0 -47
  4014. data/vendor/bundle/gems/tins-1.16.3/tests/go_test.rb +0 -62
  4015. data/vendor/bundle/gems/tins-1.16.3/tests/hash_symbolize_keys_recursive_test.rb +0 -24
  4016. data/vendor/bundle/gems/tins-1.16.3/tests/hash_union_test.rb +0 -42
  4017. data/vendor/bundle/gems/tins-1.16.3/tests/if_predicate_test.rb +0 -12
  4018. data/vendor/bundle/gems/tins-1.16.3/tests/implement_test.rb +0 -75
  4019. data/vendor/bundle/gems/tins-1.16.3/tests/limited_test.rb +0 -21
  4020. data/vendor/bundle/gems/tins-1.16.3/tests/lines_file_test.rb +0 -82
  4021. data/vendor/bundle/gems/tins-1.16.3/tests/memoize_test.rb +0 -115
  4022. data/vendor/bundle/gems/tins-1.16.3/tests/method_description_test.rb +0 -104
  4023. data/vendor/bundle/gems/tins-1.16.3/tests/minimize_test.rb +0 -54
  4024. data/vendor/bundle/gems/tins-1.16.3/tests/module_group_test.rb +0 -29
  4025. data/vendor/bundle/gems/tins-1.16.3/tests/named_set_test.rb +0 -18
  4026. data/vendor/bundle/gems/tins-1.16.3/tests/named_test.rb +0 -30
  4027. data/vendor/bundle/gems/tins-1.16.3/tests/null_test.rb +0 -64
  4028. data/vendor/bundle/gems/tins-1.16.3/tests/p_test.rb +0 -14
  4029. data/vendor/bundle/gems/tins-1.16.3/tests/partial_application_test.rb +0 -30
  4030. data/vendor/bundle/gems/tins-1.16.3/tests/proc_compose_test.rb +0 -21
  4031. data/vendor/bundle/gems/tins-1.16.3/tests/proc_prelude_test.rb +0 -81
  4032. data/vendor/bundle/gems/tins-1.16.3/tests/range_plus_test.rb +0 -14
  4033. data/vendor/bundle/gems/tins-1.16.3/tests/require_maybe_test.rb +0 -24
  4034. data/vendor/bundle/gems/tins-1.16.3/tests/responding_test.rb +0 -24
  4035. data/vendor/bundle/gems/tins-1.16.3/tests/rotate_test.rb +0 -65
  4036. data/vendor/bundle/gems/tins-1.16.3/tests/scope_test.rb +0 -31
  4037. data/vendor/bundle/gems/tins-1.16.3/tests/secure_write_test.rb +0 -42
  4038. data/vendor/bundle/gems/tins-1.16.3/tests/sexy_singleton_test.rb +0 -16
  4039. data/vendor/bundle/gems/tins-1.16.3/tests/string_byte_order_mark_test.rb +0 -40
  4040. data/vendor/bundle/gems/tins-1.16.3/tests/string_camelize_test.rb +0 -21
  4041. data/vendor/bundle/gems/tins-1.16.3/tests/string_underscore_test.rb +0 -11
  4042. data/vendor/bundle/gems/tins-1.16.3/tests/string_version_test.rb +0 -60
  4043. data/vendor/bundle/gems/tins-1.16.3/tests/subhash_test.rb +0 -37
  4044. data/vendor/bundle/gems/tins-1.16.3/tests/temp_io_test.rb +0 -38
  4045. data/vendor/bundle/gems/tins-1.16.3/tests/test_helper.rb +0 -11
  4046. data/vendor/bundle/gems/tins-1.16.3/tests/time_dummy_test.rb +0 -31
  4047. data/vendor/bundle/gems/tins-1.16.3/tests/time_freezer_test.rb +0 -45
  4048. data/vendor/bundle/gems/tins-1.16.3/tests/to_test.rb +0 -32
  4049. data/vendor/bundle/gems/tins-1.16.3/tests/token_test.rb +0 -38
  4050. data/vendor/bundle/gems/tins-1.16.3/tests/uniq_by_test.rb +0 -31
  4051. data/vendor/bundle/gems/tins-1.16.3/tests/unit_test.rb +0 -61
  4052. data/vendor/bundle/gems/tins-1.16.3/tins.gemspec +0 -41
  4053. data/vendor/bundle/gems/xpath-3.1.0/README.md +0 -78
  4054. data/vendor/bundle/gems/xpath-3.1.0/lib/xpath.rb +0 -16
  4055. data/vendor/bundle/gems/xpath-3.1.0/lib/xpath/dsl.rb +0 -165
  4056. data/vendor/bundle/gems/xpath-3.1.0/lib/xpath/expression.rb +0 -20
  4057. data/vendor/bundle/gems/xpath-3.1.0/lib/xpath/literal.rb +0 -8
  4058. data/vendor/bundle/gems/xpath-3.1.0/lib/xpath/renderer.rb +0 -116
  4059. data/vendor/bundle/gems/xpath-3.1.0/lib/xpath/union.rb +0 -29
  4060. data/vendor/bundle/gems/xpath-3.1.0/lib/xpath/version.rb +0 -3
  4061. data/vendor/bundle/gems/xpath-3.1.0/spec/fixtures/form.html +0 -201
  4062. data/vendor/bundle/gems/xpath-3.1.0/spec/fixtures/simple.html +0 -53
  4063. data/vendor/bundle/gems/xpath-3.1.0/spec/fixtures/stuff.html +0 -54
  4064. data/vendor/bundle/gems/xpath-3.1.0/spec/spec_helper.rb +0 -6
  4065. data/vendor/bundle/gems/xpath-3.1.0/spec/union_spec.rb +0 -64
  4066. data/vendor/bundle/gems/xpath-3.1.0/spec/xpath_spec.rb +0 -544
  4067. data/vendor/bundle/specifications/addressable-2.5.2.gemspec +0 -39
  4068. data/vendor/bundle/specifications/capybara-3.2.1.gemspec +0 -82
  4069. data/vendor/bundle/specifications/childprocess-0.9.0.gemspec +0 -45
  4070. data/vendor/bundle/specifications/concurrent-ruby-1.0.5.gemspec +0 -23
  4071. data/vendor/bundle/specifications/coveralls-0.8.21.gemspec +0 -50
  4072. data/vendor/bundle/specifications/diff-lcs-1.3.gemspec +0 -61
  4073. data/vendor/bundle/specifications/docile-1.1.5.gemspec +0 -48
  4074. data/vendor/bundle/specifications/emot-0.0.4.gemspec +0 -44
  4075. data/vendor/bundle/specifications/faraday-0.15.1.gemspec +0 -32
  4076. data/vendor/bundle/specifications/fastimage-2.1.3.gemspec +0 -45
  4077. data/vendor/bundle/specifications/ffi-1.9.23.gemspec +0 -49
  4078. data/vendor/bundle/specifications/hikidoc-0.1.0.gemspec +0 -37
  4079. data/vendor/bundle/specifications/jasmine-2.99.0.gemspec +0 -59
  4080. data/vendor/bundle/specifications/jasmine-core-2.99.2.gemspec +0 -42
  4081. data/vendor/bundle/specifications/launchy-2.4.3.gemspec +0 -45
  4082. data/vendor/bundle/specifications/mail-2.7.0.gemspec +0 -47
  4083. data/vendor/bundle/specifications/mini_mime-1.0.0.gemspec +0 -39
  4084. data/vendor/bundle/specifications/mini_portile2-2.3.0.gemspec +0 -48
  4085. data/vendor/bundle/specifications/multipart-post-2.0.0.gemspec +0 -22
  4086. data/vendor/bundle/specifications/nokogiri-1.8.2.gemspec +0 -78
  4087. data/vendor/bundle/specifications/octokit-4.9.0.gemspec +0 -36
  4088. data/vendor/bundle/specifications/phantomjs-2.1.1.0.gemspec +0 -44
  4089. data/vendor/bundle/specifications/pit-0.0.7.gemspec +0 -21
  4090. data/vendor/bundle/specifications/power_assert-1.1.1.gemspec +0 -51
  4091. data/vendor/bundle/specifications/public_suffix-3.0.2.gemspec +0 -41
  4092. data/vendor/bundle/specifications/rack-2.0.5.gemspec +0 -42
  4093. data/vendor/bundle/specifications/rack-test-1.0.0.gemspec +0 -54
  4094. data/vendor/bundle/specifications/racksh-1.0.0.gemspec +0 -35
  4095. data/vendor/bundle/specifications/rake-12.3.1.gemspec +0 -49
  4096. data/vendor/bundle/specifications/redcarpet-3.4.0.gemspec +0 -44
  4097. data/vendor/bundle/specifications/rspec-3.7.0.gemspec +0 -42
  4098. data/vendor/bundle/specifications/rspec-core-3.7.1.gemspec +0 -62
  4099. data/vendor/bundle/specifications/rspec-expectations-3.7.0.gemspec +0 -50
  4100. data/vendor/bundle/specifications/rspec-mocks-3.7.0.gemspec +0 -50
  4101. data/vendor/bundle/specifications/rspec-support-3.7.1.gemspec +0 -41
  4102. data/vendor/bundle/specifications/rubyzip-1.2.1.gemspec +0 -41
  4103. data/vendor/bundle/specifications/sawyer-0.8.1.gemspec +0 -34
  4104. data/vendor/bundle/specifications/selenium-webdriver-3.12.0.gemspec +0 -52
  4105. data/vendor/bundle/specifications/sequel-5.9.0.gemspec +0 -52
  4106. data/vendor/bundle/specifications/simplecov-0.14.1.gemspec +0 -42
  4107. data/vendor/bundle/specifications/simplecov-html-0.10.2.gemspec +0 -33
  4108. data/vendor/bundle/specifications/sprockets-3.7.2.gemspec +0 -78
  4109. data/vendor/bundle/specifications/sqlite3-1.3.13.gemspec +0 -56
  4110. data/vendor/bundle/specifications/term-ansicolor-1.6.0.gemspec +0 -46
  4111. data/vendor/bundle/specifications/test-unit-3.2.8.gemspec +0 -48
  4112. data/vendor/bundle/specifications/thor-0.19.4.gemspec +0 -35
  4113. data/vendor/bundle/specifications/tins-1.16.3.gemspec +0 -42
  4114. data/vendor/bundle/specifications/xpath-3.1.0.gemspec +0 -46
@@ -1,275 +0,0 @@
1
- require_relative "spec_helper"
2
-
3
- describe "List plugin" do
4
- def klass(opts={})
5
- @db = DB
6
- c = Class.new(Sequel::Model(@db[:items]))
7
- c.class_eval do
8
- columns :id, :position, :scope_id, :pos
9
- plugin :list, opts
10
- self.use_transactions = false
11
- end
12
- c
13
- end
14
-
15
- before do
16
- @c = klass
17
- @o = @c.load(:id=>7, :position=>3)
18
- @sc = klass(:scope=>:scope_id)
19
- @so = @sc.load(:id=>7, :position=>3, :scope_id=>5)
20
- @db.reset
21
- end
22
-
23
- it "should default to using :position as the position field" do
24
- @c.position_field.must_equal :position
25
- @c.new.list_dataset.sql.must_equal 'SELECT * FROM items ORDER BY position'
26
- end
27
-
28
- it "should accept a :field option to modify the position field" do
29
- klass(:field=>:pos).position_field.must_equal :pos
30
- end
31
-
32
- it "should accept a :scope option with a symbol for a single scope column" do
33
- @sc.new(:scope_id=>4).list_dataset.sql.must_equal 'SELECT * FROM items WHERE (scope_id = 4) ORDER BY scope_id, position'
34
- end
35
-
36
- it "should accept a :scope option with an array of symbols for multiple scope columns" do
37
- ['SELECT * FROM items WHERE ((scope_id = 4) AND (pos = 3)) ORDER BY scope_id, pos, position',
38
- 'SELECT * FROM items WHERE ((pos = 3) AND (scope_id = 4)) ORDER BY scope_id, pos, position'].
39
- must_include(klass(:scope=>[:scope_id, :pos]).new(:scope_id=>4, :pos=>3).list_dataset.sql)
40
- end
41
-
42
- it "should accept a :scope option with a proc for a custom list scope" do
43
- klass(:scope=>proc{|o| o.model.dataset.filter(:active).filter(:scope_id=>o.scope_id)}).new(:scope_id=>4).list_dataset.sql.must_equal 'SELECT * FROM items WHERE (active AND (scope_id = 4)) ORDER BY position'
44
- end
45
-
46
- it "should modify the order when using the plugin" do
47
- c = Class.new(Sequel::Model(:items))
48
- c.dataset.sql.must_equal 'SELECT * FROM items'
49
- c.plugin :list
50
- c.dataset.sql.must_equal 'SELECT * FROM items ORDER BY position'
51
- end
52
-
53
- it "should be able to access the position field as a class attribute" do
54
- @c.position_field.must_equal :position
55
- klass(:field=>:pos).position_field.must_equal :pos
56
- end
57
-
58
- it "should be able to access the scope proc as a class attribute" do
59
- @c.scope_proc.must_be_nil
60
- @sc.scope_proc[@sc.new(:scope_id=>4)].sql.must_equal 'SELECT * FROM items WHERE (scope_id = 4) ORDER BY scope_id, position'
61
- end
62
-
63
- it "should work correctly in subclasses" do
64
- c = Class.new(klass(:scope=>:scope_id))
65
- c.position_field.must_equal :position
66
- c.scope_proc[c.new(:scope_id=>4)].sql.must_equal 'SELECT * FROM items WHERE (scope_id = 4) ORDER BY scope_id, position'
67
- end
68
-
69
- it "should have at_position return the model object at the given position" do
70
- @c.dataset = @c.dataset.with_fetch(:id=>1, :position=>1)
71
- @o.at_position(10).must_equal @c.load(:id=>1, :position=>1)
72
- @sc.dataset = @sc.dataset.with_fetch(:id=>2, :position=>2, :scope_id=>5)
73
- @so.at_position(20).must_equal @sc.load(:id=>2, :position=>2, :scope_id=>5)
74
- @db.sqls.must_equal ["SELECT * FROM items WHERE (position = 10) ORDER BY position LIMIT 1",
75
- "SELECT * FROM items WHERE ((scope_id = 5) AND (position = 20)) ORDER BY scope_id, position LIMIT 1"]
76
- end
77
-
78
- it "should have position field set to max+1 when creating if not already set" do
79
- @c.dataset = @c.dataset.with_autoid(1).with_fetch([[{:pos=>nil}], [{:id=>1, :position=>1}], [{:pos=>1}], [{:id=>2, :position=>2}]])
80
- @c.create.values.must_equal(:id=>1, :position=>1)
81
- @c.create.values.must_equal(:id=>2, :position=>2)
82
- @db.sqls.must_equal ["SELECT max(position) AS max FROM items LIMIT 1",
83
- "INSERT INTO items (position) VALUES (1)",
84
- "SELECT * FROM items WHERE (id = 1) ORDER BY position LIMIT 1",
85
- "SELECT max(position) AS max FROM items LIMIT 1",
86
- "INSERT INTO items (position) VALUES (2)",
87
- "SELECT * FROM items WHERE (id = 2) ORDER BY position LIMIT 1"]
88
- end
89
-
90
- it "should have position field set to max+1 in scope when creating if not already set" do
91
- @sc.dataset = @sc.dataset.with_autoid(1).with_fetch([[{:pos=>nil}], [{:id=>1, :scope_id=>1, :position=>1}], [{:pos=>1}], [{:id=>2, :scope_id=>1, :position=>2}], [{:pos=>nil}], [{:id=>3, :scope_id=>2, :position=>1}]])
92
- @sc.create(:scope_id=>1).values.must_equal(:id=>1, :scope_id=>1, :position=>1)
93
- @sc.create(:scope_id=>1).values.must_equal(:id=>2, :scope_id=>1, :position=>2)
94
- @sc.create(:scope_id=>2).values.must_equal(:id=>3, :scope_id=>2, :position=>1)
95
- @db.sqls.must_equal ["SELECT max(position) AS max FROM items WHERE (scope_id = 1) LIMIT 1",
96
- 'INSERT INTO items (scope_id, position) VALUES (1, 1)',
97
- "SELECT * FROM items WHERE (id = 1) ORDER BY scope_id, position LIMIT 1",
98
- "SELECT max(position) AS max FROM items WHERE (scope_id = 1) LIMIT 1",
99
- 'INSERT INTO items (scope_id, position) VALUES (1, 2)',
100
- "SELECT * FROM items WHERE (id = 2) ORDER BY scope_id, position LIMIT 1",
101
- "SELECT max(position) AS max FROM items WHERE (scope_id = 2) LIMIT 1",
102
- 'INSERT INTO items (scope_id, position) VALUES (2, 1)',
103
- "SELECT * FROM items WHERE (id = 3) ORDER BY scope_id, position LIMIT 1"]
104
- end
105
-
106
- it "should update positions automatically on deletion" do
107
- @o.destroy
108
- @db.sqls.must_equal ["DELETE FROM items WHERE (id = 7)", "UPDATE items SET position = (position - 1) WHERE (position > 3)"]
109
- end
110
-
111
- it "should have last_position return the last position in the list" do
112
- @c.dataset = @c.dataset.with_fetch(:max=>10)
113
- @o.last_position.must_equal 10
114
- @sc.dataset = @sc.dataset.with_fetch(:max=>20)
115
- @so.last_position.must_equal 20
116
- @db.sqls.must_equal ["SELECT max(position) AS max FROM items LIMIT 1",
117
- "SELECT max(position) AS max FROM items WHERE (scope_id = 5) LIMIT 1"]
118
- end
119
-
120
- it "should have list_dataset return the model's dataset for non scoped lists" do
121
- @o.list_dataset.sql.must_equal 'SELECT * FROM items ORDER BY position'
122
- end
123
-
124
- it "should have list dataset return a scoped dataset for scoped lists" do
125
- @so.list_dataset.sql.must_equal 'SELECT * FROM items WHERE (scope_id = 5) ORDER BY scope_id, position'
126
- end
127
-
128
- it "should have move_down without an argument move down a single position" do
129
- @c.dataset = @c.dataset.with_fetch(:max=>10)
130
- @o.move_down.must_equal @o
131
- @o.position.must_equal 4
132
- @db.sqls.must_equal ["SELECT max(position) AS max FROM items LIMIT 1",
133
- "UPDATE items SET position = (position - 1) WHERE ((position >= 4) AND (position <= 4))",
134
- "UPDATE items SET position = 4 WHERE (id = 7)"]
135
- end
136
-
137
- it "should have move_down with an argument move down the given number of positions" do
138
- @c.dataset = @c.dataset.with_fetch(:max=>10)
139
- @o.move_down(3).must_equal @o
140
- @o.position.must_equal 6
141
- @db.sqls.must_equal ["SELECT max(position) AS max FROM items LIMIT 1",
142
- "UPDATE items SET position = (position - 1) WHERE ((position >= 4) AND (position <= 6))",
143
- "UPDATE items SET position = 6 WHERE (id = 7)"]
144
- end
145
-
146
- it "should have move_down with a negative argument move up the given number of positions" do
147
- @o.move_down(-1).must_equal @o
148
- @o.position.must_equal 2
149
- @db.sqls.must_equal ["UPDATE items SET position = (position + 1) WHERE ((position >= 2) AND (position < 3))",
150
- "UPDATE items SET position = 2 WHERE (id = 7)"]
151
- end
152
-
153
- it "should have move_to handle out of range targets" do
154
- @o.move_to(0)
155
- @o.position.must_equal 1
156
- @c.dataset = @c.dataset.with_fetch(:max=>10)
157
- @o.move_to(11)
158
- @o.position.must_equal 10
159
- end
160
-
161
- it "should have move_to use a transaction if the instance is configured to use transactions" do
162
- @o.use_transactions = true
163
- @o.move_to(2)
164
- @db.sqls.must_equal ["BEGIN",
165
- "UPDATE items SET position = (position + 1) WHERE ((position >= 2) AND (position < 3))",
166
- "UPDATE items SET position = 2 WHERE (id = 7)",
167
- "COMMIT"]
168
- end
169
-
170
- it "should have move_to do nothing if the target position is the same as the current position" do
171
- @o.use_transactions = true
172
- @o.move_to(@o.position).must_equal @o
173
- @o.position.must_equal 3
174
- @db.sqls.must_equal []
175
- end
176
-
177
- it "should have move to shift entries correctly between current and target if moving up" do
178
- @o.move_to(2)
179
- @db.sqls.first.must_equal "UPDATE items SET position = (position + 1) WHERE ((position >= 2) AND (position < 3))"
180
- end
181
-
182
- it "should have move to shift entries correctly between current and target if moving down" do
183
- @c.dataset = @c.dataset.with_fetch(:max=>10)
184
- @o.move_to(4)
185
- @db.sqls[1].must_equal "UPDATE items SET position = (position - 1) WHERE ((position >= 4) AND (position <= 4))"
186
- end
187
-
188
- it "should have move_to_bottom move the item to the last position" do
189
- @c.dataset = @c.dataset.with_fetch(:max=>10)
190
- @o.move_to_bottom
191
- @db.sqls.must_equal ["SELECT max(position) AS max FROM items LIMIT 1",
192
- "UPDATE items SET position = (position - 1) WHERE ((position >= 4) AND (position <= 10))",
193
- "UPDATE items SET position = 10 WHERE (id = 7)"]
194
- end
195
-
196
- it "should have move_to_top move the item to the first position" do
197
- @o.move_to_top
198
- @db.sqls.must_equal ["UPDATE items SET position = (position + 1) WHERE ((position >= 1) AND (position < 3))",
199
- "UPDATE items SET position = 1 WHERE (id = 7)"]
200
- end
201
-
202
- it "should have move_up without an argument move up a single position" do
203
- @o.move_up.must_equal @o
204
- @o.position.must_equal 2
205
- @db.sqls.must_equal ["UPDATE items SET position = (position + 1) WHERE ((position >= 2) AND (position < 3))",
206
- "UPDATE items SET position = 2 WHERE (id = 7)"]
207
- end
208
-
209
- it "should have move_up with an argument move up the given number of positions" do
210
- @o.move_up(2).must_equal @o
211
- @o.position.must_equal 1
212
- @db.sqls.must_equal ["UPDATE items SET position = (position + 1) WHERE ((position >= 1) AND (position < 3))",
213
- "UPDATE items SET position = 1 WHERE (id = 7)"]
214
- end
215
-
216
- it "should have move_up with a negative argument move down the given number of positions" do
217
- @c.dataset = @c.dataset.with_fetch(:max=>10)
218
- @o.move_up(-1).must_equal @o
219
- @o.position.must_equal 4
220
- @db.sqls.must_equal ["SELECT max(position) AS max FROM items LIMIT 1",
221
- "UPDATE items SET position = (position - 1) WHERE ((position >= 4) AND (position <= 4))",
222
- "UPDATE items SET position = 4 WHERE (id = 7)"]
223
- end
224
-
225
- it "should have next return the next entry in the list if not given an argument" do
226
- @c.dataset = @c.dataset.with_fetch(:id=>9, :position=>4)
227
- @o.next.must_equal @c.load(:id=>9, :position=>4)
228
- @db.sqls.must_equal ["SELECT * FROM items WHERE (position = 4) ORDER BY position LIMIT 1"]
229
- end
230
-
231
- it "should have next return the entry the given number of positions below the instance if given an argument" do
232
- @c.dataset = @c.dataset.with_fetch(:id=>9, :position=>5)
233
- @o.next(2).must_equal @c.load(:id=>9, :position=>5)
234
- @db.sqls.must_equal ["SELECT * FROM items WHERE (position = 5) ORDER BY position LIMIT 1"]
235
- end
236
-
237
- it "should have next return a previous entry if given a negative argument" do
238
- @c.dataset = @c.dataset.with_fetch(:id=>9, :position=>2)
239
- @o.next(-1).must_equal @c.load(:id=>9, :position=>2)
240
- @db.sqls.must_equal ["SELECT * FROM items WHERE (position = 2) ORDER BY position LIMIT 1"]
241
- end
242
-
243
- it "should have position_value return the value of the position field" do
244
- @o.position_value.must_equal 3
245
- end
246
-
247
- it "should have prev return the previous entry in the list if not given an argument" do
248
- @c.dataset = @c.dataset.with_fetch(:id=>9, :position=>2)
249
- @o.prev.must_equal @c.load(:id=>9, :position=>2)
250
- @db.sqls.must_equal ["SELECT * FROM items WHERE (position = 2) ORDER BY position LIMIT 1"]
251
- end
252
-
253
- it "should have prev return the entry the given number of positions above the instance if given an argument" do
254
- @c.dataset = @c.dataset.with_fetch(:id=>9, :position=>1)
255
- @o.prev(2).must_equal @c.load(:id=>9, :position=>1)
256
- @db.sqls.must_equal ["SELECT * FROM items WHERE (position = 1) ORDER BY position LIMIT 1"]
257
- end
258
-
259
- it "should have prev return a following entry if given a negative argument" do
260
- @c.dataset = @c.dataset.with_fetch(:id=>9, :position=>4)
261
- @o.prev(-1).must_equal @c.load(:id=>9, :position=>4)
262
- @db.sqls.must_equal ["SELECT * FROM items WHERE (position = 4) ORDER BY position LIMIT 1"]
263
- end
264
-
265
- it "should work correctly with validation on position" do
266
- @c.class_eval do
267
- def validate
268
- super
269
- errors.add(:position, "not set") unless position
270
- end
271
- end
272
- @c.create
273
- @db.sqls.must_equal ["SELECT max(position) AS max FROM items LIMIT 1", "INSERT INTO items (position) VALUES (2)", "SELECT * FROM items WHERE (id = 10) ORDER BY position LIMIT 1"]
274
- end
275
- end
@@ -1,43 +0,0 @@
1
- require_relative "spec_helper"
2
-
3
- describe "LooserTypecasting Extension" do
4
- before do
5
- @db = Sequel.mock
6
- def @db.supports_schema_parsing?() true end
7
- def @db.schema(*args)
8
- [[:id, {}], [:z, {:type=>:float}], [:b, {:type=>:integer}], [:d, {:type=>:decimal}], [:s, {:type=>:string}]]
9
- end
10
- @c = Class.new(Sequel::Model(@db[:items]))
11
- @db.extension(:looser_typecasting)
12
- @c.instance_eval do
13
- @columns = [:id, :b, :z, :d, :s]
14
- def columns; @columns; end
15
- end
16
- end
17
-
18
- it "should not raise errors for invalid strings in integer columns" do
19
- @c.new(:b=>'a').b.must_equal 0
20
- @c.new(:b=>'a').b.must_be_kind_of(Integer)
21
- end
22
-
23
- it "should not raise errors for invalid strings in float columns" do
24
- @c.new(:z=>'a').z.must_equal 0.0
25
- @c.new(:z=>'a').z.must_be_kind_of(Float)
26
- end
27
-
28
- it "should not raise errors for hash or array input to string columns" do
29
- @c.new(:s=>'a').s.must_equal 'a'
30
- @c.new(:s=>[]).s.must_be_kind_of(String)
31
- @c.new(:s=>{}).s.must_be_kind_of(String)
32
- end
33
-
34
- it "should not raise errors for invalid strings in decimal columns" do
35
- @c.new(:d=>'a').d.must_equal 0.0
36
- @c.new(:d=>'a').d.must_be_kind_of(BigDecimal)
37
- end
38
-
39
- it "should not affect conversions of other types in decimal columns" do
40
- @c.new(:d=>1).d.must_equal 1
41
- @c.new(:d=>1).d.must_be_kind_of(BigDecimal)
42
- end
43
- end
@@ -1,2177 +0,0 @@
1
- require_relative "spec_helper"
2
-
3
- describe Sequel::Model, "many_through_many" do
4
- before do
5
- class ::Artist < Sequel::Model
6
- attr_accessor :yyy
7
- columns :id
8
- plugin :many_through_many
9
- end
10
- class ::Tag < Sequel::Model
11
- columns :id, :h1, :h2
12
- end
13
- @c1 = Artist
14
- @c2 = Tag
15
- @dataset = @c2.dataset = @c2.dataset.with_fetch(:id=>1)
16
- DB.reset
17
- end
18
- after do
19
- Object.send(:remove_const, :Artist)
20
- Object.send(:remove_const, :Tag)
21
- end
22
-
23
- it "should raise an error if current class does not have a primary key, and :left_primary_key is not specified" do
24
- @c1.no_primary_key
25
- proc{@c1.many_through_many :tags, :through=>[[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]]}.must_raise(Sequel::Error)
26
- DB.sqls.must_equal []
27
- end
28
-
29
- it "should raise an error if associated class does not have a primary key, and :right_primary_key is not specified" do
30
- @c2.no_primary_key
31
- @c1.many_through_many :tags, :through=>[[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]]
32
- n = @c1.load(:id => 1234)
33
- proc{n.tags}.must_raise(Sequel::Error)
34
- DB.sqls.must_equal []
35
- end
36
-
37
- it "should populate :key_hash and :id_map option correctly for custom eager loaders" do
38
- khs = []
39
- pr = proc{|h| khs << [h[:key_hash], h[:id_map]]}
40
- @c1.many_through_many :tags, :through=>[[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :eager_loader=>pr
41
- @c1.eager(:tags).all
42
- khs.must_equal [[{:id=>{1=>[Artist.load(:x=>1, :id=>1)]}}, {1=>[Artist.load(:x=>1, :id=>1)]}]]
43
-
44
- khs.clear
45
- @c1.many_through_many :tags, :through=>[[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :left_primary_key=>:id, :left_primary_key_column=>:i, :eager_loader=>pr
46
- @c1.eager(:tags).all
47
- khs.must_equal [[{:id=>{1=>[Artist.load(:x=>1, :id=>1)]}}, {1=>[Artist.load(:x=>1, :id=>1)]}]]
48
- end
49
-
50
- it "should support using a custom :left_primary_key option when eager loading many_to_many associations" do
51
- @c1.send(:define_method, :id3){id*3}
52
- @c1.dataset = @c1.dataset.with_fetch(:id=>1)
53
- @c2.dataset = @c2.dataset.with_fetch(:id=>4, :x_foreign_key_x=>3)
54
- @c1.many_through_many :tags, :through=>[[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :left_primary_key=>:id3
55
- a = @c1.eager(:tags).all
56
- a.must_equal [@c1.load(:id => 1)]
57
- DB.sqls.must_equal ['SELECT * FROM artists', "SELECT tags.*, albums_artists.artist_id AS x_foreign_key_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id IN (3))"]
58
- a.first.tags.must_equal [@c2.load(:id=>4)]
59
- DB.sqls.must_equal []
60
- end
61
-
62
- it "should handle a :predicate_key option to change the SQL used in the lookup" do
63
- @c1.dataset = @c1.dataset.with_fetch(:id=>1)
64
- @c2.dataset = @c2.dataset.with_fetch(:id=>4, :x_foreign_key_x=>1)
65
- @c1.many_through_many :tags, :through=>[[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :predicate_key=>(Sequel[:albums_artists][:artist_id] / 3)
66
- a = @c1.eager(:tags).all
67
- a.must_equal [@c1.load(:id => 1)]
68
- DB.sqls.must_equal ['SELECT * FROM artists', "SELECT tags.*, (albums_artists.artist_id / 3) AS x_foreign_key_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE ((albums_artists.artist_id / 3) IN (1))"]
69
- a.first.tags.must_equal [@c2.load(:id=>4)]
70
- end
71
-
72
- it "should handle schema qualified tables" do
73
- @c1.many_through_many :tags, :through=>[[Sequel[:myschema][:albums_artists], :artist_id, :album_id], [Sequel[:myschema][:albums], :id, :id], [Sequel[:myschema][:albums_tags], :album_id, :tag_id]]
74
- @c1.load(:id=>1).tags_dataset.sql.must_equal "SELECT tags.* FROM tags INNER JOIN myschema.albums_tags ON (myschema.albums_tags.tag_id = tags.id) INNER JOIN myschema.albums ON (myschema.albums.id = myschema.albums_tags.album_id) INNER JOIN myschema.albums_artists ON (myschema.albums_artists.album_id = myschema.albums.id) WHERE (myschema.albums_artists.artist_id = 1)"
75
-
76
- @c1.dataset = @c1.dataset.with_fetch(:id=>1)
77
- @c2.dataset = @c2.dataset.with_fetch(:id=>4, :x_foreign_key_x=>1)
78
- a = @c1.eager(:tags).all
79
- a.must_equal [@c1.load(:id => 1)]
80
- DB.sqls.must_equal ['SELECT * FROM artists', "SELECT tags.*, myschema.albums_artists.artist_id AS x_foreign_key_x FROM tags INNER JOIN myschema.albums_tags ON (myschema.albums_tags.tag_id = tags.id) INNER JOIN myschema.albums ON (myschema.albums.id = myschema.albums_tags.album_id) INNER JOIN myschema.albums_artists ON (myschema.albums_artists.album_id = myschema.albums.id) WHERE (myschema.albums_artists.artist_id IN (1))"]
81
-
82
- Tag.dataset.columns(:id, :h1, :h2)
83
- @c1.eager_graph(:tags).sql.must_equal 'SELECT artists.id, tags.id AS tags_id, tags.h1, tags.h2 FROM artists LEFT OUTER JOIN myschema.albums_artists AS albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN myschema.albums AS albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN myschema.albums_tags AS albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags ON (tags.id = albums_tags.tag_id)'
84
- end
85
-
86
- with_symbol_splitting "should handle schema qualified table symbols" do
87
- @c1.many_through_many :tags, :through=>[[:myschema__albums_artists, :artist_id, :album_id], [:myschema__albums, :id, :id], [:myschema__albums_tags, :album_id, :tag_id]]
88
- @c1.load(:id=>1).tags_dataset.sql.must_equal "SELECT tags.* FROM tags INNER JOIN myschema.albums_tags ON (myschema.albums_tags.tag_id = tags.id) INNER JOIN myschema.albums ON (myschema.albums.id = myschema.albums_tags.album_id) INNER JOIN myschema.albums_artists ON (myschema.albums_artists.album_id = myschema.albums.id) WHERE (myschema.albums_artists.artist_id = 1)"
89
-
90
- @c1.dataset = @c1.dataset.with_fetch(:id=>1)
91
- @c2.dataset = @c2.dataset.with_fetch(:id=>4, :x_foreign_key_x=>1)
92
- a = @c1.eager(:tags).all
93
- a.must_equal [@c1.load(:id => 1)]
94
- DB.sqls.must_equal ['SELECT * FROM artists', "SELECT tags.*, myschema.albums_artists.artist_id AS x_foreign_key_x FROM tags INNER JOIN myschema.albums_tags ON (myschema.albums_tags.tag_id = tags.id) INNER JOIN myschema.albums ON (myschema.albums.id = myschema.albums_tags.album_id) INNER JOIN myschema.albums_artists ON (myschema.albums_artists.album_id = myschema.albums.id) WHERE (myschema.albums_artists.artist_id IN (1))"]
95
-
96
- Tag.dataset.columns(:id, :h1, :h2)
97
- @c1.eager_graph(:tags).sql.must_equal 'SELECT artists.id, tags.id AS tags_id, tags.h1, tags.h2 FROM artists LEFT OUTER JOIN myschema.albums_artists AS albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN myschema.albums AS albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN myschema.albums_tags AS albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags ON (tags.id = albums_tags.tag_id)'
98
- end
99
-
100
- it "should default to associating to other models in the same scope" do
101
- begin
102
- class ::AssociationModuleTest
103
- class Artist < Sequel::Model
104
- plugin :many_through_many
105
- many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]]
106
- end
107
- class Tag < Sequel::Model
108
- end
109
- end
110
-
111
- ::AssociationModuleTest::Artist.association_reflection(:tags).associated_class.must_equal ::AssociationModuleTest::Tag
112
- ensure
113
- Object.send(:remove_const, :AssociationModuleTest)
114
- end
115
- end
116
-
117
- it "should raise an error if in invalid form of through is used" do
118
- proc{@c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id]]}.must_raise(Sequel::Error)
119
- proc{@c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], {:table=>:album_tags, :left=>:album_id}]}.must_raise(Sequel::Error)
120
- proc{@c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], :album_tags]}.must_raise(Sequel::Error)
121
- end
122
-
123
- it "should allow only two arguments with the :through option" do
124
- @c1.many_through_many :tags, :through=>[[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]]
125
- n = @c1.load(:id => 1234)
126
- n.tags_dataset.sql.must_equal 'SELECT tags.* FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id = 1234)'
127
- n.tags.must_equal [@c2.load(:id=>1)]
128
- end
129
-
130
- it "should be clonable" do
131
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]]
132
- @c1.many_through_many :other_tags, :clone=>:tags
133
- n = @c1.load(:id => 1234)
134
- n.other_tags_dataset.sql.must_equal 'SELECT tags.* FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id = 1234)'
135
- n.tags.must_equal [@c2.load(:id=>1)]
136
- end
137
-
138
- it "should use join tables given" do
139
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]]
140
- n = @c1.load(:id => 1234)
141
- n.tags_dataset.sql.must_equal 'SELECT tags.* FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id = 1234)'
142
- n.tags.must_equal [@c2.load(:id=>1)]
143
- end
144
-
145
- it "should handle multiple aliasing of tables" do
146
- begin
147
- class ::Album < Sequel::Model
148
- end
149
- @c1.many_through_many :albums, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_artists, :album_id, :artist_id], [:artists, :id, :id], [:albums_artists, :artist_id, :album_id]]
150
- n = @c1.load(:id => 1234)
151
- n.albums_dataset.sql.must_equal 'SELECT albums.* FROM albums INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) INNER JOIN artists ON (artists.id = albums_artists.artist_id) INNER JOIN albums_artists AS albums_artists_0 ON (albums_artists_0.artist_id = artists.id) INNER JOIN albums AS albums_0 ON (albums_0.id = albums_artists_0.album_id) INNER JOIN albums_artists AS albums_artists_1 ON (albums_artists_1.album_id = albums_0.id) WHERE (albums_artists_1.artist_id = 1234)'
152
- n.albums.must_equal [Album.load(:id=>1, :x=>1)]
153
- ensure
154
- Object.send(:remove_const, :Album)
155
- end
156
- end
157
-
158
- it "should use explicit class if given" do
159
- @c1.many_through_many :albums_tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :class=>Tag
160
- n = @c1.load(:id => 1234)
161
- n.albums_tags_dataset.sql.must_equal 'SELECT tags.* FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id = 1234)'
162
- n.albums_tags.must_equal [@c2.load(:id=>1)]
163
- end
164
-
165
- it "should accept :left_primary_key and :right_primary_key option for primary keys to use in current and associated table" do
166
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :right_primary_key=>:tag_id, :left_primary_key=>:yyy
167
- n = @c1.load(:id => 1234)
168
- n.yyy = 85
169
- n.tags_dataset.sql.must_equal 'SELECT tags.* FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.tag_id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id = 85)'
170
- n.tags.must_equal [@c2.load(:id=>1)]
171
- end
172
-
173
- it "should handle composite keys" do
174
- @c1.many_through_many :tags, [[:albums_artists, [:b1, :b2], [:c1, :c2]], [:albums, [:d1, :d2], [:e1, :e2]], [:albums_tags, [:f1, :f2], [:g1, :g2]]], :right_primary_key=>[:h1, :h2], :left_primary_key=>[:id, :yyy]
175
- n = @c1.load(:id => 1234)
176
- n.yyy = 85
177
- n.tags_dataset.sql.must_equal 'SELECT tags.* FROM tags INNER JOIN albums_tags ON ((albums_tags.g1 = tags.h1) AND (albums_tags.g2 = tags.h2)) INNER JOIN albums ON ((albums.e1 = albums_tags.f1) AND (albums.e2 = albums_tags.f2)) INNER JOIN albums_artists ON ((albums_artists.c1 = albums.d1) AND (albums_artists.c2 = albums.d2)) WHERE ((albums_artists.b1 = 1234) AND (albums_artists.b2 = 85))'
178
- n.tags.must_equal [@c2.load(:id=>1)]
179
- end
180
-
181
- it "should allowing filtering by many_through_many associations" do
182
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]]
183
- @c1.filter(:tags=>@c2.load(:id=>1234)).sql.must_equal 'SELECT * FROM artists WHERE (artists.id IN (SELECT albums_artists.artist_id FROM albums_artists INNER JOIN albums ON (albums.id = albums_artists.album_id) INNER JOIN albums_tags ON (albums_tags.album_id = albums.id) WHERE ((albums_tags.tag_id = 1234) AND (albums_artists.artist_id IS NOT NULL))))'
184
- end
185
-
186
- it "should allowing filtering by many_through_many associations with a single through table" do
187
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id]]
188
- @c1.filter(:tags=>@c2.load(:id=>1234)).sql.must_equal 'SELECT * FROM artists WHERE (artists.id IN (SELECT albums_artists.artist_id FROM albums_artists WHERE ((albums_artists.album_id = 1234) AND (albums_artists.artist_id IS NOT NULL))))'
189
- end
190
-
191
- it "should allowing filtering by many_through_many associations with aliased tables" do
192
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums_artists, :id, :id], [:albums_artists, :album_id, :tag_id]]
193
- @c1.filter(:tags=>@c2.load(:id=>1234)).sql.must_equal 'SELECT * FROM artists WHERE (artists.id IN (SELECT albums_artists.artist_id FROM albums_artists INNER JOIN albums_artists AS albums_artists_0 ON (albums_artists_0.id = albums_artists.album_id) INNER JOIN albums_artists AS albums_artists_1 ON (albums_artists_1.album_id = albums_artists_0.id) WHERE ((albums_artists_1.tag_id = 1234) AND (albums_artists.artist_id IS NOT NULL))))'
194
- end
195
-
196
- it "should allowing filtering by many_through_many associations with composite keys" do
197
- @c1.many_through_many :tags, [[:albums_artists, [:b1, :b2], [:c1, :c2]], [:albums, [:d1, :d2], [:e1, :e2]], [:albums_tags, [:f1, :f2], [:g1, :g2]]], :right_primary_key=>[:h1, :h2], :left_primary_key=>[:id, :yyy]
198
- @c1.filter(:tags=>@c2.load(:h1=>1234, :h2=>85)).sql.must_equal 'SELECT * FROM artists WHERE ((artists.id, artists.yyy) IN (SELECT albums_artists.b1, albums_artists.b2 FROM albums_artists INNER JOIN albums ON ((albums.d1 = albums_artists.c1) AND (albums.d2 = albums_artists.c2)) INNER JOIN albums_tags ON ((albums_tags.f1 = albums.e1) AND (albums_tags.f2 = albums.e2)) WHERE ((albums_tags.g1 = 1234) AND (albums_tags.g2 = 85) AND (albums_artists.b1 IS NOT NULL) AND (albums_artists.b2 IS NOT NULL))))'
199
- end
200
-
201
- it "should allowing filtering by many_through_many associations with :conditions" do
202
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :conditions=>{:name=>'A'}
203
- @c1.filter(:tags=>@c2.load(:id=>1234)).sql.must_equal "SELECT * FROM artists WHERE (artists.id IN (SELECT albums_artists.artist_id FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE ((name = 'A') AND (albums_artists.artist_id IS NOT NULL) AND (tags.id = 1234))))"
204
- end
205
-
206
- it "should allowing filtering by many_through_many associations with :conditions with a single through table" do
207
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id]], :conditions=>{:name=>'A'}
208
- @c1.filter(:tags=>@c2.load(:id=>1234)).sql.must_equal "SELECT * FROM artists WHERE (artists.id IN (SELECT albums_artists.artist_id FROM tags INNER JOIN albums_artists ON (albums_artists.album_id = tags.id) WHERE ((name = 'A') AND (albums_artists.artist_id IS NOT NULL) AND (tags.id = 1234))))"
209
- end
210
-
211
- it "should allowing filtering by many_through_many associations with :conditions and composite keys" do
212
- @c1.many_through_many :tags, [[:albums_artists, [:b1, :b2], [:c1, :c2]], [:albums, [:d1, :d2], [:e1, :e2]], [:albums_tags, [:f1, :f2], [:g1, :g2]]], :right_primary_key=>[:h1, :h2], :left_primary_key=>[:id, :yyy], :conditions=>{:name=>'A'}
213
- @c1.filter(:tags=>@c2.load(:id=>1, :h1=>1234, :h2=>85)).sql.must_equal "SELECT * FROM artists WHERE ((artists.id, artists.yyy) IN (SELECT albums_artists.b1, albums_artists.b2 FROM tags INNER JOIN albums_tags ON ((albums_tags.g1 = tags.h1) AND (albums_tags.g2 = tags.h2)) INNER JOIN albums ON ((albums.e1 = albums_tags.f1) AND (albums.e2 = albums_tags.f2)) INNER JOIN albums_artists ON ((albums_artists.c1 = albums.d1) AND (albums_artists.c2 = albums.d2)) WHERE ((name = 'A') AND (albums_artists.b1 IS NOT NULL) AND (albums_artists.b2 IS NOT NULL) AND (tags.id = 1))))"
214
- end
215
-
216
- it "should allowing filtering by many_through_many associations with :limit" do
217
- @c2.dataset = @c2.dataset.with_extend{def supports_window_functions?; true end}
218
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :limit=>10
219
- @c1.filter(:tags=>@c2.load(:id=>1234)).sql.must_equal 'SELECT * FROM artists WHERE (artists.id IN (SELECT albums_artists.artist_id FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE ((albums_artists.artist_id IS NOT NULL) AND ((albums_artists.artist_id, tags.id) IN (SELECT b, c FROM (SELECT albums_artists.artist_id AS b, tags.id AS c, row_number() OVER (PARTITION BY albums_artists.artist_id) AS x_sequel_row_number_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id)) AS t1 WHERE (x_sequel_row_number_x <= 10))) AND (tags.id = 1234))))'
220
- end
221
-
222
- it "should allowing filtering by many_through_many associations with :limit and composite keys" do
223
- @c2.dataset = @c2.dataset.with_extend{def supports_window_functions?; true end}
224
- @c1.many_through_many :tags, [[:albums_artists, [:b1, :b2], [:c1, :c2]], [:albums, [:d1, :d2], [:e1, :e2]], [:albums_tags, [:f1, :f2], [:g1, :g2]]], :right_primary_key=>[:h1, :h2], :left_primary_key=>[:id, :yyy], :limit=>10
225
- @c1.filter(:tags=>@c2.load(:id=>1, :h1=>1234, :h2=>85)).sql.must_equal 'SELECT * FROM artists WHERE ((artists.id, artists.yyy) IN (SELECT albums_artists.b1, albums_artists.b2 FROM tags INNER JOIN albums_tags ON ((albums_tags.g1 = tags.h1) AND (albums_tags.g2 = tags.h2)) INNER JOIN albums ON ((albums.e1 = albums_tags.f1) AND (albums.e2 = albums_tags.f2)) INNER JOIN albums_artists ON ((albums_artists.c1 = albums.d1) AND (albums_artists.c2 = albums.d2)) WHERE ((albums_artists.b1 IS NOT NULL) AND (albums_artists.b2 IS NOT NULL) AND ((albums_artists.b1, albums_artists.b2, tags.id) IN (SELECT b, c, d FROM (SELECT albums_artists.b1 AS b, albums_artists.b2 AS c, tags.id AS d, row_number() OVER (PARTITION BY albums_artists.b1, albums_artists.b2) AS x_sequel_row_number_x FROM tags INNER JOIN albums_tags ON ((albums_tags.g1 = tags.h1) AND (albums_tags.g2 = tags.h2)) INNER JOIN albums ON ((albums.e1 = albums_tags.f1) AND (albums.e2 = albums_tags.f2)) INNER JOIN albums_artists ON ((albums_artists.c1 = albums.d1) AND (albums_artists.c2 = albums.d2))) AS t1 WHERE (x_sequel_row_number_x <= 10))) AND (tags.id = 1))))'
226
- end
227
-
228
- it "should allowing filtering by many_through_many associations with :limit and :conditions" do
229
- @c2.dataset = @c2.dataset.with_extend{def supports_window_functions?; true end}
230
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :conditions=>{:name=>'A'}, :limit=>10
231
- @c1.filter(:tags=>@c2.load(:id=>1234)).sql.must_equal "SELECT * FROM artists WHERE (artists.id IN (SELECT albums_artists.artist_id FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE ((name = 'A') AND (albums_artists.artist_id IS NOT NULL) AND ((albums_artists.artist_id, tags.id) IN (SELECT b, c FROM (SELECT albums_artists.artist_id AS b, tags.id AS c, row_number() OVER (PARTITION BY albums_artists.artist_id) AS x_sequel_row_number_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (name = 'A')) AS t1 WHERE (x_sequel_row_number_x <= 10))) AND (tags.id = 1234))))"
232
- end
233
-
234
- it "should allowing filtering by many_through_many associations with :limit and :conditions and composite keys" do
235
- @c2.dataset = @c2.dataset.with_extend{def supports_window_functions?; true end}
236
- @c1.many_through_many :tags, [[:albums_artists, [:b1, :b2], [:c1, :c2]], [:albums, [:d1, :d2], [:e1, :e2]], [:albums_tags, [:f1, :f2], [:g1, :g2]]], :right_primary_key=>[:h1, :h2], :left_primary_key=>[:id, :yyy], :conditions=>{:name=>'A'}, :limit=>10
237
- @c1.filter(:tags=>@c2.load(:id=>1, :h1=>1234, :h2=>85)).sql.must_equal "SELECT * FROM artists WHERE ((artists.id, artists.yyy) IN (SELECT albums_artists.b1, albums_artists.b2 FROM tags INNER JOIN albums_tags ON ((albums_tags.g1 = tags.h1) AND (albums_tags.g2 = tags.h2)) INNER JOIN albums ON ((albums.e1 = albums_tags.f1) AND (albums.e2 = albums_tags.f2)) INNER JOIN albums_artists ON ((albums_artists.c1 = albums.d1) AND (albums_artists.c2 = albums.d2)) WHERE ((name = 'A') AND (albums_artists.b1 IS NOT NULL) AND (albums_artists.b2 IS NOT NULL) AND ((albums_artists.b1, albums_artists.b2, tags.id) IN (SELECT b, c, d FROM (SELECT albums_artists.b1 AS b, albums_artists.b2 AS c, tags.id AS d, row_number() OVER (PARTITION BY albums_artists.b1, albums_artists.b2) AS x_sequel_row_number_x FROM tags INNER JOIN albums_tags ON ((albums_tags.g1 = tags.h1) AND (albums_tags.g2 = tags.h2)) INNER JOIN albums ON ((albums.e1 = albums_tags.f1) AND (albums.e2 = albums_tags.f2)) INNER JOIN albums_artists ON ((albums_artists.c1 = albums.d1) AND (albums_artists.c2 = albums.d2)) WHERE (name = 'A')) AS t1 WHERE (x_sequel_row_number_x <= 10))) AND (tags.id = 1))))"
238
- end
239
-
240
- it "should allowing excluding by many_through_many associations" do
241
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]]
242
- @c1.exclude(:tags=>@c2.load(:id=>1234)).sql.must_equal 'SELECT * FROM artists WHERE ((artists.id NOT IN (SELECT albums_artists.artist_id FROM albums_artists INNER JOIN albums ON (albums.id = albums_artists.album_id) INNER JOIN albums_tags ON (albums_tags.album_id = albums.id) WHERE ((albums_tags.tag_id = 1234) AND (albums_artists.artist_id IS NOT NULL)))) OR (artists.id IS NULL))'
243
- end
244
-
245
- it "should allowing excluding by many_through_many associations with composite keys" do
246
- @c1.many_through_many :tags, [[:albums_artists, [:b1, :b2], [:c1, :c2]], [:albums, [:d1, :d2], [:e1, :e2]], [:albums_tags, [:f1, :f2], [:g1, :g2]]], :right_primary_key=>[:h1, :h2], :left_primary_key=>[:id, :yyy]
247
- @c1.exclude(:tags=>@c2.load(:h1=>1234, :h2=>85)).sql.must_equal 'SELECT * FROM artists WHERE (((artists.id, artists.yyy) NOT IN (SELECT albums_artists.b1, albums_artists.b2 FROM albums_artists INNER JOIN albums ON ((albums.d1 = albums_artists.c1) AND (albums.d2 = albums_artists.c2)) INNER JOIN albums_tags ON ((albums_tags.f1 = albums.e1) AND (albums_tags.f2 = albums.e2)) WHERE ((albums_tags.g1 = 1234) AND (albums_tags.g2 = 85) AND (albums_artists.b1 IS NOT NULL) AND (albums_artists.b2 IS NOT NULL)))) OR (artists.id IS NULL) OR (artists.yyy IS NULL))'
248
- end
249
-
250
- it "should allowing excluding by many_through_many associations with :conditions" do
251
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :conditions=>{:name=>'A'}
252
- @c1.exclude(:tags=>@c2.load(:id=>1234)).sql.must_equal "SELECT * FROM artists WHERE ((artists.id NOT IN (SELECT albums_artists.artist_id FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE ((name = 'A') AND (albums_artists.artist_id IS NOT NULL) AND (tags.id = 1234)))) OR (artists.id IS NULL))"
253
- end
254
-
255
- it "should allowing excluding by many_through_many associations with :conditions and composite keys" do
256
- @c1.many_through_many :tags, [[:albums_artists, [:b1, :b2], [:c1, :c2]], [:albums, [:d1, :d2], [:e1, :e2]], [:albums_tags, [:f1, :f2], [:g1, :g2]]], :right_primary_key=>[:h1, :h2], :left_primary_key=>[:id, :yyy], :conditions=>{:name=>'A'}
257
- @c1.exclude(:tags=>@c2.load(:id=>1, :h1=>1234, :h2=>85)).sql.must_equal "SELECT * FROM artists WHERE (((artists.id, artists.yyy) NOT IN (SELECT albums_artists.b1, albums_artists.b2 FROM tags INNER JOIN albums_tags ON ((albums_tags.g1 = tags.h1) AND (albums_tags.g2 = tags.h2)) INNER JOIN albums ON ((albums.e1 = albums_tags.f1) AND (albums.e2 = albums_tags.f2)) INNER JOIN albums_artists ON ((albums_artists.c1 = albums.d1) AND (albums_artists.c2 = albums.d2)) WHERE ((name = 'A') AND (albums_artists.b1 IS NOT NULL) AND (albums_artists.b2 IS NOT NULL) AND (tags.id = 1)))) OR (artists.id IS NULL) OR (artists.yyy IS NULL))"
258
- end
259
-
260
- it "should allowing filtering by multiple many_through_many associations" do
261
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]]
262
- @c1.filter(:tags=>[@c2.load(:id=>1234), @c2.load(:id=>2345)]).sql.must_equal 'SELECT * FROM artists WHERE (artists.id IN (SELECT albums_artists.artist_id FROM albums_artists INNER JOIN albums ON (albums.id = albums_artists.album_id) INNER JOIN albums_tags ON (albums_tags.album_id = albums.id) WHERE ((albums_tags.tag_id IN (1234, 2345)) AND (albums_artists.artist_id IS NOT NULL))))'
263
- end
264
-
265
- it "should allowing filtering by multiple many_through_many associations with composite keys" do
266
- @c1.many_through_many :tags, [[:albums_artists, [:b1, :b2], [:c1, :c2]], [:albums, [:d1, :d2], [:e1, :e2]], [:albums_tags, [:f1, :f2], [:g1, :g2]]], :right_primary_key=>[:h1, :h2], :left_primary_key=>[:id, :yyy]
267
- @c1.filter(:tags=>[@c2.load(:h1=>1234, :h2=>85), @c2.load(:h1=>2345, :h2=>95)]).sql.must_equal 'SELECT * FROM artists WHERE ((artists.id, artists.yyy) IN (SELECT albums_artists.b1, albums_artists.b2 FROM albums_artists INNER JOIN albums ON ((albums.d1 = albums_artists.c1) AND (albums.d2 = albums_artists.c2)) INNER JOIN albums_tags ON ((albums_tags.f1 = albums.e1) AND (albums_tags.f2 = albums.e2)) WHERE (((albums_tags.g1, albums_tags.g2) IN ((1234, 85), (2345, 95))) AND (albums_artists.b1 IS NOT NULL) AND (albums_artists.b2 IS NOT NULL))))'
268
- end
269
-
270
- it "should allowing filtering by multiple many_through_many associations with :conditions" do
271
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :conditions=>{:name=>'A'}
272
- @c1.filter(:tags=>[@c2.load(:id=>1234), @c2.load(:id=>2345)]).sql.must_equal "SELECT * FROM artists WHERE (artists.id IN (SELECT albums_artists.artist_id FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE ((name = 'A') AND (albums_artists.artist_id IS NOT NULL) AND (tags.id IN (1234, 2345)))))"
273
- end
274
-
275
- it "should allowing filtering by multiple many_through_many associations with :conditions and composite keys" do
276
- @c1.many_through_many :tags, [[:albums_artists, [:b1, :b2], [:c1, :c2]], [:albums, [:d1, :d2], [:e1, :e2]], [:albums_tags, [:f1, :f2], [:g1, :g2]]], :right_primary_key=>[:h1, :h2], :left_primary_key=>[:id, :yyy], :conditions=>{:name=>'A'}
277
- @c1.filter(:tags=>[@c2.load(:id=>1, :h1=>1234, :h2=>85), @c2.load(:id=>2, :h1=>2345, :h2=>95)]).sql.must_equal "SELECT * FROM artists WHERE ((artists.id, artists.yyy) IN (SELECT albums_artists.b1, albums_artists.b2 FROM tags INNER JOIN albums_tags ON ((albums_tags.g1 = tags.h1) AND (albums_tags.g2 = tags.h2)) INNER JOIN albums ON ((albums.e1 = albums_tags.f1) AND (albums.e2 = albums_tags.f2)) INNER JOIN albums_artists ON ((albums_artists.c1 = albums.d1) AND (albums_artists.c2 = albums.d2)) WHERE ((name = 'A') AND (albums_artists.b1 IS NOT NULL) AND (albums_artists.b2 IS NOT NULL) AND (tags.id IN (1, 2)))))"
278
- end
279
-
280
- it "should allowing excluding by multiple many_through_many associations" do
281
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]]
282
- @c1.exclude(:tags=>[@c2.load(:id=>1234), @c2.load(:id=>2345)]).sql.must_equal 'SELECT * FROM artists WHERE ((artists.id NOT IN (SELECT albums_artists.artist_id FROM albums_artists INNER JOIN albums ON (albums.id = albums_artists.album_id) INNER JOIN albums_tags ON (albums_tags.album_id = albums.id) WHERE ((albums_tags.tag_id IN (1234, 2345)) AND (albums_artists.artist_id IS NOT NULL)))) OR (artists.id IS NULL))'
283
- end
284
-
285
- it "should allowing excluding by multiple many_through_many associations with composite keys" do
286
- @c1.many_through_many :tags, [[:albums_artists, [:b1, :b2], [:c1, :c2]], [:albums, [:d1, :d2], [:e1, :e2]], [:albums_tags, [:f1, :f2], [:g1, :g2]]], :right_primary_key=>[:h1, :h2], :left_primary_key=>[:id, :yyy]
287
- @c1.exclude(:tags=>[@c2.load(:h1=>1234, :h2=>85), @c2.load(:h1=>2345, :h2=>95)]).sql.must_equal 'SELECT * FROM artists WHERE (((artists.id, artists.yyy) NOT IN (SELECT albums_artists.b1, albums_artists.b2 FROM albums_artists INNER JOIN albums ON ((albums.d1 = albums_artists.c1) AND (albums.d2 = albums_artists.c2)) INNER JOIN albums_tags ON ((albums_tags.f1 = albums.e1) AND (albums_tags.f2 = albums.e2)) WHERE (((albums_tags.g1, albums_tags.g2) IN ((1234, 85), (2345, 95))) AND (albums_artists.b1 IS NOT NULL) AND (albums_artists.b2 IS NOT NULL)))) OR (artists.id IS NULL) OR (artists.yyy IS NULL))'
288
- end
289
-
290
- it "should allowing excluding by multiple many_through_many associations with :conditions" do
291
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :conditions=>{:name=>'A'}
292
- @c1.exclude(:tags=>[@c2.load(:id=>1234), @c2.load(:id=>2345)]).sql.must_equal "SELECT * FROM artists WHERE ((artists.id NOT IN (SELECT albums_artists.artist_id FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE ((name = 'A') AND (albums_artists.artist_id IS NOT NULL) AND (tags.id IN (1234, 2345))))) OR (artists.id IS NULL))"
293
- end
294
-
295
- it "should allowing excluding by multiple many_through_many associations with :conditions and composite keys" do
296
- @c1.many_through_many :tags, [[:albums_artists, [:b1, :b2], [:c1, :c2]], [:albums, [:d1, :d2], [:e1, :e2]], [:albums_tags, [:f1, :f2], [:g1, :g2]]], :right_primary_key=>[:h1, :h2], :left_primary_key=>[:id, :yyy], :conditions=>{:name=>'A'}
297
- @c1.exclude(:tags=>[@c2.load(:id=>1, :h1=>1234, :h2=>85), @c2.load(:id=>2, :h1=>2345, :h2=>95)]).sql.must_equal "SELECT * FROM artists WHERE (((artists.id, artists.yyy) NOT IN (SELECT albums_artists.b1, albums_artists.b2 FROM tags INNER JOIN albums_tags ON ((albums_tags.g1 = tags.h1) AND (albums_tags.g2 = tags.h2)) INNER JOIN albums ON ((albums.e1 = albums_tags.f1) AND (albums.e2 = albums_tags.f2)) INNER JOIN albums_artists ON ((albums_artists.c1 = albums.d1) AND (albums_artists.c2 = albums.d2)) WHERE ((name = 'A') AND (albums_artists.b1 IS NOT NULL) AND (albums_artists.b2 IS NOT NULL) AND (tags.id IN (1, 2))))) OR (artists.id IS NULL) OR (artists.yyy IS NULL))"
298
- end
299
-
300
- it "should allowing filtering/excluding many_through_many associations with NULL values" do
301
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]]
302
- @c1.filter(:tags=>@c2.new).sql.must_equal 'SELECT * FROM artists WHERE \'f\''
303
- @c1.exclude(:tags=>@c2.new).sql.must_equal 'SELECT * FROM artists WHERE \'t\''
304
- end
305
-
306
- it "should allowing filtering by many_through_many association datasets" do
307
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]]
308
- @c1.filter(:tags=>@c2.filter(:x=>1)).sql.must_equal 'SELECT * FROM artists WHERE (artists.id IN (SELECT albums_artists.artist_id FROM albums_artists INNER JOIN albums ON (albums.id = albums_artists.album_id) INNER JOIN albums_tags ON (albums_tags.album_id = albums.id) WHERE ((albums_tags.tag_id IN (SELECT tags.id FROM tags WHERE ((x = 1) AND (tags.id IS NOT NULL)))) AND (albums_artists.artist_id IS NOT NULL))))'
309
- end
310
-
311
- it "should allowing filtering by many_through_many association datasets with composite keys" do
312
- @c1.many_through_many :tags, [[:albums_artists, [:b1, :b2], [:c1, :c2]], [:albums, [:d1, :d2], [:e1, :e2]], [:albums_tags, [:f1, :f2], [:g1, :g2]]], :right_primary_key=>[:h1, :h2], :left_primary_key=>[:id, :yyy]
313
- @c1.filter(:tags=>@c2.filter(:x=>1)).sql.must_equal 'SELECT * FROM artists WHERE ((artists.id, artists.yyy) IN (SELECT albums_artists.b1, albums_artists.b2 FROM albums_artists INNER JOIN albums ON ((albums.d1 = albums_artists.c1) AND (albums.d2 = albums_artists.c2)) INNER JOIN albums_tags ON ((albums_tags.f1 = albums.e1) AND (albums_tags.f2 = albums.e2)) WHERE (((albums_tags.g1, albums_tags.g2) IN (SELECT tags.h1, tags.h2 FROM tags WHERE ((x = 1) AND (tags.h1 IS NOT NULL) AND (tags.h2 IS NOT NULL)))) AND (albums_artists.b1 IS NOT NULL) AND (albums_artists.b2 IS NOT NULL))))'
314
- end
315
-
316
- it "should allowing filtering by many_through_many association datasets with :conditions" do
317
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :conditions=>{:name=>'A'}
318
- @c1.filter(:tags=>@c2.filter(:x=>1)).sql.must_equal "SELECT * FROM artists WHERE (artists.id IN (SELECT albums_artists.artist_id FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE ((name = 'A') AND (albums_artists.artist_id IS NOT NULL) AND (tags.id IN (SELECT tags.id FROM tags WHERE (x = 1))))))"
319
- end
320
-
321
- it "should allowing filtering by many_through_many association datasets with :conditions and composite keys" do
322
- @c1.many_through_many :tags, [[:albums_artists, [:b1, :b2], [:c1, :c2]], [:albums, [:d1, :d2], [:e1, :e2]], [:albums_tags, [:f1, :f2], [:g1, :g2]]], :right_primary_key=>[:h1, :h2], :left_primary_key=>[:id, :yyy], :conditions=>{:name=>'A'}
323
- @c1.filter(:tags=>@c2.filter(:x=>1)).sql.must_equal "SELECT * FROM artists WHERE ((artists.id, artists.yyy) IN (SELECT albums_artists.b1, albums_artists.b2 FROM tags INNER JOIN albums_tags ON ((albums_tags.g1 = tags.h1) AND (albums_tags.g2 = tags.h2)) INNER JOIN albums ON ((albums.e1 = albums_tags.f1) AND (albums.e2 = albums_tags.f2)) INNER JOIN albums_artists ON ((albums_artists.c1 = albums.d1) AND (albums_artists.c2 = albums.d2)) WHERE ((name = 'A') AND (albums_artists.b1 IS NOT NULL) AND (albums_artists.b2 IS NOT NULL) AND (tags.id IN (SELECT tags.id FROM tags WHERE (x = 1))))))"
324
- end
325
-
326
- it "should allowing excluding by many_through_many association datasets" do
327
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]]
328
- @c1.exclude(:tags=>@c2.filter(:x=>1)).sql.must_equal 'SELECT * FROM artists WHERE ((artists.id NOT IN (SELECT albums_artists.artist_id FROM albums_artists INNER JOIN albums ON (albums.id = albums_artists.album_id) INNER JOIN albums_tags ON (albums_tags.album_id = albums.id) WHERE ((albums_tags.tag_id IN (SELECT tags.id FROM tags WHERE ((x = 1) AND (tags.id IS NOT NULL)))) AND (albums_artists.artist_id IS NOT NULL)))) OR (artists.id IS NULL))'
329
- end
330
-
331
- it "should allowing excluding by many_through_many association datasets with composite keys" do
332
- @c1.many_through_many :tags, [[:albums_artists, [:b1, :b2], [:c1, :c2]], [:albums, [:d1, :d2], [:e1, :e2]], [:albums_tags, [:f1, :f2], [:g1, :g2]]], :right_primary_key=>[:h1, :h2], :left_primary_key=>[:id, :yyy]
333
- @c1.exclude(:tags=>@c2.filter(:x=>1)).sql.must_equal 'SELECT * FROM artists WHERE (((artists.id, artists.yyy) NOT IN (SELECT albums_artists.b1, albums_artists.b2 FROM albums_artists INNER JOIN albums ON ((albums.d1 = albums_artists.c1) AND (albums.d2 = albums_artists.c2)) INNER JOIN albums_tags ON ((albums_tags.f1 = albums.e1) AND (albums_tags.f2 = albums.e2)) WHERE (((albums_tags.g1, albums_tags.g2) IN (SELECT tags.h1, tags.h2 FROM tags WHERE ((x = 1) AND (tags.h1 IS NOT NULL) AND (tags.h2 IS NOT NULL)))) AND (albums_artists.b1 IS NOT NULL) AND (albums_artists.b2 IS NOT NULL)))) OR (artists.id IS NULL) OR (artists.yyy IS NULL))'
334
- end
335
-
336
- it "should allowing excluding by many_through_many association datasets with :conditions" do
337
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :conditions=>{:name=>'A'}
338
- @c1.exclude(:tags=>@c2.filter(:x=>1)).sql.must_equal "SELECT * FROM artists WHERE ((artists.id NOT IN (SELECT albums_artists.artist_id FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE ((name = 'A') AND (albums_artists.artist_id IS NOT NULL) AND (tags.id IN (SELECT tags.id FROM tags WHERE (x = 1)))))) OR (artists.id IS NULL))"
339
- end
340
-
341
- it "should allowing excluding by many_through_many association datasets with :conditions and composite keys" do
342
- @c1.many_through_many :tags, [[:albums_artists, [:b1, :b2], [:c1, :c2]], [:albums, [:d1, :d2], [:e1, :e2]], [:albums_tags, [:f1, :f2], [:g1, :g2]]], :right_primary_key=>[:h1, :h2], :left_primary_key=>[:id, :yyy], :conditions=>{:name=>'A'}
343
- @c1.exclude(:tags=>@c2.filter(:x=>1)).sql.must_equal "SELECT * FROM artists WHERE (((artists.id, artists.yyy) NOT IN (SELECT albums_artists.b1, albums_artists.b2 FROM tags INNER JOIN albums_tags ON ((albums_tags.g1 = tags.h1) AND (albums_tags.g2 = tags.h2)) INNER JOIN albums ON ((albums.e1 = albums_tags.f1) AND (albums.e2 = albums_tags.f2)) INNER JOIN albums_artists ON ((albums_artists.c1 = albums.d1) AND (albums_artists.c2 = albums.d2)) WHERE ((name = 'A') AND (albums_artists.b1 IS NOT NULL) AND (albums_artists.b2 IS NOT NULL) AND (tags.id IN (SELECT tags.id FROM tags WHERE (x = 1)))))) OR (artists.id IS NULL) OR (artists.yyy IS NULL))"
344
- end
345
-
346
- it "should support a :conditions option" do
347
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :conditions=>{:a=>32}
348
- n = @c1.load(:id => 1234)
349
- n.tags_dataset.sql.must_equal 'SELECT tags.* FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE ((a = 32) AND (albums_artists.artist_id = 1234))'
350
- n.tags.must_equal [@c2.load(:id=>1)]
351
-
352
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :conditions=>Sequel.lit('a = ?', 42)
353
- n = @c1.load(:id => 1234)
354
- n.tags_dataset.sql.must_equal 'SELECT tags.* FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE ((a = 42) AND (albums_artists.artist_id = 1234))'
355
- n.tags.must_equal [@c2.load(:id=>1)]
356
- end
357
-
358
- it "should support an :order option" do
359
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :order=>:blah
360
- n = @c1.load(:id => 1234)
361
- n.tags_dataset.sql.must_equal 'SELECT tags.* FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id = 1234) ORDER BY blah'
362
- n.tags.must_equal [@c2.load(:id=>1)]
363
- end
364
-
365
- it "should support an array for the :order option" do
366
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :order=>[:blah1, :blah2]
367
- n = @c1.load(:id => 1234)
368
- n.tags_dataset.sql.must_equal 'SELECT tags.* FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id = 1234) ORDER BY blah1, blah2'
369
- n.tags.must_equal [@c2.load(:id=>1)]
370
- end
371
-
372
- it "should support a select option" do
373
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :select=>:blah
374
- n = @c1.load(:id => 1234)
375
- n.tags_dataset.sql.must_equal 'SELECT blah FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id = 1234)'
376
- n.tags.must_equal [@c2.load(:id=>1)]
377
- end
378
-
379
- it "should support an array for the select option" do
380
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :select=>[Sequel::SQL::ColumnAll.new(:tags), Sequel[:albums][:name]]
381
- n = @c1.load(:id => 1234)
382
- n.tags_dataset.sql.must_equal 'SELECT tags.*, albums.name FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id = 1234)'
383
- n.tags.must_equal [@c2.load(:id=>1)]
384
- end
385
-
386
- it "should accept a block" do
387
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]] do |ds| ds.filter(:yyy=>@yyy) end
388
- n = @c1.load(:id => 1234)
389
- n.yyy = 85
390
- n.tags_dataset.sql.must_equal 'SELECT tags.* FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE ((albums_artists.artist_id = 1234) AND (yyy = 85))'
391
- n.tags.must_equal [@c2.load(:id=>1)]
392
- end
393
-
394
- it "should allow the :order option while accepting a block" do
395
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :order=>:blah do |ds| ds.filter(:yyy=>@yyy) end
396
- n = @c1.load(:id => 1234)
397
- n.yyy = 85
398
- n.tags_dataset.sql.must_equal 'SELECT tags.* FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE ((albums_artists.artist_id = 1234) AND (yyy = 85)) ORDER BY blah'
399
- n.tags.must_equal [@c2.load(:id=>1)]
400
- end
401
-
402
- it "should support a :dataset option that is used instead of the default" do
403
- @c1.many_through_many :tags, [[:a, :b, :c]], :dataset=>proc{Tag.join(:albums_tags, [:tag_id]).join(:albums, [:album_id]).join(:albums_artists, [:album_id]).filter(Sequel[:albums_artists][:artist_id]=>id)}
404
- n = @c1.load(:id => 1234)
405
- n.tags_dataset.sql.must_equal 'SELECT tags.* FROM tags INNER JOIN albums_tags USING (tag_id) INNER JOIN albums USING (album_id) INNER JOIN albums_artists USING (album_id) WHERE (albums_artists.artist_id = 1234)'
406
- n.tags.must_equal [@c2.load(:id=>1)]
407
- end
408
-
409
- it "should support a :limit option" do
410
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :limit=>10
411
- n = @c1.load(:id => 1234)
412
- n.tags_dataset.sql.must_equal 'SELECT tags.* FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id = 1234) LIMIT 10'
413
- n.tags.must_equal [@c2.load(:id=>1)]
414
-
415
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :limit=>[10, 10]
416
- n = @c1.load(:id => 1234)
417
- n.tags_dataset.sql.must_equal 'SELECT tags.* FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id = 1234) LIMIT 10 OFFSET 10'
418
- n.tags.must_equal [@c2.load(:id=>1)]
419
- end
420
-
421
- it "should have the :eager option affect the _dataset method" do
422
- @c2.many_to_many :fans
423
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :eager=>:fans
424
- @c1.load(:id => 1234).tags_dataset.opts[:eager].must_equal(:fans=>nil)
425
- end
426
-
427
- it "should provide an array with all members of the association" do
428
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]]
429
- @c1.load(:id => 1234).tags.must_equal [@c2.load(:id=>1)]
430
- DB.sqls.must_equal ['SELECT tags.* FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id = 1234)']
431
- end
432
-
433
- it "should populate cache when accessed" do
434
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]]
435
- n = @c1.load(:id => 1234)
436
- n.associations[:tags].must_be_nil
437
- DB.sqls.must_equal []
438
- n.tags.must_equal [@c2.load(:id=>1)]
439
- DB.sqls.must_equal ['SELECT tags.* FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id = 1234)']
440
- n.associations[:tags].must_equal n.tags
441
- DB.sqls.length.must_equal 0
442
- end
443
-
444
- it "should use cache if available" do
445
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]]
446
- n = @c1.load(:id => 1234)
447
- n.associations[:tags] = []
448
- n.tags.must_equal []
449
- DB.sqls.must_equal []
450
- end
451
-
452
- it "should not use cache if asked to reload" do
453
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]]
454
- n = @c1.load(:id => 1234)
455
- n.associations[:tags] = []
456
- DB.sqls.must_equal []
457
- n.tags(:reload=>true).must_equal [@c2.load(:id=>1)]
458
- DB.sqls.must_equal ['SELECT tags.* FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id = 1234)']
459
- n.associations[:tags].must_equal n.tags
460
- DB.sqls.length.must_equal 0
461
- end
462
-
463
- it "should not add associations methods directly to class" do
464
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]]
465
- im = @c1.instance_methods
466
- im.must_include(:tags)
467
- im.must_include(:tags_dataset)
468
- im2 = @c1.instance_methods(false)
469
- im2.wont_include(:tags)
470
- im2.wont_include(:tags_dataset)
471
- end
472
-
473
- it "should support after_load association callback" do
474
- h = []
475
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :after_load=>:al
476
- @c1.class_eval do
477
- self::Foo = h
478
- def al(v)
479
- v.each{|x| model::Foo << x.pk * 20}
480
- end
481
- end
482
- @c2.dataset = @c2.dataset.with_fetch([{:id=>20}, {:id=>30}])
483
- p = @c1.load(:id=>10, :parent_id=>20)
484
- p.tags
485
- h.must_equal [400, 600]
486
- p.tags.collect{|a| a.pk}.must_equal [20, 30]
487
- end
488
-
489
- it "should support a :uniq option that removes duplicates from the association" do
490
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :uniq=>true
491
- @c2.dataset = @c2.dataset.with_fetch([{:id=>20}, {:id=>30}, {:id=>20}, {:id=>30}])
492
- @c1.load(:id=>10).tags.must_equal [@c2.load(:id=>20), @c2.load(:id=>30)]
493
- end
494
- end
495
-
496
- describe 'Sequel::Plugins::ManyThroughMany::ManyThroughManyAssociationReflection' do
497
- before do
498
- class ::Artist < Sequel::Model
499
- plugin :many_through_many
500
- many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]]
501
- end
502
- class ::Tag < Sequel::Model
503
- end
504
- DB.reset
505
- @ar = Artist.association_reflection(:tags)
506
- end
507
- after do
508
- Object.send(:remove_const, :Artist)
509
- Object.send(:remove_const, :Tag)
510
- end
511
-
512
- it "#edges should be an array of joins to make when eager graphing" do
513
- @ar.edges.must_equal [{:conditions=>[], :left=>:id, :right=>:artist_id, :table=>:albums_artists, :join_type=>:left_outer, :block=>nil}, {:conditions=>[], :left=>:album_id, :right=>:id, :table=>:albums, :join_type=>:left_outer, :block=>nil}, {:conditions=>[], :left=>:id, :right=>:album_id, :table=>:albums_tags, :join_type=>:left_outer, :block=>nil}]
514
- end
515
-
516
- it "#edges should handle composite keys" do
517
- Artist.many_through_many :tags, [[:albums_artists, [:b1, :b2], [:c1, :c2]], [:albums, [:d1, :d2], [:e1, :e2]], [:albums_tags, [:f1, :f2], [:g1, :g2]]], :right_primary_key=>[:h1, :h2], :left_primary_key=>[:id, :yyy]
518
- Artist.association_reflection(:tags).edges.must_equal [{:conditions=>[], :left=>[:id, :yyy], :right=>[:b1, :b2], :table=>:albums_artists, :join_type=>:left_outer, :block=>nil}, {:conditions=>[], :left=>[:c1, :c2], :right=>[:d1, :d2], :table=>:albums, :join_type=>:left_outer, :block=>nil}, {:conditions=>[], :left=>[:e1, :e2], :right=>[:f1, :f2], :table=>:albums_tags, :join_type=>:left_outer, :block=>nil}]
519
- end
520
-
521
- it "#reverse_edges should be an array of joins to make when lazy loading or eager loading" do
522
- @ar.reverse_edges.must_equal [{:alias=>:albums_tags, :left=>:tag_id, :right=>:id, :table=>:albums_tags}, {:alias=>:albums, :left=>:id, :right=>:album_id, :table=>:albums}]
523
- end
524
-
525
- it "#reverse_edges should handle composite keys" do
526
- Artist.many_through_many :tags, [[:albums_artists, [:b1, :b2], [:c1, :c2]], [:albums, [:d1, :d2], [:e1, :e2]], [:albums_tags, [:f1, :f2], [:g1, :g2]]], :right_primary_key=>[:h1, :h2], :left_primary_key=>[:id, :yyy]
527
- Artist.association_reflection(:tags).reverse_edges.must_equal [{:alias=>:albums_tags, :left=>[:g1, :g2], :right=>[:h1, :h2], :table=>:albums_tags}, {:alias=>:albums, :left=>[:e1, :e2], :right=>[:f1, :f2], :table=>:albums}]
528
- end
529
-
530
- it "#reciprocal should be nil" do
531
- @ar.reciprocal.must_be_nil
532
- end
533
- end
534
-
535
- describe "many_through_many eager loading methods" do
536
- before do
537
- class ::Artist < Sequel::Model
538
- plugin :many_through_many
539
- many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]]
540
- many_through_many :other_tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :class=>:Tag
541
- many_through_many :albums, [[:albums_artists, :artist_id, :album_id]]
542
- many_through_many :artists, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_artists, :album_id, :artist_id]]
543
- end
544
- class ::Tag < Sequel::Model
545
- plugin :many_through_many
546
- many_through_many :tracks, [[:albums_tags, :tag_id, :album_id], [:albums, :id, :id]], :right_primary_key=>:album_id
547
- end
548
- class ::Album < Sequel::Model
549
- end
550
- class ::Track < Sequel::Model
551
- end
552
- Artist.dataset = Artist.dataset.with_fetch(proc do |sql|
553
- h = {:id => 1}
554
- if sql =~ /FROM artists LEFT OUTER JOIN albums_artists/
555
- h[:tags_id] = 2
556
- h[:albums_0_id] = 3 if sql =~ /LEFT OUTER JOIN albums AS albums_0/
557
- h[:tracks_id] = 4 if sql =~ /LEFT OUTER JOIN tracks/
558
- h[:other_tags_id] = 9 if sql =~ /other_tags\.id AS other_tags_id/
559
- h[:artists_0_id] = 10 if sql =~ /artists_0\.id AS artists_0_id/
560
- end
561
- h
562
- end)
563
- Artist.dataset.columns(:id)
564
-
565
- Tag.dataset = Tag.dataset.with_fetch(proc do |sql|
566
- h = {:id => 2}
567
- if sql =~ /albums_artists.artist_id IN \(([18])\)/
568
- h[:x_foreign_key_x] = $1.to_i
569
- elsif sql =~ /\(\(albums_artists.b1, albums_artists.b2\) IN \(\(1, 8\)\)\)/
570
- h.merge!(:x_foreign_key_0_x=>1, :x_foreign_key_1_x=>8)
571
- end
572
- h[:tag_id] = h.delete(:id) if sql =~ /albums_artists.artist_id IN \(8\)/
573
- h
574
- end)
575
-
576
- Album.dataset = Album.dataset.with_fetch(proc do |sql|
577
- h = {:id => 3}
578
- h[:x_foreign_key_x] = 1 if sql =~ /albums_artists.artist_id IN \(1\)/
579
- h
580
- end)
581
-
582
- Track.dataset = Track.dataset.with_fetch(proc do |sql|
583
- h = {:id => 4}
584
- h[:x_foreign_key_x] = 2 if sql =~ /albums_tags.tag_id IN \(2\)/
585
- h
586
- end)
587
-
588
- @c1 = Artist
589
- DB.reset
590
- end
591
- after do
592
- [:Artist, :Tag, :Album, :Track].each{|x| Object.send(:remove_const, x)}
593
- end
594
-
595
- it "should eagerly load a single many_through_many association" do
596
- a = @c1.eager(:tags).all
597
- a.must_equal [@c1.load(:id=>1)]
598
- DB.sqls.must_equal ['SELECT * FROM artists', 'SELECT tags.*, albums_artists.artist_id AS x_foreign_key_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id IN (1))']
599
- a.first.tags.must_equal [Tag.load(:id=>2)]
600
- DB.sqls.length.must_equal 0
601
- end
602
-
603
- it "should eagerly load multiple associations in a single call" do
604
- a = @c1.eager(:tags, :albums).all
605
- a.must_equal [@c1.load(:id=>1)]
606
- DB.sqls.must_equal ['SELECT * FROM artists',
607
- 'SELECT tags.*, albums_artists.artist_id AS x_foreign_key_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id IN (1))',
608
- 'SELECT albums.*, albums_artists.artist_id AS x_foreign_key_x FROM albums INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id IN (1))']
609
- a = a.first
610
- a.tags.must_equal [Tag.load(:id=>2)]
611
- a.albums.must_equal [Album.load(:id=>3)]
612
- DB.sqls.length.must_equal 0
613
- end
614
-
615
- it "should eagerly load multiple associations in separate" do
616
- a = @c1.eager(:tags).eager(:albums).all
617
- a.must_equal [@c1.load(:id=>1)]
618
- DB.sqls.must_equal ['SELECT * FROM artists',
619
- 'SELECT tags.*, albums_artists.artist_id AS x_foreign_key_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id IN (1))',
620
- 'SELECT albums.*, albums_artists.artist_id AS x_foreign_key_x FROM albums INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id IN (1))']
621
- a = a.first
622
- a.tags.must_equal [Tag.load(:id=>2)]
623
- a.albums.must_equal [Album.load(:id=>3)]
624
- DB.sqls.length.must_equal 0
625
- end
626
-
627
- it "should allow cascading of eager loading for associations of associated models" do
628
- a = @c1.eager(:tags=>:tracks).all
629
- a.must_equal [@c1.load(:id=>1)]
630
- DB.sqls.must_equal ['SELECT * FROM artists',
631
- 'SELECT tags.*, albums_artists.artist_id AS x_foreign_key_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id IN (1))',
632
- 'SELECT tracks.*, albums_tags.tag_id AS x_foreign_key_x FROM tracks INNER JOIN albums ON (albums.id = tracks.album_id) INNER JOIN albums_tags ON (albums_tags.album_id = albums.id) WHERE (albums_tags.tag_id IN (2))']
633
- a = a.first
634
- a.tags.must_equal [Tag.load(:id=>2)]
635
- a.tags.first.tracks.must_equal [Track.load(:id=>4)]
636
- DB.sqls.length.must_equal 0
637
- end
638
-
639
- it "should cascade eagerly loading when the :eager association option is used" do
640
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :eager=>:tracks
641
- a = @c1.eager(:tags).all
642
- a.must_equal [@c1.load(:id=>1)]
643
- DB.sqls.must_equal ['SELECT * FROM artists',
644
- 'SELECT tags.*, albums_artists.artist_id AS x_foreign_key_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id IN (1))',
645
- 'SELECT tracks.*, albums_tags.tag_id AS x_foreign_key_x FROM tracks INNER JOIN albums ON (albums.id = tracks.album_id) INNER JOIN albums_tags ON (albums_tags.album_id = albums.id) WHERE (albums_tags.tag_id IN (2))']
646
- a = a.first
647
- a.tags.must_equal [Tag.load(:id=>2)]
648
- a.tags.first.tracks.must_equal [Track.load(:id=>4)]
649
- DB.sqls.length.must_equal 0
650
- end
651
-
652
- it "should respect :eager when lazily loading an association" do
653
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :eager=>:tracks
654
- a = @c1.load(:id=>1)
655
- a.tags.must_equal [Tag.load(:id=>2)]
656
- DB.sqls.must_equal ['SELECT tags.* FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id = 1)',
657
- 'SELECT tracks.*, albums_tags.tag_id AS x_foreign_key_x FROM tracks INNER JOIN albums ON (albums.id = tracks.album_id) INNER JOIN albums_tags ON (albums_tags.album_id = albums.id) WHERE (albums_tags.tag_id IN (2))']
658
- a.tags.first.tracks.must_equal [Track.load(:id=>4)]
659
- DB.sqls.length.must_equal 0
660
- end
661
-
662
- it "should raise error if attempting to eagerly load an association using :eager_graph option" do
663
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :eager_graph=>:tracks
664
- proc{@c1.eager(:tags).all}.must_raise(Sequel::Error)
665
- end
666
-
667
- it "should respect :eager_graph when lazily loading an association" do
668
- Tag.dataset = Tag.dataset.with_fetch(:id=>2, :tracks_id=>4).with_extend{def columns; [:id] end}
669
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :eager_graph=>:tracks
670
- a = @c1.load(:id=>1)
671
- a.tags
672
- DB.sqls.must_equal [ 'SELECT tags.id, tracks.id AS tracks_id FROM (SELECT tags.* FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id = 1)) AS tags LEFT OUTER JOIN albums_tags AS albums_tags_0 ON (albums_tags_0.tag_id = tags.id) LEFT OUTER JOIN albums ON (albums.id = albums_tags_0.album_id) LEFT OUTER JOIN tracks ON (tracks.album_id = albums.id)']
673
- a.tags.must_equal [Tag.load(:id=>2)]
674
- a.tags.first.tracks.must_equal [Track.load(:id=>4)]
675
- DB.sqls.length.must_equal 0
676
- end
677
-
678
- it "should respect :conditions when eagerly loading" do
679
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :conditions=>{:a=>32}
680
- a = @c1.eager(:tags).all
681
- a.must_equal [@c1.load(:id=>1)]
682
- DB.sqls.must_equal ['SELECT * FROM artists',
683
- 'SELECT tags.*, albums_artists.artist_id AS x_foreign_key_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE ((a = 32) AND (albums_artists.artist_id IN (1)))']
684
- a.first.tags.must_equal [Tag.load(:id=>2)]
685
- DB.sqls.length.must_equal 0
686
- end
687
-
688
- it "should respect :order when eagerly loading" do
689
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :order=>:blah
690
- a = @c1.eager(:tags).all
691
- a.must_equal [@c1.load(:id=>1)]
692
- DB.sqls.must_equal ['SELECT * FROM artists',
693
- 'SELECT tags.*, albums_artists.artist_id AS x_foreign_key_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id IN (1)) ORDER BY blah']
694
- a.first.tags.must_equal [Tag.load(:id=>2)]
695
- DB.sqls.length.must_equal 0
696
- end
697
-
698
- it "should use the association's block when eager loading by default" do
699
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]] do |ds| ds.filter(:a) end
700
- a = @c1.eager(:tags).all
701
- a.must_equal [@c1.load(:id=>1)]
702
- DB.sqls.must_equal ['SELECT * FROM artists',
703
- 'SELECT tags.*, albums_artists.artist_id AS x_foreign_key_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (a AND (albums_artists.artist_id IN (1)))']
704
- a.first.tags.must_equal [Tag.load(:id=>2)]
705
- DB.sqls.length.must_equal 0
706
- end
707
-
708
- it "should use the :eager_block option when eager loading if given" do
709
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :eager_block=>proc{|ds| ds.filter(:b)} do |ds| ds.filter(:a) end
710
- a = @c1.eager(:tags).all
711
- a.must_equal [@c1.load(:id=>1)]
712
- DB.sqls.must_equal ['SELECT * FROM artists',
713
- 'SELECT tags.*, albums_artists.artist_id AS x_foreign_key_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (b AND (albums_artists.artist_id IN (1)))']
714
- a.first.tags.must_equal [Tag.load(:id=>2)]
715
- DB.sqls.length.must_equal 0
716
- end
717
-
718
- it "should respect the :limit option on a many_through_many association" do
719
- @c1.many_through_many :first_two_tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :class=>Tag, :limit=>2
720
- Tag.dataset = Tag.dataset.with_fetch([{:x_foreign_key_x=>1, :id=>5},{:x_foreign_key_x=>1, :id=>6}])
721
- a = @c1.eager(:first_two_tags).all
722
- a.must_equal [@c1.load(:id=>1)]
723
- DB.sqls.must_equal ['SELECT * FROM artists',
724
- 'SELECT * FROM (SELECT tags.*, albums_artists.artist_id AS x_foreign_key_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (1 = albums_artists.artist_id) LIMIT 2) AS t1']
725
- a.first.first_two_tags.must_equal [Tag.load(:id=>5), Tag.load(:id=>6)]
726
- DB.sqls.length.must_equal 0
727
-
728
- @c1.many_through_many :first_two_tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :class=>Tag, :limit=>[1,1]
729
- Tag.dataset = Tag.dataset.with_fetch([{:x_foreign_key_x=>1, :id=>6}])
730
- a = @c1.eager(:first_two_tags).all
731
- a.must_equal [@c1.load(:id=>1)]
732
- DB.sqls.must_equal ['SELECT * FROM artists',
733
- 'SELECT * FROM (SELECT tags.*, albums_artists.artist_id AS x_foreign_key_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (1 = albums_artists.artist_id) LIMIT 1 OFFSET 1) AS t1']
734
- a.first.first_two_tags.must_equal [Tag.load(:id=>6)]
735
- DB.sqls.length.must_equal 0
736
-
737
- @c1.many_through_many :first_two_tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :class=>Tag, :limit=>[nil,1]
738
- Tag.dataset = Tag.dataset.with_fetch([{:x_foreign_key_x=>1, :id=>6}, {:x_foreign_key_x=>1, :id=>7}])
739
- a = @c1.eager(:first_two_tags).all
740
- a.must_equal [@c1.load(:id=>1)]
741
- DB.sqls.must_equal ['SELECT * FROM artists',
742
- 'SELECT * FROM (SELECT tags.*, albums_artists.artist_id AS x_foreign_key_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (1 = albums_artists.artist_id) OFFSET 1) AS t1']
743
- a.first.first_two_tags.must_equal [Tag.load(:id=>6), Tag.load(:id=>7)]
744
- DB.sqls.length.must_equal 0
745
- end
746
-
747
- it "should respect the :limit option on a many_through_many association using a :ruby strategy" do
748
- @c1.many_through_many :first_two_tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :class=>Tag, :limit=>2, :eager_limit_strategy=>:ruby
749
- Tag.dataset = Tag.dataset.with_fetch([{:x_foreign_key_x=>1, :id=>5},{:x_foreign_key_x=>1, :id=>6}, {:x_foreign_key_x=>1, :id=>7}])
750
- a = @c1.eager(:first_two_tags).all
751
- a.must_equal [@c1.load(:id=>1)]
752
- DB.sqls.must_equal ['SELECT * FROM artists',
753
- 'SELECT tags.*, albums_artists.artist_id AS x_foreign_key_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id IN (1))']
754
- a.first.first_two_tags.must_equal [Tag.load(:id=>5), Tag.load(:id=>6)]
755
- DB.sqls.length.must_equal 0
756
-
757
- @c1.many_through_many :first_two_tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :class=>Tag, :limit=>[1,1], :eager_limit_strategy=>:ruby
758
- a = @c1.eager(:first_two_tags).all
759
- a.must_equal [@c1.load(:id=>1)]
760
- DB.sqls.must_equal ['SELECT * FROM artists',
761
- 'SELECT tags.*, albums_artists.artist_id AS x_foreign_key_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id IN (1))']
762
- a.first.first_two_tags.must_equal [Tag.load(:id=>6)]
763
- DB.sqls.length.must_equal 0
764
-
765
- @c1.many_through_many :first_two_tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :class=>Tag, :limit=>[nil,1], :eager_limit_strategy=>:ruby
766
- a = @c1.eager(:first_two_tags).all
767
- a.must_equal [@c1.load(:id=>1)]
768
- DB.sqls.must_equal ['SELECT * FROM artists',
769
- 'SELECT tags.*, albums_artists.artist_id AS x_foreign_key_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id IN (1))']
770
- a.first.first_two_tags.must_equal [Tag.load(:id=>6), Tag.load(:id=>7)]
771
- DB.sqls.length.must_equal 0
772
- end
773
-
774
- it "should respect the :limit option on a many_through_many association using a :window_function strategy" do
775
- @c1.many_through_many :first_two_tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :class=>Tag, :limit=>2, :order=>:name, :eager_limit_strategy=>:window_function
776
- Tag.dataset = Tag.dataset.with_fetch([{:x_foreign_key_x=>1, :id=>5},{:x_foreign_key_x=>1, :id=>6}]).with_extend{def supports_window_functions?; true end}
777
- a = @c1.eager(:first_two_tags).all
778
- a.must_equal [@c1.load(:id=>1)]
779
- DB.sqls.must_equal ['SELECT * FROM artists',
780
- 'SELECT * FROM (SELECT tags.*, albums_artists.artist_id AS x_foreign_key_x, row_number() OVER (PARTITION BY albums_artists.artist_id ORDER BY name) AS x_sequel_row_number_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id IN (1))) AS t1 WHERE (x_sequel_row_number_x <= 2)']
781
- a.first.first_two_tags.must_equal [Tag.load(:id=>5), Tag.load(:id=>6)]
782
- DB.sqls.length.must_equal 0
783
-
784
- @c1.many_through_many :first_two_tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :class=>Tag, :limit=>[2,1], :order=>:name, :eager_limit_strategy=>:window_function
785
- a = @c1.eager(:first_two_tags).all
786
- a.must_equal [@c1.load(:id=>1)]
787
- DB.sqls.must_equal ['SELECT * FROM artists',
788
- 'SELECT * FROM (SELECT tags.*, albums_artists.artist_id AS x_foreign_key_x, row_number() OVER (PARTITION BY albums_artists.artist_id ORDER BY name) AS x_sequel_row_number_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id IN (1))) AS t1 WHERE ((x_sequel_row_number_x >= 2) AND (x_sequel_row_number_x < 4))']
789
- a.first.first_two_tags.must_equal [Tag.load(:id=>5), Tag.load(:id=>6)]
790
- DB.sqls.length.must_equal 0
791
-
792
- @c1.many_through_many :first_two_tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :class=>Tag, :limit=>[nil,1], :order=>:name, :eager_limit_strategy=>:window_function
793
- a = @c1.eager(:first_two_tags).all
794
- a.must_equal [@c1.load(:id=>1)]
795
- DB.sqls.must_equal ['SELECT * FROM artists',
796
- 'SELECT * FROM (SELECT tags.*, albums_artists.artist_id AS x_foreign_key_x, row_number() OVER (PARTITION BY albums_artists.artist_id ORDER BY name) AS x_sequel_row_number_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id IN (1))) AS t1 WHERE (x_sequel_row_number_x >= 2)']
797
- a.first.first_two_tags.must_equal [Tag.load(:id=>5), Tag.load(:id=>6)]
798
- DB.sqls.length.must_equal 0
799
- end
800
-
801
- it "should respect the :limit option on a many_through_many association with composite primary keys on the main table" do
802
- @c1.dataset = @c1.dataset.with_fetch([{:id1=>1, :id2=>2}])
803
- Tag.dataset = Tag.dataset.with_fetch([{:x_foreign_key_0_x=>1, :x_foreign_key_1_x=>2, :id=>5}, {:x_foreign_key_0_x=>1, :x_foreign_key_1_x=>2, :id=>6}]).with_extend{def supports_window_functions?; true end}
804
- @c1.set_primary_key([:id1, :id2])
805
- @c1.columns :id1, :id2
806
- @c1.many_through_many :first_two_tags, [[:albums_artists, [:artist_id1, :artist_id2], :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :class=>Tag, :limit=>2, :order=>:name
807
- a = @c1.eager(:first_two_tags).all
808
- a.must_equal [@c1.load(:id1=>1, :id2=>2)]
809
- DB.sqls.must_equal ['SELECT * FROM artists',
810
- 'SELECT * FROM (SELECT tags.*, albums_artists.artist_id1 AS x_foreign_key_0_x, albums_artists.artist_id2 AS x_foreign_key_1_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE ((1 = albums_artists.artist_id1) AND (2 = albums_artists.artist_id2)) ORDER BY name LIMIT 2) AS t1']
811
- a.first.first_two_tags.must_equal [Tag.load(:id=>5), Tag.load(:id=>6)]
812
- DB.sqls.length.must_equal 0
813
-
814
- @c1.many_through_many :first_two_tags, [[:albums_artists, [:artist_id1, :artist_id2], :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :class=>Tag, :limit=>[2,1]
815
- a = @c1.eager(:first_two_tags).all
816
- a.must_equal [@c1.load(:id1=>1, :id2=>2)]
817
- DB.sqls.must_equal ['SELECT * FROM artists',
818
- 'SELECT * FROM (SELECT tags.*, albums_artists.artist_id1 AS x_foreign_key_0_x, albums_artists.artist_id2 AS x_foreign_key_1_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE ((1 = albums_artists.artist_id1) AND (2 = albums_artists.artist_id2)) LIMIT 2 OFFSET 1) AS t1']
819
- a.first.first_two_tags.must_equal [Tag.load(:id=>5), Tag.load(:id=>6)]
820
- DB.sqls.length.must_equal 0
821
- end
822
-
823
- it "should respect the :limit option on a many_through_many association with composite primary keys on the main table using a :window_function strategy" do
824
- @c1.dataset = @c1.dataset.with_fetch([{:id1=>1, :id2=>2}])
825
- Tag.dataset = Tag.dataset.with_fetch([{:x_foreign_key_0_x=>1, :x_foreign_key_1_x=>2, :id=>5}, {:x_foreign_key_0_x=>1, :x_foreign_key_1_x=>2, :id=>6}]).with_extend{def supports_window_functions?; true end}
826
- @c1.set_primary_key([:id1, :id2])
827
- @c1.columns :id1, :id2
828
- @c1.many_through_many :first_two_tags, [[:albums_artists, [:artist_id1, :artist_id2], :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :class=>Tag, :limit=>2, :order=>:name, :eager_limit_strategy=>:window_function
829
- a = @c1.eager(:first_two_tags).all
830
- a.must_equal [@c1.load(:id1=>1, :id2=>2)]
831
- DB.sqls.must_equal ['SELECT * FROM artists',
832
- 'SELECT * FROM (SELECT tags.*, albums_artists.artist_id1 AS x_foreign_key_0_x, albums_artists.artist_id2 AS x_foreign_key_1_x, row_number() OVER (PARTITION BY albums_artists.artist_id1, albums_artists.artist_id2 ORDER BY name) AS x_sequel_row_number_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE ((albums_artists.artist_id1, albums_artists.artist_id2) IN ((1, 2)))) AS t1 WHERE (x_sequel_row_number_x <= 2)']
833
- a.first.first_two_tags.must_equal [Tag.load(:id=>5), Tag.load(:id=>6)]
834
- DB.sqls.length.must_equal 0
835
-
836
- @c1.many_through_many :first_two_tags, [[:albums_artists, [:artist_id1, :artist_id2], :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :class=>Tag, :limit=>[2,1], :order=>:name, :eager_limit_strategy=>:window_function
837
- a = @c1.eager(:first_two_tags).all
838
- a.must_equal [@c1.load(:id1=>1, :id2=>2)]
839
- DB.sqls.must_equal ['SELECT * FROM artists',
840
- 'SELECT * FROM (SELECT tags.*, albums_artists.artist_id1 AS x_foreign_key_0_x, albums_artists.artist_id2 AS x_foreign_key_1_x, row_number() OVER (PARTITION BY albums_artists.artist_id1, albums_artists.artist_id2 ORDER BY name) AS x_sequel_row_number_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE ((albums_artists.artist_id1, albums_artists.artist_id2) IN ((1, 2)))) AS t1 WHERE ((x_sequel_row_number_x >= 2) AND (x_sequel_row_number_x < 4))']
841
- a.first.first_two_tags.must_equal [Tag.load(:id=>5), Tag.load(:id=>6)]
842
- DB.sqls.length.must_equal 0
843
- end
844
-
845
- it "should raise an error when attempting to eagerly load an association with the :allow_eager option set to false" do
846
- @c1.eager(:tags).all
847
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :allow_eager=>false
848
- proc{@c1.eager(:tags).all}.must_raise(Sequel::Error)
849
- end
850
-
851
- it "should respect the association's :select option" do
852
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :select=>Sequel[:tags][:name]
853
- a = @c1.eager(:tags).all
854
- a.must_equal [@c1.load(:id=>1)]
855
- DB.sqls.must_equal ['SELECT * FROM artists',
856
- 'SELECT tags.name, albums_artists.artist_id AS x_foreign_key_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id IN (1))']
857
- a.first.tags.must_equal [Tag.load(:id=>2)]
858
- DB.sqls.length.must_equal 0
859
- end
860
-
861
- it "should respect many_through_many association's :left_primary_key and :right_primary_key options" do
862
- @c1.send(:define_method, :yyy){values[:yyy]}
863
- @c1.dataset = @c1.dataset.with_fetch(:id=>1, :yyy=>8).with_extend{def columns; [:id, :yyy] end}
864
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :left_primary_key=>:yyy, :right_primary_key=>:tag_id
865
- a = @c1.eager(:tags).all
866
- a.must_equal [@c1.load(:id=>1, :yyy=>8)]
867
- DB.sqls.must_equal ['SELECT * FROM artists',
868
- 'SELECT tags.*, albums_artists.artist_id AS x_foreign_key_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.tag_id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id IN (8))']
869
- a.first.tags.must_equal [Tag.load(:tag_id=>2)]
870
- DB.sqls.length.must_equal 0
871
- end
872
-
873
- it "should handle composite keys" do
874
- @c1.send(:define_method, :yyy){values[:yyy]}
875
- @c1.dataset = @c1.dataset.with_fetch(:id=>1, :yyy=>8).with_extend{def columns; [:id, :yyy] end}
876
- @c1.many_through_many :tags, [[:albums_artists, [:b1, :b2], [:c1, :c2]], [:albums, [:d1, :d2], [:e1, :e2]], [:albums_tags, [:f1, :f2], [:g1, :g2]]], :right_primary_key=>[:h1, :h2], :left_primary_key=>[:id, :yyy]
877
- a = @c1.eager(:tags).all
878
- a.must_equal [@c1.load(:id=>1, :yyy=>8)]
879
- DB.sqls.must_equal ['SELECT * FROM artists',
880
- 'SELECT tags.*, albums_artists.b1 AS x_foreign_key_0_x, albums_artists.b2 AS x_foreign_key_1_x FROM tags INNER JOIN albums_tags ON ((albums_tags.g1 = tags.h1) AND (albums_tags.g2 = tags.h2)) INNER JOIN albums ON ((albums.e1 = albums_tags.f1) AND (albums.e2 = albums_tags.f2)) INNER JOIN albums_artists ON ((albums_artists.c1 = albums.d1) AND (albums_artists.c2 = albums.d2)) WHERE ((albums_artists.b1, albums_artists.b2) IN ((1, 8)))']
881
- a.first.tags.must_equal [Tag.load(:id=>2)]
882
- DB.sqls.length.must_equal 0
883
- end
884
-
885
- it "should respect :after_load callbacks on associations when eager loading" do
886
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :after_load=>lambda{|o, as| o[:id] *= 2; as.each{|a| a[:id] *= 3}}
887
- a = @c1.eager(:tags).all
888
- a.must_equal [@c1.load(:id=>2)]
889
- DB.sqls.must_equal ['SELECT * FROM artists',
890
- 'SELECT tags.*, albums_artists.artist_id AS x_foreign_key_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id IN (1))']
891
- a.first.tags.must_equal [Tag.load(:id=>6)]
892
- DB.sqls.length.must_equal 0
893
- end
894
-
895
- it "should raise an error if called without a symbol or hash" do
896
- proc{@c1.eager_graph(Object.new)}.must_raise(Sequel::Error)
897
- end
898
-
899
- it "should support association_join" do
900
- @c1.association_join(:tags).sql.must_equal "SELECT * FROM artists INNER JOIN albums_artists ON (albums_artists.artist_id = artists.id) INNER JOIN albums ON (albums.id = albums_artists.album_id) INNER JOIN albums_tags ON (albums_tags.album_id = albums.id) INNER JOIN tags ON (tags.id = albums_tags.tag_id)"
901
- end
902
-
903
- it "should support custom selects when using association_join" do
904
- @c1.select{a(b)}.association_join(:tags).sql.must_equal "SELECT a(b) FROM artists INNER JOIN albums_artists ON (albums_artists.artist_id = artists.id) INNER JOIN albums ON (albums.id = albums_artists.album_id) INNER JOIN albums_tags ON (albums_tags.album_id = albums.id) INNER JOIN tags ON (tags.id = albums_tags.tag_id)"
905
- end
906
-
907
- it "should eagerly graph a single many_through_many association" do
908
- a = @c1.eager_graph(:tags).all
909
- a.must_equal [@c1.load(:id=>1)]
910
- DB.sqls.must_equal ['SELECT artists.id, tags.id AS tags_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags ON (tags.id = albums_tags.tag_id)']
911
- a.first.tags.must_equal [Tag.load(:id=>2)]
912
- DB.sqls.length.must_equal 0
913
- end
914
-
915
- it "should eagerly graph a single many_through_many association using the :window_function strategy" do
916
- Tag.dataset = Tag.dataset.with_extend do
917
- def supports_window_functions?; true end
918
- def columns; literal(opts[:select]) =~ /x_foreign_key_x/ ? [:id, :x_foreign_key_x] : [:id] end
919
- end
920
- @c1.many_through_many :tags, :clone=>:tags, :limit=>2
921
- a = @c1.eager_graph_with_options(:tags, :limit_strategy=>true).with_fetch(:id=>1, :tags_id=>2).all
922
- a.must_equal [@c1.load(:id=>1)]
923
- DB.sqls.must_equal ['SELECT artists.id, tags.id AS tags_id FROM artists LEFT OUTER JOIN (SELECT id, x_foreign_key_x FROM (SELECT tags.*, albums_artists.artist_id AS x_foreign_key_x, row_number() OVER (PARTITION BY albums_artists.artist_id) AS x_sequel_row_number_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id)) AS t1 WHERE (x_sequel_row_number_x <= 2)) AS tags ON (tags.x_foreign_key_x = artists.id)']
924
- a.first.tags.must_equal [Tag.load(:id=>2)]
925
- DB.sqls.length.must_equal 0
926
- end
927
-
928
- it "should eagerly graph multiple associations in a single call" do
929
- a = @c1.eager_graph(:tags, :albums).all
930
- a.must_equal [@c1.load(:id=>1)]
931
- DB.sqls.must_equal ['SELECT artists.id, tags.id AS tags_id, albums_0.id AS albums_0_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags ON (tags.id = albums_tags.tag_id) LEFT OUTER JOIN albums_artists AS albums_artists_0 ON (albums_artists_0.artist_id = artists.id) LEFT OUTER JOIN albums AS albums_0 ON (albums_0.id = albums_artists_0.album_id)']
932
- a = a.first
933
- a.tags.must_equal [Tag.load(:id=>2)]
934
- a.albums.must_equal [Album.load(:id=>3)]
935
- DB.sqls.length.must_equal 0
936
- end
937
-
938
- it "should eagerly graph multiple associations in separate calls" do
939
- a = @c1.eager_graph(:tags).eager_graph(:albums).all
940
- a.must_equal [@c1.load(:id=>1)]
941
- DB.sqls.must_equal ['SELECT artists.id, tags.id AS tags_id, albums_0.id AS albums_0_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags ON (tags.id = albums_tags.tag_id) LEFT OUTER JOIN albums_artists AS albums_artists_0 ON (albums_artists_0.artist_id = artists.id) LEFT OUTER JOIN albums AS albums_0 ON (albums_0.id = albums_artists_0.album_id)']
942
- a = a.first
943
- a.tags.must_equal [Tag.load(:id=>2)]
944
- a.albums.must_equal [Album.load(:id=>3)]
945
- DB.sqls.length.must_equal 0
946
- end
947
-
948
- it "should allow cascading of eager graphing for associations of associated models" do
949
- a = @c1.eager_graph(:tags=>:tracks).all
950
- a.must_equal [@c1.load(:id=>1)]
951
- DB.sqls.must_equal ['SELECT artists.id, tags.id AS tags_id, tracks.id AS tracks_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags ON (tags.id = albums_tags.tag_id) LEFT OUTER JOIN albums_tags AS albums_tags_0 ON (albums_tags_0.tag_id = tags.id) LEFT OUTER JOIN albums AS albums_0 ON (albums_0.id = albums_tags_0.album_id) LEFT OUTER JOIN tracks ON (tracks.album_id = albums_0.id)']
952
- a = a.first
953
- a.tags.must_equal [Tag.load(:id=>2)]
954
- a.tags.first.tracks.must_equal [Track.load(:id=>4)]
955
- DB.sqls.length.must_equal 0
956
- end
957
-
958
- it "eager graphing should eliminate duplicates caused by cartesian products" do
959
- a = @c1.eager_graph(:tags).with_fetch([{:id=>1, :tags_id=>2}, {:id=>1, :tags_id=>3}, {:id=>1, :tags_id=>2}, {:id=>1, :tags_id=>3}]).all
960
- a.must_equal [@c1.load(:id=>1)]
961
- DB.sqls.must_equal ['SELECT artists.id, tags.id AS tags_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags ON (tags.id = albums_tags.tag_id)']
962
- a.first.tags.must_equal [Tag.load(:id=>2), Tag.load(:id=>3)]
963
- DB.sqls.length.must_equal 0
964
- end
965
-
966
- it "should eager graph multiple associations from the same table" do
967
- a = @c1.eager_graph(:tags, :other_tags).all
968
- a.must_equal [@c1.load(:id=>1)]
969
- DB.sqls.must_equal ['SELECT artists.id, tags.id AS tags_id, other_tags.id AS other_tags_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags ON (tags.id = albums_tags.tag_id) LEFT OUTER JOIN albums_artists AS albums_artists_0 ON (albums_artists_0.artist_id = artists.id) LEFT OUTER JOIN albums AS albums_0 ON (albums_0.id = albums_artists_0.album_id) LEFT OUTER JOIN albums_tags AS albums_tags_0 ON (albums_tags_0.album_id = albums_0.id) LEFT OUTER JOIN tags AS other_tags ON (other_tags.id = albums_tags_0.tag_id)']
970
- a = a.first
971
- a.tags.must_equal [Tag.load(:id=>2)]
972
- a.other_tags.must_equal [Tag.load(:id=>9)]
973
- DB.sqls.length.must_equal 0
974
- end
975
-
976
- it "should eager graph a self_referential association" do
977
- a = @c1.eager_graph(:tags, :artists).all
978
- a.must_equal [@c1.load(:id=>1)]
979
- DB.sqls.must_equal ['SELECT artists.id, tags.id AS tags_id, artists_0.id AS artists_0_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags ON (tags.id = albums_tags.tag_id) LEFT OUTER JOIN albums_artists AS albums_artists_0 ON (albums_artists_0.artist_id = artists.id) LEFT OUTER JOIN albums AS albums_0 ON (albums_0.id = albums_artists_0.album_id) LEFT OUTER JOIN albums_artists AS albums_artists_1 ON (albums_artists_1.album_id = albums_0.id) LEFT OUTER JOIN artists AS artists_0 ON (artists_0.id = albums_artists_1.artist_id)']
980
- a = a.first
981
- a.tags.must_equal [Tag.load(:id=>2)]
982
- a.artists.must_equal [@c1.load(:id=>10)]
983
- DB.sqls.length.must_equal 0
984
- end
985
-
986
- it "eager graphing should give you a plain hash when called without .all" do
987
- @c1.eager_graph(:tags, :artists).first.must_equal(:albums_0_id=>3, :artists_0_id=>10, :id=>1, :tags_id=>2)
988
- end
989
-
990
- it "should be able to use eager and eager_graph together" do
991
- a = @c1.eager_graph(:tags).eager(:albums).all
992
- a.must_equal [@c1.load(:id=>1)]
993
- DB.sqls.must_equal ['SELECT artists.id, tags.id AS tags_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags ON (tags.id = albums_tags.tag_id)',
994
- 'SELECT albums.*, albums_artists.artist_id AS x_foreign_key_x FROM albums INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id IN (1))']
995
- a = a.first
996
- a.tags.must_equal [Tag.load(:id=>2)]
997
- a.albums.must_equal [Album.load(:id=>3)]
998
- DB.sqls.length.must_equal 0
999
- end
1000
-
1001
- it "should handle no associated records when eagerly graphing a single many_through_many association" do
1002
- a = @c1.eager_graph(:tags).with_fetch(:id=>1, :tags_id=>nil).all
1003
- a.must_equal [@c1.load(:id=>1)]
1004
- DB.sqls.must_equal ['SELECT artists.id, tags.id AS tags_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags ON (tags.id = albums_tags.tag_id)']
1005
- a.first.tags.must_equal []
1006
- DB.sqls.length.must_equal 0
1007
- end
1008
-
1009
- it "should handle no associated records when eagerly graphing multiple many_through_many associations" do
1010
- a = @c1.eager_graph(:tags, :albums).with_fetch([{:id=>1, :tags_id=>nil, :albums_0_id=>3}, {:id=>1, :tags_id=>2, :albums_0_id=>nil}, {:id=>1, :tags_id=>5, :albums_0_id=>6}, {:id=>7, :tags_id=>nil, :albums_0_id=>nil}]).all
1011
- a.must_equal [@c1.load(:id=>1), @c1.load(:id=>7)]
1012
- DB.sqls.must_equal ['SELECT artists.id, tags.id AS tags_id, albums_0.id AS albums_0_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags ON (tags.id = albums_tags.tag_id) LEFT OUTER JOIN albums_artists AS albums_artists_0 ON (albums_artists_0.artist_id = artists.id) LEFT OUTER JOIN albums AS albums_0 ON (albums_0.id = albums_artists_0.album_id)']
1013
- a.first.tags.must_equal [Tag.load(:id=>2), Tag.load(:id=>5)]
1014
- a.first.albums.must_equal [Album.load(:id=>3), Album.load(:id=>6)]
1015
- a.last.tags.must_equal []
1016
- a.last.albums.must_equal []
1017
- DB.sqls.length.must_equal 0
1018
- end
1019
-
1020
- it "should handle missing associated records when cascading eager graphing for associations of associated models" do
1021
- a = @c1.eager_graph(:tags=>:tracks).with_fetch([{:id=>1, :tags_id=>2, :tracks_id=>4}, {:id=>1, :tags_id=>3, :tracks_id=>nil}, {:id=>2, :tags_id=>nil, :tracks_id=>nil}]).all
1022
- a.must_equal [@c1.load(:id=>1), @c1.load(:id=>2)]
1023
- DB.sqls.must_equal ['SELECT artists.id, tags.id AS tags_id, tracks.id AS tracks_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags ON (tags.id = albums_tags.tag_id) LEFT OUTER JOIN albums_tags AS albums_tags_0 ON (albums_tags_0.tag_id = tags.id) LEFT OUTER JOIN albums AS albums_0 ON (albums_0.id = albums_tags_0.album_id) LEFT OUTER JOIN tracks ON (tracks.album_id = albums_0.id)']
1024
- a.last.tags.must_equal []
1025
- a = a.first
1026
- a.tags.must_equal [Tag.load(:id=>2), Tag.load(:id=>3)]
1027
- a.tags.first.tracks.must_equal [Track.load(:id=>4)]
1028
- a.tags.last.tracks.must_equal []
1029
- DB.sqls.length.must_equal 0
1030
- end
1031
-
1032
- it "eager graphing should respect :left_primary_key and :right_primary_key options" do
1033
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :left_primary_key=>:yyy, :right_primary_key=>:tag_id
1034
- @c1.dataset = @c1.dataset.with_extend{def columns; [:id, :yyy] end}
1035
- Tag.dataset = Tag.dataset.with_extend{def columns; [:id, :tag_id] end}
1036
- a = @c1.eager_graph(:tags).with_fetch(:id=>1, :yyy=>8, :tags_id=>2, :tag_id=>4).all
1037
- a.must_equal [@c1.load(:id=>1, :yyy=>8)]
1038
- DB.sqls.must_equal ['SELECT artists.id, artists.yyy, tags.id AS tags_id, tags.tag_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.yyy) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags ON (tags.tag_id = albums_tags.tag_id)']
1039
- a.first.tags.must_equal [Tag.load(:id=>2, :tag_id=>4)]
1040
- DB.sqls.length.must_equal 0
1041
- end
1042
-
1043
- it "eager graphing should respect composite keys" do
1044
- @c1.many_through_many :tags, [[:albums_artists, [:b1, :b2], [:c1, :c2]], [:albums, [:d1, :d2], [:e1, :e2]], [:albums_tags, [:f1, :f2], [:g1, :g2]]], :right_primary_key=>[:id, :tag_id], :left_primary_key=>[:id, :yyy]
1045
- @c1.dataset = @c1.dataset.with_extend{def columns; [:id, :yyy] end}
1046
- Tag.dataset = Tag.dataset.with_extend{def columns; [:id, :tag_id] end}
1047
- a = @c1.eager_graph(:tags).with_fetch(:id=>1, :yyy=>8, :tags_id=>2, :tag_id=>4).all
1048
- a.must_equal [@c1.load(:id=>1, :yyy=>8)]
1049
- DB.sqls.must_equal ['SELECT artists.id, artists.yyy, tags.id AS tags_id, tags.tag_id FROM artists LEFT OUTER JOIN albums_artists ON ((albums_artists.b1 = artists.id) AND (albums_artists.b2 = artists.yyy)) LEFT OUTER JOIN albums ON ((albums.d1 = albums_artists.c1) AND (albums.d2 = albums_artists.c2)) LEFT OUTER JOIN albums_tags ON ((albums_tags.f1 = albums.e1) AND (albums_tags.f2 = albums.e2)) LEFT OUTER JOIN tags ON ((tags.id = albums_tags.g1) AND (tags.tag_id = albums_tags.g2))']
1050
- a.first.tags.must_equal [Tag.load(:id=>2, :tag_id=>4)]
1051
- DB.sqls.length.must_equal 0
1052
- end
1053
-
1054
- it "should respect the association's :graph_select option" do
1055
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :graph_select=>:b
1056
- a = @c1.eager_graph(:tags).with_fetch(:id=>1, :b=>2).all
1057
- a.must_equal [@c1.load(:id=>1)]
1058
- DB.sqls.must_equal ['SELECT artists.id, tags.b FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags ON (tags.id = albums_tags.tag_id)']
1059
- a.first.tags.must_equal [Tag.load(:b=>2)]
1060
- DB.sqls.length.must_equal 0
1061
- end
1062
-
1063
- it "should respect the association's :graph_join_type option" do
1064
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :graph_join_type=>:inner
1065
- @c1.eager_graph(:tags).sql.must_equal 'SELECT artists.id, tags.id AS tags_id FROM artists INNER JOIN albums_artists ON (albums_artists.artist_id = artists.id) INNER JOIN albums ON (albums.id = albums_artists.album_id) INNER JOIN albums_tags ON (albums_tags.album_id = albums.id) INNER JOIN tags ON (tags.id = albums_tags.tag_id)'
1066
- end
1067
-
1068
- it "should respect the association's :join_type option on through" do
1069
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], {:table=>:albums, :left=>:id, :right=>:id, :join_type=>:natural}, [:albums_tags, :album_id, :tag_id]], :graph_join_type=>:inner
1070
- @c1.eager_graph(:tags).sql.must_equal 'SELECT artists.id, tags.id AS tags_id FROM artists INNER JOIN albums_artists ON (albums_artists.artist_id = artists.id) NATURAL JOIN albums ON (albums.id = albums_artists.album_id) INNER JOIN albums_tags ON (albums_tags.album_id = albums.id) INNER JOIN tags ON (tags.id = albums_tags.tag_id)'
1071
- end
1072
-
1073
- it "should respect the association's :conditions option" do
1074
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], {:table=>:albums, :left=>:id, :right=>:id}, [:albums_tags, :album_id, :tag_id]], :conditions=>{:a=>32}
1075
- @c1.eager_graph(:tags).sql.must_equal 'SELECT artists.id, tags.id AS tags_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags ON ((tags.id = albums_tags.tag_id) AND (tags.a = 32))'
1076
- end
1077
-
1078
- it "should respect the association's :graph_conditions option" do
1079
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], {:table=>:albums, :left=>:id, :right=>:id}, [:albums_tags, :album_id, :tag_id]], :graph_conditions=>{:a=>42}
1080
- @c1.eager_graph(:tags).sql.must_equal 'SELECT artists.id, tags.id AS tags_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags ON ((tags.id = albums_tags.tag_id) AND (tags.a = 42))'
1081
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], {:table=>:albums, :left=>:id, :right=>:id}, [:albums_tags, :album_id, :tag_id]], :graph_conditions=>{:a=>42}, :conditions=>{:a=>32}
1082
- @c1.eager_graph(:tags).sql.must_equal 'SELECT artists.id, tags.id AS tags_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags ON ((tags.id = albums_tags.tag_id) AND (tags.a = 42))'
1083
- end
1084
-
1085
- it "should respect the association's :conditions option on through" do
1086
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], {:table=>:albums, :left=>:id, :right=>:id, :conditions=>{:a=>42}}, [:albums_tags, :album_id, :tag_id]]
1087
- @c1.eager_graph(:tags).sql.must_equal 'SELECT artists.id, tags.id AS tags_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON ((albums.id = albums_artists.album_id) AND (albums.a = 42)) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags ON (tags.id = albums_tags.tag_id)'
1088
- end
1089
-
1090
- it "should respect the association's :graph_block option" do
1091
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], {:table=>:albums, :left=>:id, :right=>:id}, [:albums_tags, :album_id, :tag_id]], :graph_block=>proc{|ja,lja,js| {Sequel.qualify(ja, :active)=>true}}
1092
- @c1.eager_graph(:tags).sql.must_equal 'SELECT artists.id, tags.id AS tags_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags ON ((tags.id = albums_tags.tag_id) AND (tags.active IS TRUE))'
1093
- end
1094
-
1095
- it "should respect the association's :block option on through" do
1096
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], {:table=>:albums, :left=>:id, :right=>:id, :block=>proc{|ja,lja,js| {Sequel.qualify(ja, :active)=>true}}}, [:albums_tags, :album_id, :tag_id]]
1097
- @c1.eager_graph(:tags).sql.must_equal 'SELECT artists.id, tags.id AS tags_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON ((albums.id = albums_artists.album_id) AND (albums.active IS TRUE)) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags ON (tags.id = albums_tags.tag_id)'
1098
- end
1099
-
1100
- it "should respect the association's :graph_only_conditions option" do
1101
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], {:table=>:albums, :left=>:id, :right=>:id}, [:albums_tags, :album_id, :tag_id]], :graph_only_conditions=>{:a=>32}
1102
- @c1.eager_graph(:tags).sql.must_equal 'SELECT artists.id, tags.id AS tags_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags ON (tags.a = 32)'
1103
- end
1104
-
1105
- it "should respect the association's :only_conditions option on through" do
1106
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], {:table=>:albums, :left=>:id, :right=>:id, :only_conditions=>{:a=>42}}, [:albums_tags, :album_id, :tag_id]]
1107
- @c1.eager_graph(:tags).sql.must_equal 'SELECT artists.id, tags.id AS tags_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.a = 42) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags ON (tags.id = albums_tags.tag_id)'
1108
- end
1109
-
1110
- it "should create unique table aliases for all associations" do
1111
- @c1.eager_graph(:artists=>{:artists=>:artists}).sql.must_equal "SELECT artists.id, artists_0.id AS artists_0_id, artists_1.id AS artists_1_id, artists_2.id AS artists_2_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_artists AS albums_artists_0 ON (albums_artists_0.album_id = albums.id) LEFT OUTER JOIN artists AS artists_0 ON (artists_0.id = albums_artists_0.artist_id) LEFT OUTER JOIN albums_artists AS albums_artists_1 ON (albums_artists_1.artist_id = artists_0.id) LEFT OUTER JOIN albums AS albums_0 ON (albums_0.id = albums_artists_1.album_id) LEFT OUTER JOIN albums_artists AS albums_artists_2 ON (albums_artists_2.album_id = albums_0.id) LEFT OUTER JOIN artists AS artists_1 ON (artists_1.id = albums_artists_2.artist_id) LEFT OUTER JOIN albums_artists AS albums_artists_3 ON (albums_artists_3.artist_id = artists_1.id) LEFT OUTER JOIN albums AS albums_1 ON (albums_1.id = albums_artists_3.album_id) LEFT OUTER JOIN albums_artists AS albums_artists_4 ON (albums_artists_4.album_id = albums_1.id) LEFT OUTER JOIN artists AS artists_2 ON (artists_2.id = albums_artists_4.artist_id)"
1112
- end
1113
-
1114
- it "should respect the association's :order" do
1115
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], {:table=>:albums, :left=>:id, :right=>:id}, [:albums_tags, :album_id, :tag_id]], :order=>[:blah1, :blah2]
1116
- @c1.order(Sequel[:artists][:blah2], Sequel[:artists][:blah3]).eager_graph(:tags).sql.must_equal 'SELECT artists.id, tags.id AS tags_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags ON (tags.id = albums_tags.tag_id) ORDER BY artists.blah2, artists.blah3, tags.blah1, tags.blah2'
1117
- end
1118
-
1119
- with_symbol_splitting "should not qualify qualified symbols" do
1120
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], {:table=>:albums, :left=>:id, :right=>:id}, [:albums_tags, :album_id, :tag_id]], :order=>[Sequel.identifier(:blah__id), Sequel.identifier(:blah__id).desc, Sequel.desc(:blah__id), :blah__id, :album_id, Sequel.desc(:album_id), 1, Sequel.lit('RANDOM()'), Sequel.qualify(:b, :a)]
1121
- @c1.order(:artists__blah2, :artists__blah3).eager_graph(:tags).sql.must_equal 'SELECT artists.id, tags.id AS tags_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags ON (tags.id = albums_tags.tag_id) ORDER BY artists.blah2, artists.blah3, tags.blah__id, tags.blah__id DESC, blah.id DESC, blah.id, tags.album_id, tags.album_id DESC, 1, RANDOM(), b.a'
1122
- end
1123
-
1124
- it "should only qualify symbols, identifiers, or ordered versions in association's :order" do
1125
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], {:table=>:albums, :left=>:id, :right=>:id}, [:albums_tags, :album_id, :tag_id]], :order=>[Sequel.identifier(:blah__id), Sequel.identifier(:blah__id).desc, Sequel.desc(Sequel[:blah][:id]), Sequel[:blah][:id], :album_id, Sequel.desc(:album_id), 1, Sequel.lit('RANDOM()'), Sequel.qualify(:b, :a)]
1126
- @c1.order(Sequel[:artists][:blah2], Sequel[:artists][:blah3]).eager_graph(:tags).sql.must_equal 'SELECT artists.id, tags.id AS tags_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags ON (tags.id = albums_tags.tag_id) ORDER BY artists.blah2, artists.blah3, tags.blah__id, tags.blah__id DESC, blah.id DESC, blah.id, tags.album_id, tags.album_id DESC, 1, RANDOM(), b.a'
1127
- end
1128
-
1129
- it "should not respect the association's :order if :order_eager_graph is false" do
1130
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], {:table=>:albums, :left=>:id, :right=>:id}, [:albums_tags, :album_id, :tag_id]], :order=>[:blah1, :blah2], :order_eager_graph=>false
1131
- @c1.order(Sequel[:artists][:blah2], Sequel[:artists][:blah3]).eager_graph(:tags).sql.must_equal 'SELECT artists.id, tags.id AS tags_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags ON (tags.id = albums_tags.tag_id) ORDER BY artists.blah2, artists.blah3'
1132
- end
1133
-
1134
- it "should add the associations :order for multiple associations" do
1135
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], {:table=>:albums, :left=>:id, :right=>:id}, [:albums_tags, :album_id, :tag_id]], :order=>[:blah1, :blah2]
1136
- @c1.many_through_many :albums, [[:albums_artists, :artist_id, :album_id]], :order=>[:blah3, :blah4]
1137
- @c1.eager_graph(:tags, :albums).sql.must_equal 'SELECT artists.id, tags.id AS tags_id, albums_0.id AS albums_0_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags ON (tags.id = albums_tags.tag_id) LEFT OUTER JOIN albums_artists AS albums_artists_0 ON (albums_artists_0.artist_id = artists.id) LEFT OUTER JOIN albums AS albums_0 ON (albums_0.id = albums_artists_0.album_id) ORDER BY tags.blah1, tags.blah2, albums_0.blah3, albums_0.blah4'
1138
- end
1139
-
1140
- it "should add the association's :order for cascading associations" do
1141
- @c1.many_through_many :tags, [[:albums_artists, :artist_id, :album_id], {:table=>:albums, :left=>:id, :right=>:id}, [:albums_tags, :album_id, :tag_id]], :order=>[:blah1, :blah2]
1142
- Tag.many_through_many :tracks, [[:albums_tags, :tag_id, :album_id], [:albums, :id, :id]], :right_primary_key=>:album_id, :order=>[:blah3, :blah4]
1143
- @c1.eager_graph(:tags=>:tracks).sql.must_equal 'SELECT artists.id, tags.id AS tags_id, tracks.id AS tracks_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags ON (tags.id = albums_tags.tag_id) LEFT OUTER JOIN albums_tags AS albums_tags_0 ON (albums_tags_0.tag_id = tags.id) LEFT OUTER JOIN albums AS albums_0 ON (albums_0.id = albums_tags_0.album_id) LEFT OUTER JOIN tracks ON (tracks.album_id = albums_0.id) ORDER BY tags.blah1, tags.blah2, tracks.blah3, tracks.blah4'
1144
- end
1145
-
1146
- it "should use the correct qualifier when graphing multiple tables with extra conditions" do
1147
- @c1.many_through_many :tags, [{:table=>:albums_artists, :left=>:artist_id, :right=>:album_id, :conditions=>{:a=>:b}}, {:table=>:albums, :left=>:id, :right=>:id}, [:albums_tags, :album_id, :tag_id]]
1148
- @c1.many_through_many :albums, [{:table=>:albums_artists, :left=>:artist_id, :right=>:album_id, :conditions=>{:c=>:d}}]
1149
- @c1.eager_graph(:tags, :albums).sql.must_equal 'SELECT artists.id, tags.id AS tags_id, albums_0.id AS albums_0_id FROM artists LEFT OUTER JOIN albums_artists ON ((albums_artists.artist_id = artists.id) AND (albums_artists.a = artists.b)) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags ON (tags.id = albums_tags.tag_id) LEFT OUTER JOIN albums_artists AS albums_artists_0 ON ((albums_artists_0.artist_id = artists.id) AND (albums_artists_0.c = artists.d)) LEFT OUTER JOIN albums AS albums_0 ON (albums_0.id = albums_artists_0.album_id)'
1150
- end
1151
- end
1152
-
1153
- describe "many_through_many associations with non-column expression keys" do
1154
- before do
1155
- @db = Sequel.mock(:fetch=>{:id=>1, :object_ids=>[2]})
1156
- @Foo = Class.new(Sequel::Model(@db[:foos]))
1157
- @Foo.columns :id, :object_ids
1158
- @Foo.plugin :many_through_many
1159
- m = Module.new{def obj_id; object_ids[0]; end}
1160
- @Foo.include m
1161
-
1162
- @Foo.many_through_many :foos, [
1163
- [:f, Sequel.subscript(:l, 0), Sequel.subscript(:r, 0)],
1164
- [:f, Sequel.subscript(:l, 1), Sequel.subscript(:r, 1)]
1165
- ], :class=>@Foo, :left_primary_key=>:obj_id, :left_primary_key_column=>Sequel.subscript(:object_ids, 0), :right_primary_key=>Sequel.subscript(:object_ids, 0), :right_primary_key_method=>:obj_id
1166
- @foo = @Foo.load(:id=>1, :object_ids=>[2])
1167
- @db.sqls
1168
- end
1169
-
1170
- it "should have working regular association methods" do
1171
- @Foo.first.foos.must_equal [@foo]
1172
- @db.sqls.must_equal ["SELECT * FROM foos LIMIT 1", "SELECT foos.* FROM foos INNER JOIN f ON (f.r[1] = foos.object_ids[0]) INNER JOIN f AS f_0 ON (f_0.r[0] = f.l[1]) WHERE (f_0.l[0] = 2)"]
1173
- end
1174
-
1175
- it "should have working eager loading methods" do
1176
- @db.fetch = [[{:id=>1, :object_ids=>[2]}], [{:id=>1, :object_ids=>[2], :x_foreign_key_x=>2}]]
1177
- @Foo.eager(:foos).all.map{|o| [o, o.foos]}.must_equal [[@foo, [@foo]]]
1178
- @db.sqls.must_equal ["SELECT * FROM foos", "SELECT foos.*, f_0.l[0] AS x_foreign_key_x FROM foos INNER JOIN f ON (f.r[1] = foos.object_ids[0]) INNER JOIN f AS f_0 ON (f_0.r[0] = f.l[1]) WHERE (f_0.l[0] IN (2))"]
1179
- end
1180
-
1181
- it "should have working eager graphing methods" do
1182
- @db.fetch = {:id=>1, :object_ids=>[2], :foos_0_id=>1, :foos_0_object_ids=>[2]}
1183
- @Foo.eager_graph(:foos).all.map{|o| [o, o.foos]}.must_equal [[@foo, [@foo]]]
1184
- @db.sqls.must_equal ["SELECT foos.id, foos.object_ids, foos_0.id AS foos_0_id, foos_0.object_ids AS foos_0_object_ids FROM foos LEFT OUTER JOIN f ON (f.l[0] = foos.object_ids[0]) LEFT OUTER JOIN f AS f_0 ON (f_0.l[1] = f.r[0]) LEFT OUTER JOIN foos AS foos_0 ON (foos_0.object_ids[0] = f_0.r[1])"]
1185
- end
1186
-
1187
- it "should have working filter by associations with model instances" do
1188
- @Foo.first(:foos=>@foo).must_equal @foo
1189
- @db.sqls.must_equal ["SELECT * FROM foos WHERE (foos.object_ids[0] IN (SELECT f.l[0] FROM f INNER JOIN f AS f_0 ON (f_0.l[1] = f.r[0]) WHERE ((f_0.r[1] = 2) AND (f.l[0] IS NOT NULL)))) LIMIT 1"]
1190
- end
1191
-
1192
- it "should have working filter by associations with model datasets" do
1193
- @Foo.first(:foos=>@Foo.where(:id=>@foo.id)).must_equal @foo
1194
- @db.sqls.must_equal ["SELECT * FROM foos WHERE (foos.object_ids[0] IN (SELECT f.l[0] FROM f INNER JOIN f AS f_0 ON (f_0.l[1] = f.r[0]) WHERE ((f_0.r[1] IN (SELECT foos.object_ids[0] FROM foos WHERE ((id = 1) AND (foos.object_ids[0] IS NOT NULL)))) AND (f.l[0] IS NOT NULL)))) LIMIT 1"]
1195
- end
1196
- end
1197
-
1198
- describe Sequel::Model, "one_through_many" do
1199
- before do
1200
- class ::Artist < Sequel::Model
1201
- attr_accessor :yyy
1202
- columns :id
1203
- plugin :many_through_many
1204
- end
1205
- class ::Tag < Sequel::Model
1206
- columns :id, :h1, :h2
1207
- end
1208
- @c1 = Artist
1209
- @c2 = Tag
1210
- @dataset = @c2.dataset = @c2.dataset.with_fetch(:id=>1)
1211
- DB.reset
1212
- end
1213
- after do
1214
- Object.send(:remove_const, :Artist)
1215
- Object.send(:remove_const, :Tag)
1216
- end
1217
-
1218
- it "should support using a custom :left_primary_key option when eager loading many_to_many associations" do
1219
- @c1.send(:define_method, :id3){id*3}
1220
- @c1.dataset = @c1.dataset.with_fetch(:id=>1)
1221
- @c2.dataset = @c2.dataset.with_fetch(:id=>4, :x_foreign_key_x=>3)
1222
- @c1.one_through_many :tag, :through=>[[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :left_primary_key=>:id3
1223
- a = @c1.eager(:tag).all
1224
- a.must_equal [@c1.load(:id => 1)]
1225
- DB.sqls.must_equal ['SELECT * FROM artists', "SELECT tags.*, albums_artists.artist_id AS x_foreign_key_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id IN (3))"]
1226
- a.first.tag.must_equal @c2.load(:id=>4)
1227
- DB.sqls.must_equal []
1228
- end
1229
-
1230
- it "should handle a :predicate_key option to change the SQL used in the lookup" do
1231
- @c1.dataset = @c1.dataset.with_fetch(:id=>1)
1232
- @c2.dataset = @c2.dataset.with_fetch(:id=>4, :x_foreign_key_x=>1)
1233
- @c1.one_through_many :tag, :through=>[[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :predicate_key=>(Sequel[:albums_artists][:artist_id] / 3)
1234
- a = @c1.eager(:tag).all
1235
- a.must_equal [@c1.load(:id => 1)]
1236
- DB.sqls.must_equal ['SELECT * FROM artists', "SELECT tags.*, (albums_artists.artist_id / 3) AS x_foreign_key_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE ((albums_artists.artist_id / 3) IN (1))"]
1237
- a.first.tag.must_equal @c2.load(:id=>4)
1238
- end
1239
-
1240
- it "should raise an error if in invalid form of through is used" do
1241
- proc{@c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id]]}.must_raise(Sequel::Error)
1242
- proc{@c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], {:table=>:album_tags, :left=>:album_id}]}.must_raise(Sequel::Error)
1243
- proc{@c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], :album_tags]}.must_raise(Sequel::Error)
1244
- end
1245
-
1246
- it "should allow only two arguments with the :through option" do
1247
- @c1.one_through_many :tag, :through=>[[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]]
1248
- n = @c1.load(:id => 1234)
1249
- n.tag_dataset.sql.must_equal 'SELECT tags.* FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id = 1234) LIMIT 1'
1250
- n.tag.must_equal @c2.load(:id=>1)
1251
- end
1252
-
1253
- it "should be clonable" do
1254
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]]
1255
- @c1.many_through_many :tags, :clone=>:tag
1256
- @c1.one_through_many :tag, :clone=>:tags
1257
- n = @c1.load(:id => 1234)
1258
- n.tag_dataset.sql.must_equal 'SELECT tags.* FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id = 1234) LIMIT 1'
1259
- n.tag.must_equal @c2.load(:id=>1)
1260
- end
1261
-
1262
- it "should use join tables given" do
1263
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]]
1264
- n = @c1.load(:id => 1234)
1265
- n.tag_dataset.sql.must_equal 'SELECT tags.* FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id = 1234) LIMIT 1'
1266
- n.tag.must_equal @c2.load(:id=>1)
1267
- end
1268
-
1269
- it "should handle multiple aliasing of tables" do
1270
- begin
1271
- class ::Album < Sequel::Model
1272
- end
1273
- @c1.one_through_many :album, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_artists, :album_id, :artist_id], [:artists, :id, :id], [:albums_artists, :artist_id, :album_id]]
1274
- n = @c1.load(:id => 1234)
1275
- n.album_dataset.sql.must_equal 'SELECT albums.* FROM albums INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) INNER JOIN artists ON (artists.id = albums_artists.artist_id) INNER JOIN albums_artists AS albums_artists_0 ON (albums_artists_0.artist_id = artists.id) INNER JOIN albums AS albums_0 ON (albums_0.id = albums_artists_0.album_id) INNER JOIN albums_artists AS albums_artists_1 ON (albums_artists_1.album_id = albums_0.id) WHERE (albums_artists_1.artist_id = 1234) LIMIT 1'
1276
- n.album.must_equal Album.load(:id=>1, :x=>1)
1277
- ensure
1278
- Object.send(:remove_const, :Album)
1279
- end
1280
- end
1281
-
1282
- it "should use explicit class if given" do
1283
- @c1.one_through_many :album_tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :class=>Tag
1284
- n = @c1.load(:id => 1234)
1285
- n.album_tag_dataset.sql.must_equal 'SELECT tags.* FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id = 1234) LIMIT 1'
1286
- n.album_tag.must_equal @c2.load(:id=>1)
1287
- end
1288
-
1289
- it "should accept :left_primary_key and :right_primary_key option for primary keys to use in current and associated table" do
1290
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :right_primary_key=>:tag_id, :left_primary_key=>:yyy
1291
- n = @c1.load(:id => 1234)
1292
- n.yyy = 85
1293
- n.tag_dataset.sql.must_equal 'SELECT tags.* FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.tag_id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id = 85) LIMIT 1'
1294
- n.tag.must_equal @c2.load(:id=>1)
1295
- end
1296
-
1297
- it "should handle composite keys" do
1298
- @c1.one_through_many :tag, [[:albums_artists, [:b1, :b2], [:c1, :c2]], [:albums, [:d1, :d2], [:e1, :e2]], [:albums_tags, [:f1, :f2], [:g1, :g2]]], :right_primary_key=>[:h1, :h2], :left_primary_key=>[:id, :yyy]
1299
- n = @c1.load(:id => 1234)
1300
- n.yyy = 85
1301
- n.tag_dataset.sql.must_equal 'SELECT tags.* FROM tags INNER JOIN albums_tags ON ((albums_tags.g1 = tags.h1) AND (albums_tags.g2 = tags.h2)) INNER JOIN albums ON ((albums.e1 = albums_tags.f1) AND (albums.e2 = albums_tags.f2)) INNER JOIN albums_artists ON ((albums_artists.c1 = albums.d1) AND (albums_artists.c2 = albums.d2)) WHERE ((albums_artists.b1 = 1234) AND (albums_artists.b2 = 85)) LIMIT 1'
1302
- n.tag.must_equal @c2.load(:id=>1)
1303
- end
1304
-
1305
- it "should allowing filtering by one_through_many associations" do
1306
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]]
1307
- @c1.filter(:tag=>@c2.load(:id=>1234)).sql.must_equal 'SELECT * FROM artists WHERE (artists.id IN (SELECT albums_artists.artist_id FROM albums_artists INNER JOIN albums ON (albums.id = albums_artists.album_id) INNER JOIN albums_tags ON (albums_tags.album_id = albums.id) WHERE ((albums_tags.tag_id = 1234) AND (albums_artists.artist_id IS NOT NULL))))'
1308
- end
1309
-
1310
- it "should allowing filtering by one_through_many associations with a single through table" do
1311
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id]]
1312
- @c1.filter(:tag=>@c2.load(:id=>1234)).sql.must_equal 'SELECT * FROM artists WHERE (artists.id IN (SELECT albums_artists.artist_id FROM albums_artists WHERE ((albums_artists.album_id = 1234) AND (albums_artists.artist_id IS NOT NULL))))'
1313
- end
1314
-
1315
- it "should allowing filtering by one_through_many associations with aliased tables" do
1316
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums_artists, :id, :id], [:albums_artists, :album_id, :tag_id]]
1317
- @c1.filter(:tag=>@c2.load(:id=>1234)).sql.must_equal 'SELECT * FROM artists WHERE (artists.id IN (SELECT albums_artists.artist_id FROM albums_artists INNER JOIN albums_artists AS albums_artists_0 ON (albums_artists_0.id = albums_artists.album_id) INNER JOIN albums_artists AS albums_artists_1 ON (albums_artists_1.album_id = albums_artists_0.id) WHERE ((albums_artists_1.tag_id = 1234) AND (albums_artists.artist_id IS NOT NULL))))'
1318
- end
1319
-
1320
- it "should allowing filtering by one_through_many associations with composite keys" do
1321
- @c1.one_through_many :tag, [[:albums_artists, [:b1, :b2], [:c1, :c2]], [:albums, [:d1, :d2], [:e1, :e2]], [:albums_tags, [:f1, :f2], [:g1, :g2]]], :right_primary_key=>[:h1, :h2], :left_primary_key=>[:id, :yyy]
1322
- @c1.filter(:tag=>@c2.load(:h1=>1234, :h2=>85)).sql.must_equal 'SELECT * FROM artists WHERE ((artists.id, artists.yyy) IN (SELECT albums_artists.b1, albums_artists.b2 FROM albums_artists INNER JOIN albums ON ((albums.d1 = albums_artists.c1) AND (albums.d2 = albums_artists.c2)) INNER JOIN albums_tags ON ((albums_tags.f1 = albums.e1) AND (albums_tags.f2 = albums.e2)) WHERE ((albums_tags.g1 = 1234) AND (albums_tags.g2 = 85) AND (albums_artists.b1 IS NOT NULL) AND (albums_artists.b2 IS NOT NULL))))'
1323
- end
1324
-
1325
- it "should allowing filtering by one_through_many associations with :conditions" do
1326
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :conditions=>{:name=>'A'}
1327
- @c1.filter(:tag=>@c2.load(:id=>1234)).sql.must_equal "SELECT * FROM artists WHERE (artists.id IN (SELECT albums_artists.artist_id FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE ((name = 'A') AND (albums_artists.artist_id IS NOT NULL) AND (tags.id = 1234))))"
1328
- end
1329
-
1330
- it "should allowing filtering by one_through_many associations with :conditions with a single through table" do
1331
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id]], :conditions=>{:name=>'A'}
1332
- @c1.filter(:tag=>@c2.load(:id=>1234)).sql.must_equal "SELECT * FROM artists WHERE (artists.id IN (SELECT albums_artists.artist_id FROM tags INNER JOIN albums_artists ON (albums_artists.album_id = tags.id) WHERE ((name = 'A') AND (albums_artists.artist_id IS NOT NULL) AND (tags.id = 1234))))"
1333
- end
1334
-
1335
- it "should allowing filtering by one_through_many associations with :conditions and composite keys" do
1336
- @c1.one_through_many :tag, [[:albums_artists, [:b1, :b2], [:c1, :c2]], [:albums, [:d1, :d2], [:e1, :e2]], [:albums_tags, [:f1, :f2], [:g1, :g2]]], :right_primary_key=>[:h1, :h2], :left_primary_key=>[:id, :yyy], :conditions=>{:name=>'A'}
1337
- @c1.filter(:tag=>@c2.load(:id=>1, :h1=>1234, :h2=>85)).sql.must_equal "SELECT * FROM artists WHERE ((artists.id, artists.yyy) IN (SELECT albums_artists.b1, albums_artists.b2 FROM tags INNER JOIN albums_tags ON ((albums_tags.g1 = tags.h1) AND (albums_tags.g2 = tags.h2)) INNER JOIN albums ON ((albums.e1 = albums_tags.f1) AND (albums.e2 = albums_tags.f2)) INNER JOIN albums_artists ON ((albums_artists.c1 = albums.d1) AND (albums_artists.c2 = albums.d2)) WHERE ((name = 'A') AND (albums_artists.b1 IS NOT NULL) AND (albums_artists.b2 IS NOT NULL) AND (tags.id = 1))))"
1338
- end
1339
-
1340
- it "should allowing filtering by one_through_many associations with :order" do
1341
- @c2.dataset = @c2.dataset.with_extend{def supports_distinct_on?; true end}
1342
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :order=>:name
1343
- @c1.filter(:tag=>@c2.load(:id=>1234)).sql.must_equal 'SELECT * FROM artists WHERE (artists.id IN (SELECT albums_artists.artist_id FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE ((albums_artists.artist_id IS NOT NULL) AND ((albums_artists.artist_id, tags.id) IN (SELECT DISTINCT ON (albums_artists.artist_id) albums_artists.artist_id, tags.id FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) ORDER BY albums_artists.artist_id, name)) AND (tags.id = 1234))))'
1344
- end
1345
-
1346
- it "should allowing filtering by one_through_many associations with :order and composite keys" do
1347
- @c2.dataset = @c2.dataset.with_extend{def supports_distinct_on?; true end}
1348
- @c1.one_through_many :tag, [[:albums_artists, [:b1, :b2], [:c1, :c2]], [:albums, [:d1, :d2], [:e1, :e2]], [:albums_tags, [:f1, :f2], [:g1, :g2]]], :right_primary_key=>[:h1, :h2], :left_primary_key=>[:id, :yyy], :order=>:name
1349
- @c1.filter(:tag=>@c2.load(:id=>1, :h1=>1234, :h2=>85)).sql.must_equal 'SELECT * FROM artists WHERE ((artists.id, artists.yyy) IN (SELECT albums_artists.b1, albums_artists.b2 FROM tags INNER JOIN albums_tags ON ((albums_tags.g1 = tags.h1) AND (albums_tags.g2 = tags.h2)) INNER JOIN albums ON ((albums.e1 = albums_tags.f1) AND (albums.e2 = albums_tags.f2)) INNER JOIN albums_artists ON ((albums_artists.c1 = albums.d1) AND (albums_artists.c2 = albums.d2)) WHERE ((albums_artists.b1 IS NOT NULL) AND (albums_artists.b2 IS NOT NULL) AND ((albums_artists.b1, albums_artists.b2, tags.id) IN (SELECT DISTINCT ON (albums_artists.b1, albums_artists.b2) albums_artists.b1, albums_artists.b2, tags.id FROM tags INNER JOIN albums_tags ON ((albums_tags.g1 = tags.h1) AND (albums_tags.g2 = tags.h2)) INNER JOIN albums ON ((albums.e1 = albums_tags.f1) AND (albums.e2 = albums_tags.f2)) INNER JOIN albums_artists ON ((albums_artists.c1 = albums.d1) AND (albums_artists.c2 = albums.d2)) ORDER BY albums_artists.b1, albums_artists.b2, name)) AND (tags.id = 1))))'
1350
- end
1351
-
1352
- it "should allowing filtering by one_through_many associations with :order and :conditions" do
1353
- @c2.dataset = @c2.dataset.with_extend{def supports_distinct_on?; true end}
1354
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :conditions=>{:name=>'A'}, :order=>:name
1355
- @c1.filter(:tag=>@c2.load(:id=>1234)).sql.must_equal "SELECT * FROM artists WHERE (artists.id IN (SELECT albums_artists.artist_id FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE ((name = 'A') AND (albums_artists.artist_id IS NOT NULL) AND ((albums_artists.artist_id, tags.id) IN (SELECT DISTINCT ON (albums_artists.artist_id) albums_artists.artist_id, tags.id FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (name = 'A') ORDER BY albums_artists.artist_id, name)) AND (tags.id = 1234))))"
1356
- end
1357
-
1358
- it "should allowing filtering by one_through_many associations with :order and :conditions and composite keys" do
1359
- @c2.dataset = @c2.dataset.with_extend{def supports_distinct_on?; true end}
1360
- @c1.one_through_many :tag, [[:albums_artists, [:b1, :b2], [:c1, :c2]], [:albums, [:d1, :d2], [:e1, :e2]], [:albums_tags, [:f1, :f2], [:g1, :g2]]], :right_primary_key=>[:h1, :h2], :left_primary_key=>[:id, :yyy], :conditions=>{:name=>'A'}, :order=>:name
1361
- @c1.filter(:tag=>@c2.load(:id=>1, :h1=>1234, :h2=>85)).sql.must_equal "SELECT * FROM artists WHERE ((artists.id, artists.yyy) IN (SELECT albums_artists.b1, albums_artists.b2 FROM tags INNER JOIN albums_tags ON ((albums_tags.g1 = tags.h1) AND (albums_tags.g2 = tags.h2)) INNER JOIN albums ON ((albums.e1 = albums_tags.f1) AND (albums.e2 = albums_tags.f2)) INNER JOIN albums_artists ON ((albums_artists.c1 = albums.d1) AND (albums_artists.c2 = albums.d2)) WHERE ((name = 'A') AND (albums_artists.b1 IS NOT NULL) AND (albums_artists.b2 IS NOT NULL) AND ((albums_artists.b1, albums_artists.b2, tags.id) IN (SELECT DISTINCT ON (albums_artists.b1, albums_artists.b2) albums_artists.b1, albums_artists.b2, tags.id FROM tags INNER JOIN albums_tags ON ((albums_tags.g1 = tags.h1) AND (albums_tags.g2 = tags.h2)) INNER JOIN albums ON ((albums.e1 = albums_tags.f1) AND (albums.e2 = albums_tags.f2)) INNER JOIN albums_artists ON ((albums_artists.c1 = albums.d1) AND (albums_artists.c2 = albums.d2)) WHERE (name = 'A') ORDER BY albums_artists.b1, albums_artists.b2, name)) AND (tags.id = 1))))"
1362
- end
1363
-
1364
- it "should allowing excluding by one_through_many associations" do
1365
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]]
1366
- @c1.exclude(:tag=>@c2.load(:id=>1234)).sql.must_equal 'SELECT * FROM artists WHERE ((artists.id NOT IN (SELECT albums_artists.artist_id FROM albums_artists INNER JOIN albums ON (albums.id = albums_artists.album_id) INNER JOIN albums_tags ON (albums_tags.album_id = albums.id) WHERE ((albums_tags.tag_id = 1234) AND (albums_artists.artist_id IS NOT NULL)))) OR (artists.id IS NULL))'
1367
- end
1368
-
1369
- it "should allowing excluding by one_through_many associations with composite keys" do
1370
- @c1.one_through_many :tag, [[:albums_artists, [:b1, :b2], [:c1, :c2]], [:albums, [:d1, :d2], [:e1, :e2]], [:albums_tags, [:f1, :f2], [:g1, :g2]]], :right_primary_key=>[:h1, :h2], :left_primary_key=>[:id, :yyy]
1371
- @c1.exclude(:tag=>@c2.load(:h1=>1234, :h2=>85)).sql.must_equal 'SELECT * FROM artists WHERE (((artists.id, artists.yyy) NOT IN (SELECT albums_artists.b1, albums_artists.b2 FROM albums_artists INNER JOIN albums ON ((albums.d1 = albums_artists.c1) AND (albums.d2 = albums_artists.c2)) INNER JOIN albums_tags ON ((albums_tags.f1 = albums.e1) AND (albums_tags.f2 = albums.e2)) WHERE ((albums_tags.g1 = 1234) AND (albums_tags.g2 = 85) AND (albums_artists.b1 IS NOT NULL) AND (albums_artists.b2 IS NOT NULL)))) OR (artists.id IS NULL) OR (artists.yyy IS NULL))'
1372
- end
1373
-
1374
- it "should allowing excluding by one_through_many associations with :conditions" do
1375
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :conditions=>{:name=>'A'}
1376
- @c1.exclude(:tag=>@c2.load(:id=>1234)).sql.must_equal "SELECT * FROM artists WHERE ((artists.id NOT IN (SELECT albums_artists.artist_id FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE ((name = 'A') AND (albums_artists.artist_id IS NOT NULL) AND (tags.id = 1234)))) OR (artists.id IS NULL))"
1377
- end
1378
-
1379
- it "should allowing excluding by one_through_many associations with :conditions and composite keys" do
1380
- @c1.one_through_many :tag, [[:albums_artists, [:b1, :b2], [:c1, :c2]], [:albums, [:d1, :d2], [:e1, :e2]], [:albums_tags, [:f1, :f2], [:g1, :g2]]], :right_primary_key=>[:h1, :h2], :left_primary_key=>[:id, :yyy], :conditions=>{:name=>'A'}
1381
- @c1.exclude(:tag=>@c2.load(:id=>1, :h1=>1234, :h2=>85)).sql.must_equal "SELECT * FROM artists WHERE (((artists.id, artists.yyy) NOT IN (SELECT albums_artists.b1, albums_artists.b2 FROM tags INNER JOIN albums_tags ON ((albums_tags.g1 = tags.h1) AND (albums_tags.g2 = tags.h2)) INNER JOIN albums ON ((albums.e1 = albums_tags.f1) AND (albums.e2 = albums_tags.f2)) INNER JOIN albums_artists ON ((albums_artists.c1 = albums.d1) AND (albums_artists.c2 = albums.d2)) WHERE ((name = 'A') AND (albums_artists.b1 IS NOT NULL) AND (albums_artists.b2 IS NOT NULL) AND (tags.id = 1)))) OR (artists.id IS NULL) OR (artists.yyy IS NULL))"
1382
- end
1383
-
1384
- it "should allowing filtering by multiple one_through_many associations" do
1385
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]]
1386
- @c1.filter(:tag=>[@c2.load(:id=>1234), @c2.load(:id=>2345)]).sql.must_equal 'SELECT * FROM artists WHERE (artists.id IN (SELECT albums_artists.artist_id FROM albums_artists INNER JOIN albums ON (albums.id = albums_artists.album_id) INNER JOIN albums_tags ON (albums_tags.album_id = albums.id) WHERE ((albums_tags.tag_id IN (1234, 2345)) AND (albums_artists.artist_id IS NOT NULL))))'
1387
- end
1388
-
1389
- it "should allowing filtering by multiple one_through_many associations with composite keys" do
1390
- @c1.one_through_many :tag, [[:albums_artists, [:b1, :b2], [:c1, :c2]], [:albums, [:d1, :d2], [:e1, :e2]], [:albums_tags, [:f1, :f2], [:g1, :g2]]], :right_primary_key=>[:h1, :h2], :left_primary_key=>[:id, :yyy]
1391
- @c1.filter(:tag=>[@c2.load(:h1=>1234, :h2=>85), @c2.load(:h1=>2345, :h2=>95)]).sql.must_equal 'SELECT * FROM artists WHERE ((artists.id, artists.yyy) IN (SELECT albums_artists.b1, albums_artists.b2 FROM albums_artists INNER JOIN albums ON ((albums.d1 = albums_artists.c1) AND (albums.d2 = albums_artists.c2)) INNER JOIN albums_tags ON ((albums_tags.f1 = albums.e1) AND (albums_tags.f2 = albums.e2)) WHERE (((albums_tags.g1, albums_tags.g2) IN ((1234, 85), (2345, 95))) AND (albums_artists.b1 IS NOT NULL) AND (albums_artists.b2 IS NOT NULL))))'
1392
- end
1393
-
1394
- it "should allowing filtering by multiple one_through_many associations with :conditions" do
1395
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :conditions=>{:name=>'A'}
1396
- @c1.filter(:tag=>[@c2.load(:id=>1234), @c2.load(:id=>2345)]).sql.must_equal "SELECT * FROM artists WHERE (artists.id IN (SELECT albums_artists.artist_id FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE ((name = 'A') AND (albums_artists.artist_id IS NOT NULL) AND (tags.id IN (1234, 2345)))))"
1397
- end
1398
-
1399
- it "should allowing filtering by multiple one_through_many associations with :conditions and composite keys" do
1400
- @c1.one_through_many :tag, [[:albums_artists, [:b1, :b2], [:c1, :c2]], [:albums, [:d1, :d2], [:e1, :e2]], [:albums_tags, [:f1, :f2], [:g1, :g2]]], :right_primary_key=>[:h1, :h2], :left_primary_key=>[:id, :yyy], :conditions=>{:name=>'A'}
1401
- @c1.filter(:tag=>[@c2.load(:id=>1, :h1=>1234, :h2=>85), @c2.load(:id=>2, :h1=>2345, :h2=>95)]).sql.must_equal "SELECT * FROM artists WHERE ((artists.id, artists.yyy) IN (SELECT albums_artists.b1, albums_artists.b2 FROM tags INNER JOIN albums_tags ON ((albums_tags.g1 = tags.h1) AND (albums_tags.g2 = tags.h2)) INNER JOIN albums ON ((albums.e1 = albums_tags.f1) AND (albums.e2 = albums_tags.f2)) INNER JOIN albums_artists ON ((albums_artists.c1 = albums.d1) AND (albums_artists.c2 = albums.d2)) WHERE ((name = 'A') AND (albums_artists.b1 IS NOT NULL) AND (albums_artists.b2 IS NOT NULL) AND (tags.id IN (1, 2)))))"
1402
- end
1403
-
1404
- it "should allowing excluding by multiple one_through_many associations" do
1405
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]]
1406
- @c1.exclude(:tag=>[@c2.load(:id=>1234), @c2.load(:id=>2345)]).sql.must_equal 'SELECT * FROM artists WHERE ((artists.id NOT IN (SELECT albums_artists.artist_id FROM albums_artists INNER JOIN albums ON (albums.id = albums_artists.album_id) INNER JOIN albums_tags ON (albums_tags.album_id = albums.id) WHERE ((albums_tags.tag_id IN (1234, 2345)) AND (albums_artists.artist_id IS NOT NULL)))) OR (artists.id IS NULL))'
1407
- end
1408
-
1409
- it "should allowing excluding by multiple one_through_many associations with composite keys" do
1410
- @c1.one_through_many :tag, [[:albums_artists, [:b1, :b2], [:c1, :c2]], [:albums, [:d1, :d2], [:e1, :e2]], [:albums_tags, [:f1, :f2], [:g1, :g2]]], :right_primary_key=>[:h1, :h2], :left_primary_key=>[:id, :yyy]
1411
- @c1.exclude(:tag=>[@c2.load(:h1=>1234, :h2=>85), @c2.load(:h1=>2345, :h2=>95)]).sql.must_equal 'SELECT * FROM artists WHERE (((artists.id, artists.yyy) NOT IN (SELECT albums_artists.b1, albums_artists.b2 FROM albums_artists INNER JOIN albums ON ((albums.d1 = albums_artists.c1) AND (albums.d2 = albums_artists.c2)) INNER JOIN albums_tags ON ((albums_tags.f1 = albums.e1) AND (albums_tags.f2 = albums.e2)) WHERE (((albums_tags.g1, albums_tags.g2) IN ((1234, 85), (2345, 95))) AND (albums_artists.b1 IS NOT NULL) AND (albums_artists.b2 IS NOT NULL)))) OR (artists.id IS NULL) OR (artists.yyy IS NULL))'
1412
- end
1413
-
1414
- it "should allowing excluding by multiple one_through_many associations with :conditions" do
1415
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :conditions=>{:name=>'A'}
1416
- @c1.exclude(:tag=>[@c2.load(:id=>1234), @c2.load(:id=>2345)]).sql.must_equal "SELECT * FROM artists WHERE ((artists.id NOT IN (SELECT albums_artists.artist_id FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE ((name = 'A') AND (albums_artists.artist_id IS NOT NULL) AND (tags.id IN (1234, 2345))))) OR (artists.id IS NULL))"
1417
- end
1418
-
1419
- it "should allowing excluding by multiple one_through_many associations with :conditions and composite keys" do
1420
- @c1.one_through_many :tag, [[:albums_artists, [:b1, :b2], [:c1, :c2]], [:albums, [:d1, :d2], [:e1, :e2]], [:albums_tags, [:f1, :f2], [:g1, :g2]]], :right_primary_key=>[:h1, :h2], :left_primary_key=>[:id, :yyy], :conditions=>{:name=>'A'}
1421
- @c1.exclude(:tag=>[@c2.load(:id=>1, :h1=>1234, :h2=>85), @c2.load(:id=>2, :h1=>2345, :h2=>95)]).sql.must_equal "SELECT * FROM artists WHERE (((artists.id, artists.yyy) NOT IN (SELECT albums_artists.b1, albums_artists.b2 FROM tags INNER JOIN albums_tags ON ((albums_tags.g1 = tags.h1) AND (albums_tags.g2 = tags.h2)) INNER JOIN albums ON ((albums.e1 = albums_tags.f1) AND (albums.e2 = albums_tags.f2)) INNER JOIN albums_artists ON ((albums_artists.c1 = albums.d1) AND (albums_artists.c2 = albums.d2)) WHERE ((name = 'A') AND (albums_artists.b1 IS NOT NULL) AND (albums_artists.b2 IS NOT NULL) AND (tags.id IN (1, 2))))) OR (artists.id IS NULL) OR (artists.yyy IS NULL))"
1422
- end
1423
-
1424
- it "should allowing filtering/excluding one_through_many associations with NULL values" do
1425
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]]
1426
- @c1.filter(:tag=>@c2.new).sql.must_equal 'SELECT * FROM artists WHERE \'f\''
1427
- @c1.exclude(:tag=>@c2.new).sql.must_equal 'SELECT * FROM artists WHERE \'t\''
1428
- end
1429
-
1430
- it "should allowing filtering by one_through_many association datasets" do
1431
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]]
1432
- @c1.filter(:tag=>@c2.filter(:x=>1)).sql.must_equal 'SELECT * FROM artists WHERE (artists.id IN (SELECT albums_artists.artist_id FROM albums_artists INNER JOIN albums ON (albums.id = albums_artists.album_id) INNER JOIN albums_tags ON (albums_tags.album_id = albums.id) WHERE ((albums_tags.tag_id IN (SELECT tags.id FROM tags WHERE ((x = 1) AND (tags.id IS NOT NULL)))) AND (albums_artists.artist_id IS NOT NULL))))'
1433
- end
1434
-
1435
- it "should allowing filtering by one_through_many association datasets with composite keys" do
1436
- @c1.one_through_many :tag, [[:albums_artists, [:b1, :b2], [:c1, :c2]], [:albums, [:d1, :d2], [:e1, :e2]], [:albums_tags, [:f1, :f2], [:g1, :g2]]], :right_primary_key=>[:h1, :h2], :left_primary_key=>[:id, :yyy]
1437
- @c1.filter(:tag=>@c2.filter(:x=>1)).sql.must_equal 'SELECT * FROM artists WHERE ((artists.id, artists.yyy) IN (SELECT albums_artists.b1, albums_artists.b2 FROM albums_artists INNER JOIN albums ON ((albums.d1 = albums_artists.c1) AND (albums.d2 = albums_artists.c2)) INNER JOIN albums_tags ON ((albums_tags.f1 = albums.e1) AND (albums_tags.f2 = albums.e2)) WHERE (((albums_tags.g1, albums_tags.g2) IN (SELECT tags.h1, tags.h2 FROM tags WHERE ((x = 1) AND (tags.h1 IS NOT NULL) AND (tags.h2 IS NOT NULL)))) AND (albums_artists.b1 IS NOT NULL) AND (albums_artists.b2 IS NOT NULL))))'
1438
- end
1439
-
1440
- it "should allowing filtering by one_through_many association datasets with :conditions" do
1441
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :conditions=>{:name=>'A'}
1442
- @c1.filter(:tag=>@c2.filter(:x=>1)).sql.must_equal "SELECT * FROM artists WHERE (artists.id IN (SELECT albums_artists.artist_id FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE ((name = 'A') AND (albums_artists.artist_id IS NOT NULL) AND (tags.id IN (SELECT tags.id FROM tags WHERE (x = 1))))))"
1443
- end
1444
-
1445
- it "should allowing filtering by one_through_many association datasets with :conditions and composite keys" do
1446
- @c1.one_through_many :tag, [[:albums_artists, [:b1, :b2], [:c1, :c2]], [:albums, [:d1, :d2], [:e1, :e2]], [:albums_tags, [:f1, :f2], [:g1, :g2]]], :right_primary_key=>[:h1, :h2], :left_primary_key=>[:id, :yyy], :conditions=>{:name=>'A'}
1447
- @c1.filter(:tag=>@c2.filter(:x=>1)).sql.must_equal "SELECT * FROM artists WHERE ((artists.id, artists.yyy) IN (SELECT albums_artists.b1, albums_artists.b2 FROM tags INNER JOIN albums_tags ON ((albums_tags.g1 = tags.h1) AND (albums_tags.g2 = tags.h2)) INNER JOIN albums ON ((albums.e1 = albums_tags.f1) AND (albums.e2 = albums_tags.f2)) INNER JOIN albums_artists ON ((albums_artists.c1 = albums.d1) AND (albums_artists.c2 = albums.d2)) WHERE ((name = 'A') AND (albums_artists.b1 IS NOT NULL) AND (albums_artists.b2 IS NOT NULL) AND (tags.id IN (SELECT tags.id FROM tags WHERE (x = 1))))))"
1448
- end
1449
-
1450
- it "should allowing excluding by one_through_many association datasets" do
1451
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]]
1452
- @c1.exclude(:tag=>@c2.filter(:x=>1)).sql.must_equal 'SELECT * FROM artists WHERE ((artists.id NOT IN (SELECT albums_artists.artist_id FROM albums_artists INNER JOIN albums ON (albums.id = albums_artists.album_id) INNER JOIN albums_tags ON (albums_tags.album_id = albums.id) WHERE ((albums_tags.tag_id IN (SELECT tags.id FROM tags WHERE ((x = 1) AND (tags.id IS NOT NULL)))) AND (albums_artists.artist_id IS NOT NULL)))) OR (artists.id IS NULL))'
1453
- end
1454
-
1455
- it "should allowing excluding by one_through_many association datasets with composite keys" do
1456
- @c1.one_through_many :tag, [[:albums_artists, [:b1, :b2], [:c1, :c2]], [:albums, [:d1, :d2], [:e1, :e2]], [:albums_tags, [:f1, :f2], [:g1, :g2]]], :right_primary_key=>[:h1, :h2], :left_primary_key=>[:id, :yyy]
1457
- @c1.exclude(:tag=>@c2.filter(:x=>1)).sql.must_equal 'SELECT * FROM artists WHERE (((artists.id, artists.yyy) NOT IN (SELECT albums_artists.b1, albums_artists.b2 FROM albums_artists INNER JOIN albums ON ((albums.d1 = albums_artists.c1) AND (albums.d2 = albums_artists.c2)) INNER JOIN albums_tags ON ((albums_tags.f1 = albums.e1) AND (albums_tags.f2 = albums.e2)) WHERE (((albums_tags.g1, albums_tags.g2) IN (SELECT tags.h1, tags.h2 FROM tags WHERE ((x = 1) AND (tags.h1 IS NOT NULL) AND (tags.h2 IS NOT NULL)))) AND (albums_artists.b1 IS NOT NULL) AND (albums_artists.b2 IS NOT NULL)))) OR (artists.id IS NULL) OR (artists.yyy IS NULL))'
1458
- end
1459
-
1460
- it "should allowing excluding by one_through_many association datasets with :conditions" do
1461
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :conditions=>{:name=>'A'}
1462
- @c1.exclude(:tag=>@c2.filter(:x=>1)).sql.must_equal "SELECT * FROM artists WHERE ((artists.id NOT IN (SELECT albums_artists.artist_id FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE ((name = 'A') AND (albums_artists.artist_id IS NOT NULL) AND (tags.id IN (SELECT tags.id FROM tags WHERE (x = 1)))))) OR (artists.id IS NULL))"
1463
- end
1464
-
1465
- it "should allowing excluding by one_through_many association datasets with :conditions and composite keys" do
1466
- @c1.one_through_many :tag, [[:albums_artists, [:b1, :b2], [:c1, :c2]], [:albums, [:d1, :d2], [:e1, :e2]], [:albums_tags, [:f1, :f2], [:g1, :g2]]], :right_primary_key=>[:h1, :h2], :left_primary_key=>[:id, :yyy], :conditions=>{:name=>'A'}
1467
- @c1.exclude(:tag=>@c2.filter(:x=>1)).sql.must_equal "SELECT * FROM artists WHERE (((artists.id, artists.yyy) NOT IN (SELECT albums_artists.b1, albums_artists.b2 FROM tags INNER JOIN albums_tags ON ((albums_tags.g1 = tags.h1) AND (albums_tags.g2 = tags.h2)) INNER JOIN albums ON ((albums.e1 = albums_tags.f1) AND (albums.e2 = albums_tags.f2)) INNER JOIN albums_artists ON ((albums_artists.c1 = albums.d1) AND (albums_artists.c2 = albums.d2)) WHERE ((name = 'A') AND (albums_artists.b1 IS NOT NULL) AND (albums_artists.b2 IS NOT NULL) AND (tags.id IN (SELECT tags.id FROM tags WHERE (x = 1)))))) OR (artists.id IS NULL) OR (artists.yyy IS NULL))"
1468
- end
1469
-
1470
- it "should support a :conditions option" do
1471
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :conditions=>{:a=>32}
1472
- n = @c1.load(:id => 1234)
1473
- n.tag_dataset.sql.must_equal 'SELECT tags.* FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE ((a = 32) AND (albums_artists.artist_id = 1234)) LIMIT 1'
1474
- n.tag.must_equal @c2.load(:id=>1)
1475
-
1476
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :conditions=>Sequel.lit('a = ?', 42)
1477
- n = @c1.load(:id => 1234)
1478
- n.tag_dataset.sql.must_equal 'SELECT tags.* FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE ((a = 42) AND (albums_artists.artist_id = 1234)) LIMIT 1'
1479
- n.tag.must_equal @c2.load(:id=>1)
1480
- end
1481
-
1482
- it "should support an :order option" do
1483
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :order=>:blah
1484
- n = @c1.load(:id => 1234)
1485
- n.tag_dataset.sql.must_equal 'SELECT tags.* FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id = 1234) ORDER BY blah LIMIT 1'
1486
- n.tag.must_equal @c2.load(:id=>1)
1487
- end
1488
-
1489
- it "should support an array for the :order option" do
1490
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :order=>[:blah1, :blah2]
1491
- n = @c1.load(:id => 1234)
1492
- n.tag_dataset.sql.must_equal 'SELECT tags.* FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id = 1234) ORDER BY blah1, blah2 LIMIT 1'
1493
- n.tag.must_equal @c2.load(:id=>1)
1494
- end
1495
-
1496
- it "should support a select option" do
1497
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :select=>:blah
1498
- n = @c1.load(:id => 1234)
1499
- n.tag_dataset.sql.must_equal 'SELECT blah FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id = 1234) LIMIT 1'
1500
- n.tag.must_equal @c2.load(:id=>1)
1501
- end
1502
-
1503
- it "should support an array for the select option" do
1504
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :select=>[Sequel::SQL::ColumnAll.new(:tags), Sequel[:albums][:name]]
1505
- n = @c1.load(:id => 1234)
1506
- n.tag_dataset.sql.must_equal 'SELECT tags.*, albums.name FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id = 1234) LIMIT 1'
1507
- n.tag.must_equal @c2.load(:id=>1)
1508
- end
1509
-
1510
- it "should accept a block" do
1511
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]] do |ds| ds.filter(:yyy=>@yyy) end
1512
- n = @c1.load(:id => 1234)
1513
- n.yyy = 85
1514
- n.tag_dataset.sql.must_equal 'SELECT tags.* FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE ((albums_artists.artist_id = 1234) AND (yyy = 85)) LIMIT 1'
1515
- n.tag.must_equal @c2.load(:id=>1)
1516
- end
1517
-
1518
- it "should allow the :order option while accepting a block" do
1519
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :order=>:blah do |ds| ds.filter(:yyy=>@yyy) end
1520
- n = @c1.load(:id => 1234)
1521
- n.yyy = 85
1522
- n.tag_dataset.sql.must_equal 'SELECT tags.* FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE ((albums_artists.artist_id = 1234) AND (yyy = 85)) ORDER BY blah LIMIT 1'
1523
- n.tag.must_equal @c2.load(:id=>1)
1524
- end
1525
-
1526
- it "should support a :dataset option that is used instead of the default" do
1527
- @c1.one_through_many :tag, [[:a, :b, :c]], :dataset=>proc{Tag.join(:albums_tags, [:tag_id]).join(:albums, [:album_id]).join(:albums_artists, [:album_id]).filter(Sequel[:albums_artists][:artist_id]=>id)}
1528
- n = @c1.load(:id => 1234)
1529
- n.tag_dataset.sql.must_equal 'SELECT tags.* FROM tags INNER JOIN albums_tags USING (tag_id) INNER JOIN albums USING (album_id) INNER JOIN albums_artists USING (album_id) WHERE (albums_artists.artist_id = 1234) LIMIT 1'
1530
- n.tag.must_equal @c2.load(:id=>1)
1531
- end
1532
-
1533
- it "should support a :limit option to specify an offset" do
1534
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :limit=>[nil, 10]
1535
- n = @c1.load(:id => 1234)
1536
- n.tag_dataset.sql.must_equal 'SELECT tags.* FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id = 1234) LIMIT 1 OFFSET 10'
1537
- n.tag.must_equal @c2.load(:id=>1)
1538
- end
1539
-
1540
- it "should have the :eager option affect the _dataset method" do
1541
- @c2.many_to_many :fans
1542
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :eager=>:fans
1543
- @c1.load(:id => 1234).tag_dataset.opts[:eager].must_equal(:fans=>nil)
1544
- end
1545
-
1546
- it "should return the associated object" do
1547
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]]
1548
- @c1.load(:id => 1234).tag.must_equal @c2.load(:id=>1)
1549
- DB.sqls.must_equal ['SELECT tags.* FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id = 1234) LIMIT 1']
1550
- end
1551
-
1552
- it "should populate cache when accessed" do
1553
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]]
1554
- n = @c1.load(:id => 1234)
1555
- n.associations[:tag].must_be_nil
1556
- DB.sqls.must_equal []
1557
- n.tag.must_equal @c2.load(:id=>1)
1558
- DB.sqls.must_equal ['SELECT tags.* FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id = 1234) LIMIT 1']
1559
- n.associations[:tag].must_equal n.tag
1560
- DB.sqls.length.must_equal 0
1561
- end
1562
-
1563
- it "should use cache if available" do
1564
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]]
1565
- n = @c1.load(:id => 1234)
1566
- n.associations[:tag] = nil
1567
- n.tag.must_be_nil
1568
- DB.sqls.must_equal []
1569
- end
1570
-
1571
- it "should not use cache if asked to reload" do
1572
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]]
1573
- n = @c1.load(:id => 1234)
1574
- n.associations[:tag] = nil
1575
- DB.sqls.must_equal []
1576
- n.tag(:reload=>true).must_equal @c2.load(:id=>1)
1577
- DB.sqls.must_equal ['SELECT tags.* FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id = 1234) LIMIT 1']
1578
- n.associations[:tag].must_equal n.tag
1579
- DB.sqls.length.must_equal 0
1580
- end
1581
-
1582
- it "should not add associations methods directly to class" do
1583
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]]
1584
- im = @c1.instance_methods
1585
- im.must_include(:tag)
1586
- im.must_include(:tag_dataset)
1587
- im2 = @c1.instance_methods(false)
1588
- im2.wont_include(:tag)
1589
- im2.wont_include(:tag_dataset)
1590
- end
1591
-
1592
- it "should support after_load association callback" do
1593
- h = []
1594
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :after_load=>:al
1595
- @c1.class_eval do
1596
- self::Foo = h
1597
- def al(v)
1598
- model::Foo << v.pk * 20
1599
- end
1600
- end
1601
- @c2.dataset = @c2.dataset.with_fetch(:id=>20)
1602
- p = @c1.load(:id=>10, :parent_id=>20)
1603
- p.tag
1604
- h.must_equal [400]
1605
- p.tag.pk.must_equal 20
1606
- end
1607
- end
1608
-
1609
- describe "one_through_many eager loading methods" do
1610
- before do
1611
- class ::Artist < Sequel::Model
1612
- plugin :many_through_many
1613
- one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]]
1614
- one_through_many :other_tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :class=>:Tag
1615
- one_through_many :album, [[:albums_artists, :artist_id, :album_id]]
1616
- one_through_many :artist, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_artists, :album_id, :artist_id]]
1617
- end
1618
- class ::Tag < Sequel::Model
1619
- plugin :many_through_many
1620
- one_through_many :track, [[:albums_tags, :tag_id, :album_id], [:albums, :id, :id]], :right_primary_key=>:album_id
1621
- end
1622
- class ::Album < Sequel::Model
1623
- end
1624
- class ::Track < Sequel::Model
1625
- end
1626
- Artist.dataset = Artist.dataset.with_fetch(proc do |sql|
1627
- h = {:id => 1}
1628
- if sql =~ /FROM artists LEFT OUTER JOIN albums_artists/
1629
- h[:tag_id] = 2
1630
- h[:album_id] = 3 if sql =~ /LEFT OUTER JOIN albums AS album/
1631
- h[:track_id] = 4 if sql =~ /LEFT OUTER JOIN tracks AS track/
1632
- h[:other_tag_id] = 9 if sql =~ /other_tag\.id AS other_tag_id/
1633
- h[:artist_id] = 10 if sql =~ /artists_0\.id AS artist_id/
1634
- end
1635
- h
1636
- end)
1637
- Artist.dataset.columns(:id)
1638
-
1639
- Tag.dataset = Tag.dataset.with_fetch(proc do |sql|
1640
- h = {:id => 2}
1641
- if sql =~ /albums_artists.artist_id IN \(([18])\)/
1642
- h[:x_foreign_key_x] = $1.to_i
1643
- elsif sql =~ /\(\(albums_artists.b1, albums_artists.b2\) IN \(\(1, 8\)\)\)/
1644
- h.merge!(:x_foreign_key_0_x=>1, :x_foreign_key_1_x=>8)
1645
- end
1646
- h[:tag_id] = h.delete(:id) if sql =~ /albums_artists.artist_id IN \(8\)/
1647
- h
1648
- end)
1649
-
1650
- Album.dataset = Album.dataset.with_fetch(proc do |sql|
1651
- h = {:id => 3}
1652
- h[:x_foreign_key_x] = 1 if sql =~ /albums_artists.artist_id IN \(1\)/
1653
- h
1654
- end)
1655
-
1656
- Track.dataset = Track.dataset.with_fetch(proc do |sql|
1657
- h = {:id => 4}
1658
- h[:x_foreign_key_x] = 2 if sql =~ /albums_tags.tag_id IN \(2\)/
1659
- h
1660
- end)
1661
-
1662
- @c1 = Artist
1663
- DB.reset
1664
- end
1665
- after do
1666
- [:Artist, :Tag, :Album, :Track].each{|x| Object.send(:remove_const, x)}
1667
- end
1668
-
1669
- it "should eagerly load a single one_through_many association" do
1670
- a = @c1.eager(:tag).all
1671
- a.must_equal [@c1.load(:id=>1)]
1672
- DB.sqls.must_equal ['SELECT * FROM artists', 'SELECT tags.*, albums_artists.artist_id AS x_foreign_key_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id IN (1))']
1673
- a.first.tag.must_equal Tag.load(:id=>2)
1674
- DB.sqls.length.must_equal 0
1675
- end
1676
-
1677
- it "should eagerly load multiple associations in a single call" do
1678
- a = @c1.eager(:tag, :album).all
1679
- a.must_equal [@c1.load(:id=>1)]
1680
- DB.sqls.must_equal ['SELECT * FROM artists',
1681
- 'SELECT tags.*, albums_artists.artist_id AS x_foreign_key_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id IN (1))',
1682
- 'SELECT albums.*, albums_artists.artist_id AS x_foreign_key_x FROM albums INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id IN (1))']
1683
- a = a.first
1684
- a.tag.must_equal Tag.load(:id=>2)
1685
- a.album.must_equal Album.load(:id=>3)
1686
- DB.sqls.length.must_equal 0
1687
- end
1688
-
1689
- it "should eagerly load multiple associations in separate" do
1690
- a = @c1.eager(:tag).eager(:album).all
1691
- a.must_equal [@c1.load(:id=>1)]
1692
- DB.sqls.must_equal ['SELECT * FROM artists',
1693
- 'SELECT tags.*, albums_artists.artist_id AS x_foreign_key_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id IN (1))',
1694
- 'SELECT albums.*, albums_artists.artist_id AS x_foreign_key_x FROM albums INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id IN (1))']
1695
- a = a.first
1696
- a.tag.must_equal Tag.load(:id=>2)
1697
- a.album.must_equal Album.load(:id=>3)
1698
- DB.sqls.length.must_equal 0
1699
- end
1700
-
1701
- it "should allow cascading of eager loading for associations of associated models" do
1702
- a = @c1.eager(:tag=>:track).all
1703
- a.must_equal [@c1.load(:id=>1)]
1704
- DB.sqls.must_equal ['SELECT * FROM artists',
1705
- 'SELECT tags.*, albums_artists.artist_id AS x_foreign_key_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id IN (1))',
1706
- 'SELECT tracks.*, albums_tags.tag_id AS x_foreign_key_x FROM tracks INNER JOIN albums ON (albums.id = tracks.album_id) INNER JOIN albums_tags ON (albums_tags.album_id = albums.id) WHERE (albums_tags.tag_id IN (2))']
1707
- a = a.first
1708
- a.tag.must_equal Tag.load(:id=>2)
1709
- a.tag.track.must_equal Track.load(:id=>4)
1710
- DB.sqls.length.must_equal 0
1711
- end
1712
-
1713
- it "should cascade eagerly loading when the :eager association option is used" do
1714
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :eager=>:track
1715
- a = @c1.eager(:tag).all
1716
- a.must_equal [@c1.load(:id=>1)]
1717
- DB.sqls.must_equal ['SELECT * FROM artists',
1718
- 'SELECT tags.*, albums_artists.artist_id AS x_foreign_key_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id IN (1))',
1719
- 'SELECT tracks.*, albums_tags.tag_id AS x_foreign_key_x FROM tracks INNER JOIN albums ON (albums.id = tracks.album_id) INNER JOIN albums_tags ON (albums_tags.album_id = albums.id) WHERE (albums_tags.tag_id IN (2))']
1720
- a = a.first
1721
- a.tag.must_equal Tag.load(:id=>2)
1722
- a.tag.track.must_equal Track.load(:id=>4)
1723
- DB.sqls.length.must_equal 0
1724
- end
1725
-
1726
- it "should respect :eager when lazily loading an association" do
1727
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :eager=>:track
1728
- a = @c1.load(:id=>1)
1729
- a.tag.must_equal Tag.load(:id=>2)
1730
- DB.sqls.must_equal ['SELECT tags.* FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id = 1) LIMIT 1',
1731
- 'SELECT tracks.*, albums_tags.tag_id AS x_foreign_key_x FROM tracks INNER JOIN albums ON (albums.id = tracks.album_id) INNER JOIN albums_tags ON (albums_tags.album_id = albums.id) WHERE (albums_tags.tag_id IN (2))']
1732
- a.tag.track.must_equal Track.load(:id=>4)
1733
- DB.sqls.length.must_equal 0
1734
- end
1735
-
1736
- it "should raise error if attempting to eagerly load an association using :eager_graph option" do
1737
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :eager_graph=>:track
1738
- proc{@c1.eager(:tag).all}.must_raise(Sequel::Error)
1739
- end
1740
-
1741
- it "should respect :eager_graph when lazily loading an association" do
1742
- Tag.dataset = Tag.dataset.with_fetch(:id=>2, :track_id=>4).with_extend{def columns; [:id] end}
1743
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :eager_graph=>:track
1744
- a = @c1.load(:id=>1)
1745
- a.tag
1746
- DB.sqls.must_equal [ 'SELECT tags.id, track.id AS track_id FROM (SELECT tags.* FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id = 1) LIMIT 1) AS tags LEFT OUTER JOIN albums_tags AS albums_tags_0 ON (albums_tags_0.tag_id = tags.id) LEFT OUTER JOIN albums ON (albums.id = albums_tags_0.album_id) LEFT OUTER JOIN tracks AS track ON (track.album_id = albums.id)']
1747
- a.tag.must_equal Tag.load(:id=>2)
1748
- a.tag.track.must_equal Track.load(:id=>4)
1749
- DB.sqls.length.must_equal 0
1750
- end
1751
-
1752
- it "should respect :conditions when eagerly loading" do
1753
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :conditions=>{:a=>32}
1754
- a = @c1.eager(:tag).all
1755
- a.must_equal [@c1.load(:id=>1)]
1756
- DB.sqls.must_equal ['SELECT * FROM artists',
1757
- 'SELECT tags.*, albums_artists.artist_id AS x_foreign_key_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE ((a = 32) AND (albums_artists.artist_id IN (1)))']
1758
- a.first.tag.must_equal Tag.load(:id=>2)
1759
- DB.sqls.length.must_equal 0
1760
- end
1761
-
1762
- it "should respect :order when eagerly loading" do
1763
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :order=>:blah, :eager_limit_strategy=>:ruby
1764
- a = @c1.eager(:tag).all
1765
- a.must_equal [@c1.load(:id=>1)]
1766
- DB.sqls.must_equal ['SELECT * FROM artists',
1767
- 'SELECT tags.*, albums_artists.artist_id AS x_foreign_key_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id IN (1)) ORDER BY blah']
1768
- a.first.tag.must_equal Tag.load(:id=>2)
1769
- DB.sqls.length.must_equal 0
1770
- end
1771
-
1772
- it "should use the association's block when eager loading by default" do
1773
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]] do |ds| ds.filter(:a) end
1774
- a = @c1.eager(:tag).all
1775
- a.must_equal [@c1.load(:id=>1)]
1776
- DB.sqls.must_equal ['SELECT * FROM artists',
1777
- 'SELECT tags.*, albums_artists.artist_id AS x_foreign_key_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (a AND (albums_artists.artist_id IN (1)))']
1778
- a.first.tag.must_equal Tag.load(:id=>2)
1779
- DB.sqls.length.must_equal 0
1780
- end
1781
-
1782
- it "should use the :eager_block option when eager loading if given" do
1783
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :eager_block=>proc{|ds| ds.filter(:b)} do |ds| ds.filter(:a) end
1784
- a = @c1.eager(:tag).all
1785
- a.must_equal [@c1.load(:id=>1)]
1786
- DB.sqls.must_equal ['SELECT * FROM artists',
1787
- 'SELECT tags.*, albums_artists.artist_id AS x_foreign_key_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (b AND (albums_artists.artist_id IN (1)))']
1788
- a.first.tag.must_equal Tag.load(:id=>2)
1789
- DB.sqls.length.must_equal 0
1790
- end
1791
-
1792
- it "should respect the :limit option on a one_through_many association" do
1793
- @c1.one_through_many :second_tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :class=>Tag, :limit=>[nil,1]
1794
- Tag.dataset = Tag.dataset.with_fetch([{:x_foreign_key_x=>1, :id=>6}])
1795
- a = @c1.eager(:second_tag).all
1796
- a.must_equal [@c1.load(:id=>1)]
1797
- DB.sqls.must_equal ['SELECT * FROM artists',
1798
- 'SELECT * FROM (SELECT tags.*, albums_artists.artist_id AS x_foreign_key_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (1 = albums_artists.artist_id) LIMIT 1 OFFSET 1) AS t1']
1799
- a.first.second_tag.must_equal Tag.load(:id=>6)
1800
- DB.sqls.length.must_equal 0
1801
- end
1802
-
1803
- it "should respect the :limit option on a one_through_many association using the :ruby strategy" do
1804
- @c1.one_through_many :second_tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :class=>Tag, :limit=>[nil,1], :eager_limit_strategy=>:ruby
1805
- Tag.dataset = Tag.dataset.with_fetch([{:x_foreign_key_x=>1, :id=>5}, {:x_foreign_key_x=>1, :id=>6}])
1806
- a = @c1.eager(:second_tag).all
1807
- a.must_equal [@c1.load(:id=>1)]
1808
- DB.sqls.must_equal ['SELECT * FROM artists',
1809
- 'SELECT tags.*, albums_artists.artist_id AS x_foreign_key_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id IN (1))']
1810
- a.first.second_tag.must_equal Tag.load(:id=>6)
1811
- DB.sqls.length.must_equal 0
1812
- end
1813
-
1814
- it "should eagerly load a single one_through_many association using the :distinct_on strategy" do
1815
- @c1.one_through_many :second_tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :class=>Tag, :order=>:name, :eager_limit_strategy=>:distinct_on
1816
- Tag.dataset = Tag.dataset.with_fetch([{:x_foreign_key_x=>1, :id=>5}]).with_extend{def supports_distinct_on?; true end}
1817
- a = @c1.eager(:second_tag).all
1818
- a.must_equal [@c1.load(:id=>1)]
1819
- DB.sqls.must_equal ['SELECT * FROM artists', "SELECT DISTINCT ON (albums_artists.artist_id) tags.*, albums_artists.artist_id AS x_foreign_key_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id IN (1)) ORDER BY albums_artists.artist_id, name"]
1820
- a.first.second_tag.must_equal Tag.load(:id=>5)
1821
- DB.sqls.length.must_equal 0
1822
- end
1823
-
1824
- it "should eagerly load a single one_through_many association using the :window_function strategy" do
1825
- @c1.one_through_many :second_tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :class=>Tag, :limit=>[nil,1], :order=>:name, :eager_limit_strategy=>:window_function
1826
- Tag.dataset = Tag.dataset.with_fetch([{:x_foreign_key_x=>1, :id=>5}]).with_extend{def supports_window_functions?; true end}
1827
- a = @c1.eager(:second_tag).all
1828
- a.must_equal [@c1.load(:id=>1)]
1829
- DB.sqls.must_equal ['SELECT * FROM artists',
1830
- 'SELECT * FROM (SELECT tags.*, albums_artists.artist_id AS x_foreign_key_x, row_number() OVER (PARTITION BY albums_artists.artist_id ORDER BY name) AS x_sequel_row_number_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id IN (1))) AS t1 WHERE (x_sequel_row_number_x = 2)']
1831
- a.first.second_tag.must_equal Tag.load(:id=>5)
1832
- DB.sqls.length.must_equal 0
1833
- end
1834
-
1835
- it "should respect the :limit option on a one_through_many association with composite primary keys on the main table" do
1836
- @c1.set_primary_key([:id1, :id2])
1837
- @c1.columns :id1, :id2
1838
-
1839
- @c1.one_through_many :second_tag, [[:albums_artists, [:artist_id1, :artist_id2], :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :class=>Tag, :limit=>[nil,1], :order=>:name
1840
- Tag.dataset = Tag.dataset.with_fetch([{:x_foreign_key_0_x=>1, :x_foreign_key_1_x=>2, :id=>5}]).with_extend{def supports_window_functions?; true end}
1841
- a = @c1.eager(:second_tag).with_fetch(:id1=>1, :id2=>2).all
1842
- a.must_equal [@c1.load(:id1=>1, :id2=>2)]
1843
- DB.sqls.must_equal ['SELECT * FROM artists',
1844
- 'SELECT * FROM (SELECT tags.*, albums_artists.artist_id1 AS x_foreign_key_0_x, albums_artists.artist_id2 AS x_foreign_key_1_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE ((1 = albums_artists.artist_id1) AND (2 = albums_artists.artist_id2)) ORDER BY name LIMIT 1 OFFSET 1) AS t1']
1845
- a.first.second_tag.must_equal Tag.load(:id=>5)
1846
- DB.sqls.length.must_equal 0
1847
- end
1848
-
1849
- it "should respect the :limit option on a one_through_many association with composite primary keys on the main table using a :window_function strategy" do
1850
- @c1.set_primary_key([:id1, :id2])
1851
- @c1.columns :id1, :id2
1852
-
1853
- @c1.one_through_many :second_tag, [[:albums_artists, [:artist_id1, :artist_id2], :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :class=>Tag, :limit=>[nil,1], :order=>:name, :eager_limit_strategy=>:window_function
1854
- Tag.dataset = Tag.dataset.with_fetch([{:x_foreign_key_0_x=>1, :x_foreign_key_1_x=>2, :id=>5}]).with_extend{def supports_window_functions?; true end}
1855
- a = @c1.eager(:second_tag).with_fetch(:id1=>1, :id2=>2).all
1856
- a.must_equal [@c1.load(:id1=>1, :id2=>2)]
1857
- DB.sqls.must_equal ['SELECT * FROM artists',
1858
- 'SELECT * FROM (SELECT tags.*, albums_artists.artist_id1 AS x_foreign_key_0_x, albums_artists.artist_id2 AS x_foreign_key_1_x, row_number() OVER (PARTITION BY albums_artists.artist_id1, albums_artists.artist_id2 ORDER BY name) AS x_sequel_row_number_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE ((albums_artists.artist_id1, albums_artists.artist_id2) IN ((1, 2)))) AS t1 WHERE (x_sequel_row_number_x = 2)']
1859
- a.first.second_tag.must_equal Tag.load(:id=>5)
1860
- DB.sqls.length.must_equal 0
1861
- end
1862
-
1863
- it "should raise an error when attempting to eagerly load an association with the :allow_eager option set to false" do
1864
- @c1.eager(:tag).all
1865
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :allow_eager=>false
1866
- proc{@c1.eager(:tag).all}.must_raise(Sequel::Error)
1867
- end
1868
-
1869
- it "should respect the association's :select option" do
1870
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :select=>Sequel[:tags][:name]
1871
- a = @c1.eager(:tag).all
1872
- a.must_equal [@c1.load(:id=>1)]
1873
- DB.sqls.must_equal ['SELECT * FROM artists',
1874
- 'SELECT tags.name, albums_artists.artist_id AS x_foreign_key_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id IN (1))']
1875
- a.first.tag.must_equal Tag.load(:id=>2)
1876
- DB.sqls.length.must_equal 0
1877
- end
1878
-
1879
- it "should respect one_through_many association's :left_primary_key and :right_primary_key options" do
1880
- @c1.send(:define_method, :yyy){values[:yyy]}
1881
- @c1.dataset = @c1.dataset.with_fetch(:id=>1, :yyy=>8).with_extend{def columns; [:id, :yyy] end}
1882
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :left_primary_key=>:yyy, :right_primary_key=>:tag_id
1883
- a = @c1.eager(:tag).all
1884
- a.must_equal [@c1.load(:id=>1, :yyy=>8)]
1885
- DB.sqls.must_equal ['SELECT * FROM artists',
1886
- 'SELECT tags.*, albums_artists.artist_id AS x_foreign_key_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.tag_id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id IN (8))']
1887
- a.first.tag.must_equal Tag.load(:tag_id=>2)
1888
- DB.sqls.length.must_equal 0
1889
- end
1890
-
1891
- it "should handle composite keys" do
1892
- @c1.send(:define_method, :yyy){values[:yyy]}
1893
- @c1.dataset = @c1.dataset.with_fetch(:id=>1, :yyy=>8).with_extend{def columns; [:id, :yyy] end}
1894
- @c1.one_through_many :tag, [[:albums_artists, [:b1, :b2], [:c1, :c2]], [:albums, [:d1, :d2], [:e1, :e2]], [:albums_tags, [:f1, :f2], [:g1, :g2]]], :right_primary_key=>[:h1, :h2], :left_primary_key=>[:id, :yyy]
1895
- a = @c1.eager(:tag).all
1896
- a.must_equal [@c1.load(:id=>1, :yyy=>8)]
1897
- DB.sqls.must_equal ['SELECT * FROM artists',
1898
- 'SELECT tags.*, albums_artists.b1 AS x_foreign_key_0_x, albums_artists.b2 AS x_foreign_key_1_x FROM tags INNER JOIN albums_tags ON ((albums_tags.g1 = tags.h1) AND (albums_tags.g2 = tags.h2)) INNER JOIN albums ON ((albums.e1 = albums_tags.f1) AND (albums.e2 = albums_tags.f2)) INNER JOIN albums_artists ON ((albums_artists.c1 = albums.d1) AND (albums_artists.c2 = albums.d2)) WHERE ((albums_artists.b1, albums_artists.b2) IN ((1, 8)))']
1899
- a.first.tag.must_equal Tag.load(:id=>2)
1900
- DB.sqls.length.must_equal 0
1901
- end
1902
-
1903
- it "should respect :after_load callbacks on associations when eager loading" do
1904
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :after_load=>lambda{|o, a| o[:id] *= 2; a[:id] *= 3}
1905
- a = @c1.eager(:tag).all
1906
- a.must_equal [@c1.load(:id=>2)]
1907
- DB.sqls.must_equal ['SELECT * FROM artists',
1908
- 'SELECT tags.*, albums_artists.artist_id AS x_foreign_key_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id IN (1))']
1909
- a.first.tag.must_equal Tag.load(:id=>6)
1910
- DB.sqls.length.must_equal 0
1911
- end
1912
-
1913
- it "should support association_join" do
1914
- @c1.association_join(:tag).sql.must_equal "SELECT * FROM artists INNER JOIN albums_artists ON (albums_artists.artist_id = artists.id) INNER JOIN albums ON (albums.id = albums_artists.album_id) INNER JOIN albums_tags ON (albums_tags.album_id = albums.id) INNER JOIN tags AS tag ON (tag.id = albums_tags.tag_id)"
1915
- end
1916
-
1917
- it "should eagerly graph a single one_through_many association" do
1918
- a = @c1.eager_graph(:tag).all
1919
- a.must_equal [@c1.load(:id=>1)]
1920
- DB.sqls.must_equal ['SELECT artists.id, tag.id AS tag_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags AS tag ON (tag.id = albums_tags.tag_id)']
1921
- a.first.tag.must_equal Tag.load(:id=>2)
1922
- DB.sqls.length.must_equal 0
1923
- end
1924
-
1925
- it "should eagerly graph a single one_through_many association using the :distinct_on strategy" do
1926
- Tag.dataset = Tag.dataset.with_extend{def supports_distinct_on?; true end}
1927
- a = @c1.eager_graph_with_options(:tag, :limit_strategy=>true).with_fetch(:id=>1, :tag_id=>2).all
1928
- a.must_equal [@c1.load(:id=>1)]
1929
- DB.sqls.must_equal ['SELECT artists.id, tag.id AS tag_id FROM artists LEFT OUTER JOIN (SELECT DISTINCT ON (albums_artists.artist_id) tags.*, albums_artists.artist_id AS x_foreign_key_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) ORDER BY albums_artists.artist_id) AS tag ON (tag.x_foreign_key_x = artists.id)']
1930
- a.first.tag.must_equal Tag.load(:id=>2)
1931
- DB.sqls.length.must_equal 0
1932
- end
1933
-
1934
- it "should eagerly graph a single one_through_many association using the :window_function strategy" do
1935
- Tag.dataset = Tag.dataset.with_extend do
1936
- def supports_window_functions?; true end
1937
- def columns; literal(opts[:select]) =~ /x_foreign_key_x/ ? [:id, :x_foreign_key_x] : [:id] end
1938
- end
1939
- a = @c1.eager_graph_with_options(:tag, :limit_strategy=>true).with_fetch(:id=>1, :tag_id=>2).all
1940
- a.must_equal [@c1.load(:id=>1)]
1941
- DB.sqls.must_equal ['SELECT artists.id, tag.id AS tag_id FROM artists LEFT OUTER JOIN (SELECT id, x_foreign_key_x FROM (SELECT tags.*, albums_artists.artist_id AS x_foreign_key_x, row_number() OVER (PARTITION BY albums_artists.artist_id) AS x_sequel_row_number_x FROM tags INNER JOIN albums_tags ON (albums_tags.tag_id = tags.id) INNER JOIN albums ON (albums.id = albums_tags.album_id) INNER JOIN albums_artists ON (albums_artists.album_id = albums.id)) AS t1 WHERE (x_sequel_row_number_x = 1)) AS tag ON (tag.x_foreign_key_x = artists.id)']
1942
- a.first.tag.must_equal Tag.load(:id=>2)
1943
- DB.sqls.length.must_equal 0
1944
- end
1945
-
1946
- it "should eagerly graph multiple associations in a single call" do
1947
- a = @c1.eager_graph(:tag, :album).all
1948
- a.must_equal [@c1.load(:id=>1)]
1949
- DB.sqls.must_equal ['SELECT artists.id, tag.id AS tag_id, album.id AS album_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags AS tag ON (tag.id = albums_tags.tag_id) LEFT OUTER JOIN albums_artists AS albums_artists_0 ON (albums_artists_0.artist_id = artists.id) LEFT OUTER JOIN albums AS album ON (album.id = albums_artists_0.album_id)']
1950
- a = a.first
1951
- a.tag.must_equal Tag.load(:id=>2)
1952
- a.album.must_equal Album.load(:id=>3)
1953
- DB.sqls.length.must_equal 0
1954
- end
1955
-
1956
- it "should eagerly graph multiple associations in separate calls" do
1957
- a = @c1.eager_graph(:tag).eager_graph(:album).all
1958
- a.must_equal [@c1.load(:id=>1)]
1959
- DB.sqls.must_equal ['SELECT artists.id, tag.id AS tag_id, album.id AS album_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags AS tag ON (tag.id = albums_tags.tag_id) LEFT OUTER JOIN albums_artists AS albums_artists_0 ON (albums_artists_0.artist_id = artists.id) LEFT OUTER JOIN albums AS album ON (album.id = albums_artists_0.album_id)']
1960
- a = a.first
1961
- a.tag.must_equal Tag.load(:id=>2)
1962
- a.album.must_equal Album.load(:id=>3)
1963
- DB.sqls.length.must_equal 0
1964
- end
1965
-
1966
- it "should allow cascading of eager graphing for associations of associated models" do
1967
- a = @c1.eager_graph(:tag=>:track).all
1968
- a.must_equal [@c1.load(:id=>1)]
1969
- DB.sqls.must_equal ['SELECT artists.id, tag.id AS tag_id, track.id AS track_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags AS tag ON (tag.id = albums_tags.tag_id) LEFT OUTER JOIN albums_tags AS albums_tags_0 ON (albums_tags_0.tag_id = tag.id) LEFT OUTER JOIN albums AS albums_0 ON (albums_0.id = albums_tags_0.album_id) LEFT OUTER JOIN tracks AS track ON (track.album_id = albums_0.id)']
1970
- a = a.first
1971
- a.tag.must_equal Tag.load(:id=>2)
1972
- a.tag.track.must_equal Track.load(:id=>4)
1973
- DB.sqls.length.must_equal 0
1974
- end
1975
-
1976
- it "should eager graph multiple associations from the same table" do
1977
- a = @c1.eager_graph(:tag, :other_tag).all
1978
- a.must_equal [@c1.load(:id=>1)]
1979
- DB.sqls.must_equal ['SELECT artists.id, tag.id AS tag_id, other_tag.id AS other_tag_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags AS tag ON (tag.id = albums_tags.tag_id) LEFT OUTER JOIN albums_artists AS albums_artists_0 ON (albums_artists_0.artist_id = artists.id) LEFT OUTER JOIN albums AS albums_0 ON (albums_0.id = albums_artists_0.album_id) LEFT OUTER JOIN albums_tags AS albums_tags_0 ON (albums_tags_0.album_id = albums_0.id) LEFT OUTER JOIN tags AS other_tag ON (other_tag.id = albums_tags_0.tag_id)']
1980
- a = a.first
1981
- a.tag.must_equal Tag.load(:id=>2)
1982
- a.other_tag.must_equal Tag.load(:id=>9)
1983
- DB.sqls.length.must_equal 0
1984
- end
1985
-
1986
- it "should eager graph a self_referential association" do
1987
- a = @c1.eager_graph(:tag, :artist).with_fetch(:id=>1, :tag_id=>2, :artist_id=>10).all
1988
- a.must_equal [@c1.load(:id=>1)]
1989
- DB.sqls.must_equal ['SELECT artists.id, tag.id AS tag_id, artist.id AS artist_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags AS tag ON (tag.id = albums_tags.tag_id) LEFT OUTER JOIN albums_artists AS albums_artists_0 ON (albums_artists_0.artist_id = artists.id) LEFT OUTER JOIN albums AS albums_0 ON (albums_0.id = albums_artists_0.album_id) LEFT OUTER JOIN albums_artists AS albums_artists_1 ON (albums_artists_1.album_id = albums_0.id) LEFT OUTER JOIN artists AS artist ON (artist.id = albums_artists_1.artist_id)']
1990
- a = a.first
1991
- a.tag.must_equal Tag.load(:id=>2)
1992
- a.artist.must_equal @c1.load(:id=>10)
1993
- DB.sqls.length.must_equal 0
1994
- end
1995
-
1996
- it "should be able to use eager and eager_graph together" do
1997
- a = @c1.eager_graph(:tag).eager(:album).all
1998
- a.must_equal [@c1.load(:id=>1)]
1999
- DB.sqls.must_equal ['SELECT artists.id, tag.id AS tag_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags AS tag ON (tag.id = albums_tags.tag_id)',
2000
- 'SELECT albums.*, albums_artists.artist_id AS x_foreign_key_x FROM albums INNER JOIN albums_artists ON (albums_artists.album_id = albums.id) WHERE (albums_artists.artist_id IN (1))']
2001
- a = a.first
2002
- a.tag.must_equal Tag.load(:id=>2)
2003
- a.album.must_equal Album.load(:id=>3)
2004
- DB.sqls.length.must_equal 0
2005
- end
2006
-
2007
- it "should handle no associated records when eagerly graphing a single one_through_many association" do
2008
- a = @c1.eager_graph(:tag).with_fetch(:id=>1, :tag_id=>nil).all
2009
- a.must_equal [@c1.load(:id=>1)]
2010
- DB.sqls.must_equal ['SELECT artists.id, tag.id AS tag_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags AS tag ON (tag.id = albums_tags.tag_id)']
2011
- a.first.tag.must_be_nil
2012
- DB.sqls.length.must_equal 0
2013
- end
2014
-
2015
- it "should handle no associated records when eagerly graphing multiple one_through_many associations" do
2016
- a = @c1.eager_graph(:tag, :album).with_fetch([{:id=>1, :tag_id=>5, :album_id=>6}, {:id=>7, :tag_id=>nil, :albums_0_id=>nil}]).all
2017
- a.must_equal [@c1.load(:id=>1), @c1.load(:id=>7)]
2018
- DB.sqls.must_equal ['SELECT artists.id, tag.id AS tag_id, album.id AS album_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags AS tag ON (tag.id = albums_tags.tag_id) LEFT OUTER JOIN albums_artists AS albums_artists_0 ON (albums_artists_0.artist_id = artists.id) LEFT OUTER JOIN albums AS album ON (album.id = albums_artists_0.album_id)']
2019
- a.first.tag.must_equal Tag.load(:id=>5)
2020
- a.first.album.must_equal Album.load(:id=>6)
2021
- a.last.tag.must_be_nil
2022
- a.last.album.must_be_nil
2023
- DB.sqls.length.must_equal 0
2024
- end
2025
-
2026
- it "should handle missing associated records when cascading eager graphing for associations of associated models" do
2027
- a = @c1.eager_graph(:tag=>:track).with_fetch([{:id=>1, :tag_id=>2, :track_id=>nil}, {:id=>2, :tag_id=>nil, :tracks_id=>nil}]).all
2028
- a.must_equal [@c1.load(:id=>1), @c1.load(:id=>2)]
2029
- DB.sqls.must_equal ['SELECT artists.id, tag.id AS tag_id, track.id AS track_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags AS tag ON (tag.id = albums_tags.tag_id) LEFT OUTER JOIN albums_tags AS albums_tags_0 ON (albums_tags_0.tag_id = tag.id) LEFT OUTER JOIN albums AS albums_0 ON (albums_0.id = albums_tags_0.album_id) LEFT OUTER JOIN tracks AS track ON (track.album_id = albums_0.id)']
2030
- a.last.tag.must_be_nil
2031
- a = a.first
2032
- a.tag.must_equal Tag.load(:id=>2)
2033
- a.tag.track.must_be_nil
2034
- DB.sqls.length.must_equal 0
2035
- end
2036
-
2037
- it "eager graphing should respect :left_primary_key and :right_primary_key options" do
2038
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :left_primary_key=>:yyy, :right_primary_key=>:tag_id
2039
- @c1.dataset = @c1.dataset.with_extend{def columns; [:id, :yyy] end}
2040
- Tag.dataset = Tag.dataset.with_extend{def columns; [:id, :tag_id] end}
2041
- a = @c1.eager_graph(:tag).with_fetch(:id=>1, :yyy=>8, :tag_id=>2, :tag_tag_id=>4).all
2042
- a.must_equal [@c1.load(:id=>1, :yyy=>8)]
2043
- DB.sqls.must_equal ['SELECT artists.id, artists.yyy, tag.id AS tag_id, tag.tag_id AS tag_tag_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.yyy) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags AS tag ON (tag.tag_id = albums_tags.tag_id)']
2044
- a.first.tag.must_equal Tag.load(:id=>2, :tag_id=>4)
2045
- DB.sqls.length.must_equal 0
2046
- end
2047
-
2048
- it "eager graphing should respect composite keys" do
2049
- @c1.one_through_many :tag, [[:albums_artists, [:b1, :b2], [:c1, :c2]], [:albums, [:d1, :d2], [:e1, :e2]], [:albums_tags, [:f1, :f2], [:g1, :g2]]], :right_primary_key=>[:id, :tag_id], :left_primary_key=>[:id, :yyy]
2050
- @c1.dataset = @c1.dataset.with_extend{def columns; [:id, :yyy] end}
2051
- Tag.dataset = Tag.dataset.with_extend{def columns; [:id, :tag_id] end}
2052
- a = @c1.eager_graph(:tag).with_fetch(:id=>1, :yyy=>8, :tag_id=>2, :tag_tag_id=>4).all
2053
- a.must_equal [@c1.load(:id=>1, :yyy=>8)]
2054
- DB.sqls.must_equal ['SELECT artists.id, artists.yyy, tag.id AS tag_id, tag.tag_id AS tag_tag_id FROM artists LEFT OUTER JOIN albums_artists ON ((albums_artists.b1 = artists.id) AND (albums_artists.b2 = artists.yyy)) LEFT OUTER JOIN albums ON ((albums.d1 = albums_artists.c1) AND (albums.d2 = albums_artists.c2)) LEFT OUTER JOIN albums_tags ON ((albums_tags.f1 = albums.e1) AND (albums_tags.f2 = albums.e2)) LEFT OUTER JOIN tags AS tag ON ((tag.id = albums_tags.g1) AND (tag.tag_id = albums_tags.g2))']
2055
- a.first.tag.must_equal Tag.load(:id=>2, :tag_id=>4)
2056
- DB.sqls.length.must_equal 0
2057
- end
2058
-
2059
- it "should respect the association's :graph_select option" do
2060
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :graph_select=>:b
2061
- a = @c1.eager_graph(:tag).with_fetch(:id=>1, :b=>2).all
2062
- a.must_equal [@c1.load(:id=>1)]
2063
- DB.sqls.must_equal ['SELECT artists.id, tag.b FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags AS tag ON (tag.id = albums_tags.tag_id)']
2064
- a.first.tag.must_equal Tag.load(:b=>2)
2065
- DB.sqls.length.must_equal 0
2066
- end
2067
-
2068
- it "should respect the association's :graph_join_type option" do
2069
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], [:albums, :id, :id], [:albums_tags, :album_id, :tag_id]], :graph_join_type=>:inner
2070
- @c1.eager_graph(:tag).sql.must_equal 'SELECT artists.id, tag.id AS tag_id FROM artists INNER JOIN albums_artists ON (albums_artists.artist_id = artists.id) INNER JOIN albums ON (albums.id = albums_artists.album_id) INNER JOIN albums_tags ON (albums_tags.album_id = albums.id) INNER JOIN tags AS tag ON (tag.id = albums_tags.tag_id)'
2071
- end
2072
-
2073
- it "should respect the association's :join_type option on through" do
2074
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], {:table=>:albums, :left=>:id, :right=>:id, :join_type=>:natural}, [:albums_tags, :album_id, :tag_id]], :graph_join_type=>:inner
2075
- @c1.eager_graph(:tag).sql.must_equal 'SELECT artists.id, tag.id AS tag_id FROM artists INNER JOIN albums_artists ON (albums_artists.artist_id = artists.id) NATURAL JOIN albums ON (albums.id = albums_artists.album_id) INNER JOIN albums_tags ON (albums_tags.album_id = albums.id) INNER JOIN tags AS tag ON (tag.id = albums_tags.tag_id)'
2076
- end
2077
-
2078
- it "should respect the association's :conditions option" do
2079
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], {:table=>:albums, :left=>:id, :right=>:id}, [:albums_tags, :album_id, :tag_id]], :conditions=>{:a=>32}
2080
- @c1.eager_graph(:tag).sql.must_equal 'SELECT artists.id, tag.id AS tag_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags AS tag ON ((tag.id = albums_tags.tag_id) AND (tag.a = 32))'
2081
- end
2082
-
2083
- it "should respect the association's :graph_conditions option" do
2084
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], {:table=>:albums, :left=>:id, :right=>:id}, [:albums_tags, :album_id, :tag_id]], :graph_conditions=>{:a=>42}
2085
- @c1.eager_graph(:tag).sql.must_equal 'SELECT artists.id, tag.id AS tag_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags AS tag ON ((tag.id = albums_tags.tag_id) AND (tag.a = 42))'
2086
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], {:table=>:albums, :left=>:id, :right=>:id}, [:albums_tags, :album_id, :tag_id]], :graph_conditions=>{:a=>42}, :conditions=>{:a=>32}
2087
- @c1.eager_graph(:tag).sql.must_equal 'SELECT artists.id, tag.id AS tag_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags AS tag ON ((tag.id = albums_tags.tag_id) AND (tag.a = 42))'
2088
- end
2089
-
2090
- it "should respect the association's :conditions option on through" do
2091
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], {:table=>:albums, :left=>:id, :right=>:id, :conditions=>{:a=>42}}, [:albums_tags, :album_id, :tag_id]]
2092
- @c1.eager_graph(:tag).sql.must_equal 'SELECT artists.id, tag.id AS tag_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON ((albums.id = albums_artists.album_id) AND (albums.a = 42)) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags AS tag ON (tag.id = albums_tags.tag_id)'
2093
- end
2094
-
2095
- it "should respect the association's :graph_block option" do
2096
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], {:table=>:albums, :left=>:id, :right=>:id}, [:albums_tags, :album_id, :tag_id]], :graph_block=>proc{|ja,lja,js| {Sequel.qualify(ja, :active)=>true}}
2097
- @c1.eager_graph(:tag).sql.must_equal 'SELECT artists.id, tag.id AS tag_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags AS tag ON ((tag.id = albums_tags.tag_id) AND (tag.active IS TRUE))'
2098
- end
2099
-
2100
- it "should respect the association's :block option on through" do
2101
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], {:table=>:albums, :left=>:id, :right=>:id, :block=>proc{|ja,lja,js| {Sequel.qualify(ja, :active)=>true}}}, [:albums_tags, :album_id, :tag_id]]
2102
- @c1.eager_graph(:tag).sql.must_equal 'SELECT artists.id, tag.id AS tag_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON ((albums.id = albums_artists.album_id) AND (albums.active IS TRUE)) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags AS tag ON (tag.id = albums_tags.tag_id)'
2103
- end
2104
-
2105
- it "should respect the association's :graph_only_conditions option" do
2106
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], {:table=>:albums, :left=>:id, :right=>:id}, [:albums_tags, :album_id, :tag_id]], :graph_only_conditions=>{:a=>32}
2107
- @c1.eager_graph(:tag).sql.must_equal 'SELECT artists.id, tag.id AS tag_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags AS tag ON (tag.a = 32)'
2108
- end
2109
-
2110
- it "should respect the association's :only_conditions option on through" do
2111
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], {:table=>:albums, :left=>:id, :right=>:id, :only_conditions=>{:a=>42}}, [:albums_tags, :album_id, :tag_id]]
2112
- @c1.eager_graph(:tag).sql.must_equal 'SELECT artists.id, tag.id AS tag_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.a = 42) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags AS tag ON (tag.id = albums_tags.tag_id)'
2113
- end
2114
-
2115
- it "should create unique table aliases for all associations" do
2116
- @c1.eager_graph(:artist=>{:artist=>:artist}).sql.must_equal "SELECT artists.id, artist.id AS artist_id, artist_0.id AS artist_0_id, artist_1.id AS artist_1_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_artists AS albums_artists_0 ON (albums_artists_0.album_id = albums.id) LEFT OUTER JOIN artists AS artist ON (artist.id = albums_artists_0.artist_id) LEFT OUTER JOIN albums_artists AS albums_artists_1 ON (albums_artists_1.artist_id = artist.id) LEFT OUTER JOIN albums AS albums_0 ON (albums_0.id = albums_artists_1.album_id) LEFT OUTER JOIN albums_artists AS albums_artists_2 ON (albums_artists_2.album_id = albums_0.id) LEFT OUTER JOIN artists AS artist_0 ON (artist_0.id = albums_artists_2.artist_id) LEFT OUTER JOIN albums_artists AS albums_artists_3 ON (albums_artists_3.artist_id = artist_0.id) LEFT OUTER JOIN albums AS albums_1 ON (albums_1.id = albums_artists_3.album_id) LEFT OUTER JOIN albums_artists AS albums_artists_4 ON (albums_artists_4.album_id = albums_1.id) LEFT OUTER JOIN artists AS artist_1 ON (artist_1.id = albums_artists_4.artist_id)"
2117
- end
2118
-
2119
- it "should respect the association's :order" do
2120
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], {:table=>:albums, :left=>:id, :right=>:id}, [:albums_tags, :album_id, :tag_id]], :order=>[:blah1, :blah2]
2121
- @c1.order(Sequel[:artists][:blah2], Sequel[:artists][:blah3]).eager_graph(:tag).sql.must_equal 'SELECT artists.id, tag.id AS tag_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags AS tag ON (tag.id = albums_tags.tag_id) ORDER BY artists.blah2, artists.blah3, tag.blah1, tag.blah2'
2122
- end
2123
-
2124
- it "should only qualify unqualified symbols, identifiers, or ordered versions in association's :order" do
2125
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], {:table=>:albums, :left=>:id, :right=>:id}, [:albums_tags, :album_id, :tag_id]], :order=>[Sequel.identifier(:blah__id), Sequel.identifier(:blah__id).desc, Sequel.desc(Sequel[:blah][:id]), Sequel[:blah][:id], :album_id, Sequel.desc(:album_id), 1, Sequel.lit('RANDOM()'), Sequel.qualify(:b, :a)]
2126
- @c1.order(Sequel[:artists][:blah2], Sequel[:artists][:blah3]).eager_graph(:tag).sql.must_equal 'SELECT artists.id, tag.id AS tag_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags AS tag ON (tag.id = albums_tags.tag_id) ORDER BY artists.blah2, artists.blah3, tag.blah__id, tag.blah__id DESC, blah.id DESC, blah.id, tag.album_id, tag.album_id DESC, 1, RANDOM(), b.a'
2127
- end
2128
-
2129
- with_symbol_splitting "should not qualify qualified symbols in association's :order" do
2130
- @c1.one_through_many :tag, [[:albums_artists, :artist_id, :album_id], {:table=>:albums, :left=>:id, :right=>:id}, [:albums_tags, :album_id, :tag_id]], :order=>[Sequel.identifier(:blah__id), Sequel.identifier(:blah__id).desc, Sequel.desc(:blah__id), :blah__id, :album_id, Sequel.desc(:album_id), 1, Sequel.lit('RANDOM()'), Sequel.qualify(:b, :a)]
2131
- @c1.order(:artists__blah2, :artists__blah3).eager_graph(:tag).sql.must_equal 'SELECT artists.id, tag.id AS tag_id FROM artists LEFT OUTER JOIN albums_artists ON (albums_artists.artist_id = artists.id) LEFT OUTER JOIN albums ON (albums.id = albums_artists.album_id) LEFT OUTER JOIN albums_tags ON (albums_tags.album_id = albums.id) LEFT OUTER JOIN tags AS tag ON (tag.id = albums_tags.tag_id) ORDER BY artists.blah2, artists.blah3, tag.blah__id, tag.blah__id DESC, blah.id DESC, blah.id, tag.album_id, tag.album_id DESC, 1, RANDOM(), b.a'
2132
- end
2133
- end
2134
-
2135
- describe "Sequel::Model.finalize_associations" do
2136
- before do
2137
- class ::Item < Sequel::Model
2138
- plugin :many_through_many
2139
- many_through_many :items, [[:foos, :item1_id, :foo1_id], [:bars, :foo2_id, :item2_id]]
2140
- one_through_many :item, [[:foos, :item1_id, :foo1_id], [:bars, :foo2_id, :item2_id]]
2141
- finalize_associations
2142
- end
2143
- end
2144
- after do
2145
- Object.send(:remove_const, :Item)
2146
- end
2147
-
2148
- it "should finalize one_through_many associations" do
2149
- r = Item.association_reflection(:item)
2150
- r[:class].must_equal Item
2151
- r[:_dataset].sql.must_equal "SELECT items.* FROM items INNER JOIN bars ON (bars.item2_id = items.id) INNER JOIN foos ON (foos.foo1_id = bars.foo2_id) LIMIT 1"
2152
- r[:associated_eager_dataset].sql.must_equal "SELECT items.* FROM items INNER JOIN bars ON (bars.item2_id = items.id) INNER JOIN foos ON (foos.foo1_id = bars.foo2_id)"
2153
- r[:filter_by_associations_conditions_dataset].sql.must_equal "SELECT foos.item1_id FROM items INNER JOIN bars ON (bars.item2_id = items.id) INNER JOIN foos ON (foos.foo1_id = bars.foo2_id) WHERE (foos.item1_id IS NOT NULL)"
2154
- r[:placeholder_loader].wont_be_nil
2155
- r[:predicate_key].must_equal Sequel.qualify(:foos, :item1_id)
2156
- r[:associated_key_table].must_equal :foos
2157
- r[:edges].must_equal [{:table=>:foos, :left=>:id, :right=>:item1_id, :conditions=>[], :join_type=>:left_outer, :block=>nil}, {:table=>:bars, :left=>:foo1_id, :right=>:foo2_id, :conditions=>[], :join_type=>:left_outer, :block=>nil}]
2158
- r[:final_edge].must_equal(:table=>:items, :left=>:item2_id, :right=>:id, :conditions=>nil, :join_type=>nil, :block=>nil)
2159
- r[:final_reverse_edge].must_equal(:table=>:foos, :left=>:foo1_id, :right=>:foo2_id, :alias=>:foos)
2160
- r[:reverse_edges].must_equal [{:table=>:bars, :left=>:item2_id, :right=>:id, :alias=>:bars}]
2161
- end
2162
-
2163
- it "should finalize many_through_many associations" do
2164
- r = Item.association_reflection(:items)
2165
- r[:class].must_equal Item
2166
- r[:_dataset].sql.must_equal "SELECT items.* FROM items INNER JOIN bars ON (bars.item2_id = items.id) INNER JOIN foos ON (foos.foo1_id = bars.foo2_id)"
2167
- r[:associated_eager_dataset].sql.must_equal "SELECT items.* FROM items INNER JOIN bars ON (bars.item2_id = items.id) INNER JOIN foos ON (foos.foo1_id = bars.foo2_id)"
2168
- r[:filter_by_associations_conditions_dataset].sql.must_equal "SELECT foos.item1_id FROM items INNER JOIN bars ON (bars.item2_id = items.id) INNER JOIN foos ON (foos.foo1_id = bars.foo2_id) WHERE (foos.item1_id IS NOT NULL)"
2169
- r[:placeholder_loader].wont_be_nil
2170
- r[:predicate_key].must_equal Sequel.qualify(:foos, :item1_id)
2171
- r[:associated_key_table].must_equal :foos
2172
- r[:edges].must_equal [{:table=>:foos, :left=>:id, :right=>:item1_id, :conditions=>[], :join_type=>:left_outer, :block=>nil}, {:table=>:bars, :left=>:foo1_id, :right=>:foo2_id, :conditions=>[], :join_type=>:left_outer, :block=>nil}]
2173
- r[:final_edge].must_equal(:table=>:items, :left=>:item2_id, :right=>:id, :conditions=>nil, :join_type=>nil, :block=>nil)
2174
- r[:final_reverse_edge].must_equal(:table=>:foos, :left=>:foo1_id, :right=>:foo2_id, :alias=>:foos)
2175
- r[:reverse_edges].must_equal [{:table=>:bars, :left=>:item2_id, :right=>:id, :alias=>:bars}]
2176
- end
2177
- end