tdiary 5.0.13 → 5.0.14

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 (4151) hide show
  1. checksums.yaml +4 -4
  2. data/ChangeLog +7 -0
  3. data/Gemfile.lock +18 -22
  4. data/doc/INSTALL-paas.md +1 -85
  5. data/lib/tdiary/plugin.rb +30 -30
  6. data/lib/tdiary/plugin/00default.rb +1 -1
  7. data/lib/tdiary/version.rb +1 -1
  8. data/misc/paas/heroku/Gemfile.local +1 -1
  9. data/misc/paas/heroku/Gemfile.lock +45 -49
  10. data/misc/plugin/amazon.rb +1 -1
  11. data/misc/plugin/amp.rb +4 -4
  12. data/public/index.rdf +3 -15
  13. metadata +2 -4140
  14. data/tdiary.conf +0 -243
  15. data/vendor/bundle/bin/coveralls +0 -27
  16. data/vendor/bundle/bin/emot +0 -27
  17. data/vendor/bundle/bin/hikidoc +0 -27
  18. data/vendor/bundle/bin/htmldiff +0 -29
  19. data/vendor/bundle/bin/jasmine +0 -27
  20. data/vendor/bundle/bin/launchy +0 -27
  21. data/vendor/bundle/bin/ldiff +0 -29
  22. data/vendor/bundle/bin/nokogiri +0 -27
  23. data/vendor/bundle/bin/pit +0 -27
  24. data/vendor/bundle/bin/racksh +0 -27
  25. data/vendor/bundle/bin/rackup +0 -27
  26. data/vendor/bundle/bin/rake +0 -27
  27. data/vendor/bundle/bin/redcarpet +0 -27
  28. data/vendor/bundle/bin/rspec +0 -27
  29. data/vendor/bundle/bin/sequel +0 -27
  30. data/vendor/bundle/bin/term_cdiff +0 -27
  31. data/vendor/bundle/bin/term_colortab +0 -27
  32. data/vendor/bundle/bin/term_decolor +0 -27
  33. data/vendor/bundle/bin/term_display +0 -27
  34. data/vendor/bundle/bin/term_mandel +0 -27
  35. data/vendor/bundle/bin/term_snow +0 -27
  36. data/vendor/bundle/bin/thor +0 -27
  37. data/vendor/bundle/cache/addressable-2.5.2.gem +0 -0
  38. data/vendor/bundle/cache/capybara-3.15.0.gem +0 -0
  39. data/vendor/bundle/cache/childprocess-0.9.0.gem +0 -0
  40. data/vendor/bundle/cache/coveralls-0.8.22.gem +0 -0
  41. data/vendor/bundle/cache/diff-lcs-1.3.gem +0 -0
  42. data/vendor/bundle/cache/docile-1.3.1.gem +0 -0
  43. data/vendor/bundle/cache/emot-0.0.4.gem +0 -0
  44. data/vendor/bundle/cache/faraday-0.15.4.gem +0 -0
  45. data/vendor/bundle/cache/fastimage-2.1.5.gem +0 -0
  46. data/vendor/bundle/cache/ffi-1.10.0.gem +0 -0
  47. data/vendor/bundle/cache/hikidoc-0.1.0.gem +0 -0
  48. data/vendor/bundle/cache/jasmine-2.99.0.gem +0 -0
  49. data/vendor/bundle/cache/jasmine-core-2.99.2.gem +0 -0
  50. data/vendor/bundle/cache/json-2.2.0.gem +0 -0
  51. data/vendor/bundle/cache/launchy-2.4.3.gem +0 -0
  52. data/vendor/bundle/cache/mail-2.7.1.gem +0 -0
  53. data/vendor/bundle/cache/mime-types-3.2.2.gem +0 -0
  54. data/vendor/bundle/cache/mime-types-data-3.2018.0812.gem +0 -0
  55. data/vendor/bundle/cache/mini_mime-1.0.1.gem +0 -0
  56. data/vendor/bundle/cache/mini_portile2-2.4.0.gem +0 -0
  57. data/vendor/bundle/cache/multipart-post-2.0.0.gem +0 -0
  58. data/vendor/bundle/cache/nokogiri-1.10.2.gem +0 -0
  59. data/vendor/bundle/cache/octokit-4.13.0.gem +0 -0
  60. data/vendor/bundle/cache/phantomjs-2.1.1.0.gem +0 -0
  61. data/vendor/bundle/cache/pit-0.0.7.gem +0 -0
  62. data/vendor/bundle/cache/power_assert-1.1.4.gem +0 -0
  63. data/vendor/bundle/cache/public_suffix-3.0.3.gem +0 -0
  64. data/vendor/bundle/cache/rack-2.0.6.gem +0 -0
  65. data/vendor/bundle/cache/rack-test-1.1.0.gem +0 -0
  66. data/vendor/bundle/cache/racksh-1.0.0.gem +0 -0
  67. data/vendor/bundle/cache/rake-12.3.2.gem +0 -0
  68. data/vendor/bundle/cache/redcarpet-3.4.0.gem +0 -0
  69. data/vendor/bundle/cache/regexp_parser-1.3.0.gem +0 -0
  70. data/vendor/bundle/cache/rspec-3.8.0.gem +0 -0
  71. data/vendor/bundle/cache/rspec-core-3.8.0.gem +0 -0
  72. data/vendor/bundle/cache/rspec-expectations-3.8.2.gem +0 -0
  73. data/vendor/bundle/cache/rspec-mocks-3.8.0.gem +0 -0
  74. data/vendor/bundle/cache/rspec-support-3.8.0.gem +0 -0
  75. data/vendor/bundle/cache/rubyzip-1.2.2.gem +0 -0
  76. data/vendor/bundle/cache/sawyer-0.8.1.gem +0 -0
  77. data/vendor/bundle/cache/selenium-webdriver-3.141.0.gem +0 -0
  78. data/vendor/bundle/cache/sequel-5.18.0.gem +0 -0
  79. data/vendor/bundle/cache/simplecov-0.16.1.gem +0 -0
  80. data/vendor/bundle/cache/simplecov-html-0.10.2.gem +0 -0
  81. data/vendor/bundle/cache/sqlite3-1.4.0.gem +0 -0
  82. data/vendor/bundle/cache/term-ansicolor-1.7.1.gem +0 -0
  83. data/vendor/bundle/cache/test-unit-3.3.1.gem +0 -0
  84. data/vendor/bundle/cache/thor-0.19.4.gem +0 -0
  85. data/vendor/bundle/cache/tins-1.20.2.gem +0 -0
  86. data/vendor/bundle/cache/xpath-3.2.0.gem +0 -0
  87. data/vendor/bundle/extensions/x86_64-linux/2.6.0-static/ffi-1.10.0/ffi_c.so +0 -0
  88. data/vendor/bundle/extensions/x86_64-linux/2.6.0-static/ffi-1.10.0/gem.build_complete +0 -0
  89. data/vendor/bundle/extensions/x86_64-linux/2.6.0-static/ffi-1.10.0/gem_make.out +0 -50
  90. data/vendor/bundle/extensions/x86_64-linux/2.6.0-static/ffi-1.10.0/mkmf.log +0 -479
  91. data/vendor/bundle/extensions/x86_64-linux/2.6.0-static/json-2.2.0/gem.build_complete +0 -0
  92. data/vendor/bundle/extensions/x86_64-linux/2.6.0-static/json-2.2.0/gem_make.out +0 -13
  93. data/vendor/bundle/extensions/x86_64-linux/2.6.0-static/json-2.2.0/json/ext/generator.so +0 -0
  94. data/vendor/bundle/extensions/x86_64-linux/2.6.0-static/json-2.2.0/json/ext/parser.so +0 -0
  95. data/vendor/bundle/extensions/x86_64-linux/2.6.0-static/json-2.2.0/mkmf.log +0 -68
  96. data/vendor/bundle/extensions/x86_64-linux/2.6.0-static/nokogiri-1.10.2/gem.build_complete +0 -0
  97. data/vendor/bundle/extensions/x86_64-linux/2.6.0-static/nokogiri-1.10.2/gem_make.out +0 -449
  98. data/vendor/bundle/extensions/x86_64-linux/2.6.0-static/nokogiri-1.10.2/mkmf.log +0 -568
  99. data/vendor/bundle/extensions/x86_64-linux/2.6.0-static/nokogiri-1.10.2/nokogiri/nokogiri.so +0 -0
  100. data/vendor/bundle/extensions/x86_64-linux/2.6.0-static/redcarpet-3.4.0/gem.build_complete +0 -0
  101. data/vendor/bundle/extensions/x86_64-linux/2.6.0-static/redcarpet-3.4.0/gem_make.out +0 -111
  102. data/vendor/bundle/extensions/x86_64-linux/2.6.0-static/redcarpet-3.4.0/redcarpet.so +0 -0
  103. data/vendor/bundle/extensions/x86_64-linux/2.6.0-static/sqlite3-1.4.0/gem.build_complete +0 -0
  104. data/vendor/bundle/extensions/x86_64-linux/2.6.0-static/sqlite3-1.4.0/gem_make.out +0 -80
  105. data/vendor/bundle/extensions/x86_64-linux/2.6.0-static/sqlite3-1.4.0/mkmf.log +0 -786
  106. data/vendor/bundle/extensions/x86_64-linux/2.6.0-static/sqlite3-1.4.0/sqlite3/sqlite3_native.so +0 -0
  107. data/vendor/bundle/gems/addressable-2.5.2/CHANGELOG.md +0 -216
  108. data/vendor/bundle/gems/addressable-2.5.2/Gemfile +0 -32
  109. data/vendor/bundle/gems/addressable-2.5.2/LICENSE.txt +0 -202
  110. data/vendor/bundle/gems/addressable-2.5.2/README.md +0 -121
  111. data/vendor/bundle/gems/addressable-2.5.2/Rakefile +0 -32
  112. data/vendor/bundle/gems/addressable-2.5.2/data/unicode.data +0 -0
  113. data/vendor/bundle/gems/addressable-2.5.2/lib/addressable.rb +0 -2
  114. data/vendor/bundle/gems/addressable-2.5.2/lib/addressable/idna.rb +0 -25
  115. data/vendor/bundle/gems/addressable-2.5.2/lib/addressable/idna/native.rb +0 -59
  116. data/vendor/bundle/gems/addressable-2.5.2/lib/addressable/idna/pure.rb +0 -677
  117. data/vendor/bundle/gems/addressable-2.5.2/lib/addressable/template.rb +0 -1065
  118. data/vendor/bundle/gems/addressable-2.5.2/lib/addressable/uri.rb +0 -2492
  119. data/vendor/bundle/gems/addressable-2.5.2/lib/addressable/version.rb +0 -30
  120. data/vendor/bundle/gems/addressable-2.5.2/spec/addressable/idna_spec.rb +0 -298
  121. data/vendor/bundle/gems/addressable-2.5.2/spec/addressable/net_http_compat_spec.rb +0 -28
  122. data/vendor/bundle/gems/addressable-2.5.2/spec/addressable/rack_mount_compat_spec.rb +0 -104
  123. data/vendor/bundle/gems/addressable-2.5.2/spec/addressable/security_spec.rb +0 -57
  124. data/vendor/bundle/gems/addressable-2.5.2/spec/addressable/template_spec.rb +0 -1419
  125. data/vendor/bundle/gems/addressable-2.5.2/spec/addressable/uri_spec.rb +0 -6468
  126. data/vendor/bundle/gems/addressable-2.5.2/spec/spec_helper.rb +0 -21
  127. data/vendor/bundle/gems/addressable-2.5.2/tasks/clobber.rake +0 -2
  128. data/vendor/bundle/gems/addressable-2.5.2/tasks/gem.rake +0 -91
  129. data/vendor/bundle/gems/addressable-2.5.2/tasks/git.rake +0 -45
  130. data/vendor/bundle/gems/addressable-2.5.2/tasks/metrics.rake +0 -22
  131. data/vendor/bundle/gems/addressable-2.5.2/tasks/rspec.rake +0 -21
  132. data/vendor/bundle/gems/addressable-2.5.2/tasks/yard.rake +0 -27
  133. data/vendor/bundle/gems/capybara-3.15.0/History.md +0 -1500
  134. data/vendor/bundle/gems/capybara-3.15.0/License.txt +0 -22
  135. data/vendor/bundle/gems/capybara-3.15.0/README.md +0 -1115
  136. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara.rb +0 -563
  137. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/config.rb +0 -91
  138. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/cucumber.rb +0 -27
  139. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/driver/base.rb +0 -170
  140. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/driver/node.rb +0 -127
  141. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/dsl.rb +0 -57
  142. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/helpers.rb +0 -106
  143. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/minitest.rb +0 -284
  144. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/minitest/spec.rb +0 -195
  145. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/node/actions.rb +0 -405
  146. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/node/base.rb +0 -143
  147. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/node/document.rb +0 -48
  148. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/node/document_matchers.rb +0 -67
  149. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/node/element.rb +0 -507
  150. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/node/finders.rb +0 -325
  151. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/node/matchers.rb +0 -779
  152. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/node/simple.rb +0 -203
  153. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/queries/ancestor_query.rb +0 -29
  154. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/queries/base_query.rb +0 -105
  155. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/queries/current_path_query.rb +0 -51
  156. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/queries/match_query.rb +0 -26
  157. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/queries/selector_query.rb +0 -451
  158. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/queries/sibling_query.rb +0 -25
  159. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/queries/style_query.rb +0 -45
  160. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/queries/text_query.rb +0 -104
  161. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/queries/title_query.rb +0 -39
  162. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/rack_test/browser.rb +0 -135
  163. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/rack_test/css_handlers.rb +0 -13
  164. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/rack_test/driver.rb +0 -109
  165. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/rack_test/errors.rb +0 -6
  166. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/rack_test/form.rb +0 -127
  167. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/rack_test/node.rb +0 -289
  168. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/rails.rb +0 -16
  169. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/result.rb +0 -162
  170. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/rspec.rb +0 -29
  171. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/rspec/features.rb +0 -23
  172. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/rspec/matcher_proxies.rb +0 -80
  173. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/rspec/matchers.rb +0 -164
  174. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/rspec/matchers/base.rb +0 -98
  175. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/rspec/matchers/become_closed.rb +0 -33
  176. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/rspec/matchers/compound.rb +0 -88
  177. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/rspec/matchers/have_current_path.rb +0 -29
  178. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/rspec/matchers/have_selector.rb +0 -69
  179. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/rspec/matchers/have_text.rb +0 -33
  180. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/rspec/matchers/have_title.rb +0 -29
  181. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/rspec/matchers/match_selector.rb +0 -27
  182. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/rspec/matchers/match_style.rb +0 -38
  183. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selector.rb +0 -619
  184. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selector/builders/css_builder.rb +0 -80
  185. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selector/builders/xpath_builder.rb +0 -69
  186. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selector/css.rb +0 -100
  187. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selector/filter.rb +0 -5
  188. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selector/filter_set.rb +0 -120
  189. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selector/filters/base.rb +0 -68
  190. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selector/filters/expression_filter.rb +0 -22
  191. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selector/filters/locator_filter.rb +0 -19
  192. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selector/filters/node_filter.rb +0 -31
  193. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selector/regexp_disassembler.rb +0 -207
  194. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selector/selector.rb +0 -556
  195. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selector/xpath_extensions.rb +0 -9
  196. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selenium/driver.rb +0 -421
  197. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selenium/driver_specializations/chrome_driver.rb +0 -61
  198. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selenium/driver_specializations/firefox_driver.rb +0 -50
  199. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selenium/driver_specializations/internet_explorer_driver.rb +0 -13
  200. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selenium/driver_specializations/safari_driver.rb +0 -15
  201. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selenium/extensions/find.rb +0 -88
  202. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selenium/extensions/html5_drag.rb +0 -110
  203. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selenium/extensions/scroll.rb +0 -78
  204. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selenium/node.rb +0 -440
  205. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selenium/nodes/chrome_node.rb +0 -36
  206. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selenium/nodes/firefox_node.rb +0 -153
  207. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selenium/nodes/safari_node.rb +0 -145
  208. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/selenium/patches/pause_duration_fix.rb +0 -9
  209. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/server.rb +0 -110
  210. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/server/animation_disabler.rb +0 -58
  211. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/server/checker.rb +0 -40
  212. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/server/middleware.rb +0 -59
  213. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/session.rb +0 -920
  214. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/session/config.rb +0 -124
  215. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/session/matchers.rb +0 -87
  216. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/fixtures/another_test_file.txt +0 -1
  217. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/fixtures/capybara.jpg +0 -3
  218. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/fixtures/no_extension +0 -1
  219. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/fixtures/test_file.txt +0 -1
  220. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/public/jquery-ui.js +0 -13
  221. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/public/jquery.js +0 -5
  222. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/public/test.js +0 -186
  223. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/accept_alert_spec.rb +0 -81
  224. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/accept_confirm_spec.rb +0 -32
  225. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/accept_prompt_spec.rb +0 -78
  226. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/all_spec.rb +0 -200
  227. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/ancestor_spec.rb +0 -83
  228. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/assert_all_of_selectors_spec.rb +0 -140
  229. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/assert_current_path_spec.rb +0 -72
  230. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/assert_selector_spec.rb +0 -143
  231. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/assert_style_spec.rb +0 -26
  232. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/assert_text_spec.rb +0 -254
  233. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/assert_title_spec.rb +0 -93
  234. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/attach_file_spec.rb +0 -208
  235. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/body_spec.rb +0 -23
  236. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/check_spec.rb +0 -229
  237. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/choose_spec.rb +0 -115
  238. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/click_button_spec.rb +0 -474
  239. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/click_link_or_button_spec.rb +0 -129
  240. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/click_link_spec.rb +0 -218
  241. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/current_scope_spec.rb +0 -31
  242. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/current_url_spec.rb +0 -115
  243. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/dismiss_confirm_spec.rb +0 -36
  244. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/dismiss_prompt_spec.rb +0 -21
  245. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/element/assert_match_selector_spec.rb +0 -38
  246. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/element/match_css_spec.rb +0 -31
  247. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/element/match_xpath_spec.rb +0 -25
  248. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/element/matches_selector_spec.rb +0 -120
  249. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/evaluate_async_script_spec.rb +0 -23
  250. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/evaluate_script_spec.rb +0 -37
  251. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/execute_script_spec.rb +0 -28
  252. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/fill_in_spec.rb +0 -251
  253. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/find_button_spec.rb +0 -74
  254. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/find_by_id_spec.rb +0 -33
  255. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/find_field_spec.rb +0 -113
  256. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/find_link_spec.rb +0 -70
  257. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/find_spec.rb +0 -477
  258. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/first_spec.rb +0 -156
  259. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/frame/frame_title_spec.rb +0 -23
  260. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/frame/frame_url_spec.rb +0 -23
  261. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/frame/switch_to_frame_spec.rb +0 -103
  262. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/frame/within_frame_spec.rb +0 -101
  263. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/go_back_spec.rb +0 -12
  264. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/go_forward_spec.rb +0 -14
  265. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/has_all_selectors_spec.rb +0 -69
  266. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/has_any_selectors_spec.rb +0 -25
  267. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/has_button_spec.rb +0 -69
  268. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/has_css_spec.rb +0 -338
  269. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/has_current_path_spec.rb +0 -136
  270. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/has_field_spec.rb +0 -331
  271. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/has_link_spec.rb +0 -39
  272. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/has_none_selectors_spec.rb +0 -78
  273. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/has_select_spec.rb +0 -282
  274. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/has_selector_spec.rb +0 -202
  275. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/has_table_spec.rb +0 -152
  276. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/has_text_spec.rb +0 -347
  277. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/has_title_spec.rb +0 -71
  278. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/has_xpath_spec.rb +0 -149
  279. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/headers_spec.rb +0 -8
  280. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/html_spec.rb +0 -47
  281. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/matches_style_spec.rb +0 -35
  282. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/node_spec.rb +0 -734
  283. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/node_wrapper_spec.rb +0 -39
  284. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/refresh_spec.rb +0 -33
  285. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/reset_session_spec.rb +0 -148
  286. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/response_code_spec.rb +0 -8
  287. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/save_and_open_page_spec.rb +0 -21
  288. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/save_and_open_screenshot_spec.rb +0 -43
  289. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/save_page_spec.rb +0 -110
  290. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/save_screenshot_spec.rb +0 -55
  291. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/screenshot_spec.rb +0 -18
  292. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/scroll_spec.rb +0 -117
  293. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/select_spec.rb +0 -234
  294. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/selectors_spec.rb +0 -77
  295. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/sibling_spec.rb +0 -52
  296. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/source_spec.rb +0 -0
  297. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/text_spec.rb +0 -74
  298. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/title_spec.rb +0 -29
  299. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/uncheck_spec.rb +0 -100
  300. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/unselect_spec.rb +0 -116
  301. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/visit_spec.rb +0 -204
  302. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/window/become_closed_spec.rb +0 -89
  303. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/window/current_window_spec.rb +0 -28
  304. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/window/open_new_window_spec.rb +0 -31
  305. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/window/switch_to_window_spec.rb +0 -132
  306. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/window/window_opened_by_spec.rb +0 -99
  307. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/window/window_spec.rb +0 -202
  308. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/window/windows_spec.rb +0 -34
  309. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/window/within_window_spec.rb +0 -157
  310. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/session/within_spec.rb +0 -199
  311. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/spec_helper.rb +0 -130
  312. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/test_app.rb +0 -217
  313. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/buttons.erb +0 -5
  314. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/fieldsets.erb +0 -30
  315. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/form.erb +0 -665
  316. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/frame_child.erb +0 -17
  317. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/frame_one.erb +0 -9
  318. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/frame_parent.erb +0 -9
  319. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/frame_two.erb +0 -9
  320. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/header_links.erb +0 -8
  321. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/host_links.erb +0 -13
  322. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/initial_alert.erb +0 -10
  323. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/obscured.erb +0 -47
  324. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/path.erb +0 -13
  325. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/popup_one.erb +0 -9
  326. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/popup_two.erb +0 -9
  327. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/postback.erb +0 -14
  328. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/scroll.erb +0 -20
  329. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/tables.erb +0 -130
  330. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/with_animation.erb +0 -46
  331. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/with_base_tag.erb +0 -11
  332. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/with_count.erb +0 -8
  333. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/with_fixed_header_footer.erb +0 -17
  334. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/with_hover.erb +0 -24
  335. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/with_hover1.erb +0 -10
  336. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/with_html.erb +0 -182
  337. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/with_html5_svg.erb +0 -20
  338. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/with_html_entities.erb +0 -2
  339. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/with_js.erb +0 -160
  340. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/with_namespace.erb +0 -20
  341. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/with_scope.erb +0 -42
  342. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/with_scope_other.erb +0 -6
  343. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/with_simple_html.erb +0 -2
  344. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/with_slow_unload.erb +0 -17
  345. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/with_title.erb +0 -5
  346. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/with_unload_alert.erb +0 -14
  347. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/with_windows.erb +0 -54
  348. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/spec/views/within_frames.erb +0 -15
  349. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/version.rb +0 -5
  350. data/vendor/bundle/gems/capybara-3.15.0/lib/capybara/window.rb +0 -146
  351. data/vendor/bundle/gems/capybara-3.15.0/spec/basic_node_spec.rb +0 -154
  352. data/vendor/bundle/gems/capybara-3.15.0/spec/capybara_spec.rb +0 -112
  353. data/vendor/bundle/gems/capybara-3.15.0/spec/css_builder_spec.rb +0 -101
  354. data/vendor/bundle/gems/capybara-3.15.0/spec/css_splitter_spec.rb +0 -38
  355. data/vendor/bundle/gems/capybara-3.15.0/spec/dsl_spec.rb +0 -276
  356. data/vendor/bundle/gems/capybara-3.15.0/spec/filter_set_spec.rb +0 -46
  357. data/vendor/bundle/gems/capybara-3.15.0/spec/fixtures/capybara.csv +0 -1
  358. data/vendor/bundle/gems/capybara-3.15.0/spec/fixtures/certificate.pem +0 -25
  359. data/vendor/bundle/gems/capybara-3.15.0/spec/fixtures/key.pem +0 -27
  360. data/vendor/bundle/gems/capybara-3.15.0/spec/fixtures/selenium_driver_rspec_failure.rb +0 -13
  361. data/vendor/bundle/gems/capybara-3.15.0/spec/fixtures/selenium_driver_rspec_success.rb +0 -13
  362. data/vendor/bundle/gems/capybara-3.15.0/spec/minitest_spec.rb +0 -153
  363. data/vendor/bundle/gems/capybara-3.15.0/spec/minitest_spec_spec.rb +0 -151
  364. data/vendor/bundle/gems/capybara-3.15.0/spec/per_session_config_spec.rb +0 -68
  365. data/vendor/bundle/gems/capybara-3.15.0/spec/rack_test_spec.rb +0 -256
  366. data/vendor/bundle/gems/capybara-3.15.0/spec/regexp_dissassembler_spec.rb +0 -236
  367. data/vendor/bundle/gems/capybara-3.15.0/spec/result_spec.rb +0 -200
  368. data/vendor/bundle/gems/capybara-3.15.0/spec/rspec/features_spec.rb +0 -98
  369. data/vendor/bundle/gems/capybara-3.15.0/spec/rspec/scenarios_spec.rb +0 -19
  370. data/vendor/bundle/gems/capybara-3.15.0/spec/rspec/shared_spec_matchers.rb +0 -943
  371. data/vendor/bundle/gems/capybara-3.15.0/spec/rspec/views_spec.rb +0 -14
  372. data/vendor/bundle/gems/capybara-3.15.0/spec/rspec_matchers_spec.rb +0 -62
  373. data/vendor/bundle/gems/capybara-3.15.0/spec/rspec_spec.rb +0 -145
  374. data/vendor/bundle/gems/capybara-3.15.0/spec/selector_spec.rb +0 -503
  375. data/vendor/bundle/gems/capybara-3.15.0/spec/selenium_spec_chrome.rb +0 -107
  376. data/vendor/bundle/gems/capybara-3.15.0/spec/selenium_spec_chrome_remote.rb +0 -81
  377. data/vendor/bundle/gems/capybara-3.15.0/spec/selenium_spec_edge.rb +0 -32
  378. data/vendor/bundle/gems/capybara-3.15.0/spec/selenium_spec_firefox.rb +0 -213
  379. data/vendor/bundle/gems/capybara-3.15.0/spec/selenium_spec_firefox_remote.rb +0 -89
  380. data/vendor/bundle/gems/capybara-3.15.0/spec/selenium_spec_ie.rb +0 -142
  381. data/vendor/bundle/gems/capybara-3.15.0/spec/selenium_spec_safari.rb +0 -148
  382. data/vendor/bundle/gems/capybara-3.15.0/spec/server_spec.rb +0 -239
  383. data/vendor/bundle/gems/capybara-3.15.0/spec/session_spec.rb +0 -84
  384. data/vendor/bundle/gems/capybara-3.15.0/spec/shared_selenium_session.rb +0 -496
  385. data/vendor/bundle/gems/capybara-3.15.0/spec/spec_helper.rb +0 -62
  386. data/vendor/bundle/gems/capybara-3.15.0/spec/xpath_builder_spec.rb +0 -93
  387. data/vendor/bundle/gems/childprocess-0.9.0/CHANGELOG.md +0 -49
  388. data/vendor/bundle/gems/childprocess-0.9.0/Gemfile +0 -15
  389. data/vendor/bundle/gems/childprocess-0.9.0/LICENSE +0 -20
  390. data/vendor/bundle/gems/childprocess-0.9.0/README.md +0 -196
  391. data/vendor/bundle/gems/childprocess-0.9.0/Rakefile +0 -61
  392. data/vendor/bundle/gems/childprocess-0.9.0/appveyor.yml +0 -60
  393. data/vendor/bundle/gems/childprocess-0.9.0/childprocess.gemspec +0 -30
  394. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess.rb +0 -205
  395. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/abstract_io.rb +0 -36
  396. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/abstract_process.rb +0 -192
  397. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/errors.rb +0 -26
  398. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/jruby.rb +0 -56
  399. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/jruby/io.rb +0 -16
  400. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/jruby/process.rb +0 -159
  401. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/jruby/pump.rb +0 -53
  402. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/tools/generator.rb +0 -146
  403. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/unix.rb +0 -9
  404. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/unix/fork_exec_process.rb +0 -70
  405. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/unix/io.rb +0 -21
  406. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/unix/lib.rb +0 -186
  407. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/unix/platform/i386-linux.rb +0 -12
  408. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/unix/platform/i386-solaris.rb +0 -11
  409. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/unix/platform/x86_64-linux.rb +0 -12
  410. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/unix/platform/x86_64-macosx.rb +0 -11
  411. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/unix/posix_spawn_process.rb +0 -134
  412. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/unix/process.rb +0 -89
  413. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/version.rb +0 -3
  414. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/windows.rb +0 -33
  415. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/windows/handle.rb +0 -91
  416. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/windows/io.rb +0 -25
  417. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/windows/lib.rb +0 -416
  418. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/windows/process.rb +0 -130
  419. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/windows/process_builder.rb +0 -175
  420. data/vendor/bundle/gems/childprocess-0.9.0/lib/childprocess/windows/structs.rb +0 -149
  421. data/vendor/bundle/gems/childprocess-0.9.0/spec/abstract_io_spec.rb +0 -12
  422. data/vendor/bundle/gems/childprocess-0.9.0/spec/childprocess_spec.rb +0 -422
  423. data/vendor/bundle/gems/childprocess-0.9.0/spec/io_spec.rb +0 -228
  424. data/vendor/bundle/gems/childprocess-0.9.0/spec/jruby_spec.rb +0 -24
  425. data/vendor/bundle/gems/childprocess-0.9.0/spec/pid_behavior.rb +0 -12
  426. data/vendor/bundle/gems/childprocess-0.9.0/spec/platform_detection_spec.rb +0 -86
  427. data/vendor/bundle/gems/childprocess-0.9.0/spec/spec_helper.rb +0 -261
  428. data/vendor/bundle/gems/childprocess-0.9.0/spec/unix_spec.rb +0 -57
  429. data/vendor/bundle/gems/childprocess-0.9.0/spec/windows_spec.rb +0 -23
  430. data/vendor/bundle/gems/coveralls-0.8.22/CHANGELOG.md +0 -21
  431. data/vendor/bundle/gems/coveralls-0.8.22/Gemfile +0 -41
  432. data/vendor/bundle/gems/coveralls-0.8.22/LICENSE +0 -22
  433. data/vendor/bundle/gems/coveralls-0.8.22/README.md +0 -3
  434. data/vendor/bundle/gems/coveralls-0.8.22/Rakefile +0 -14
  435. data/vendor/bundle/gems/coveralls-0.8.22/bin/coveralls +0 -9
  436. data/vendor/bundle/gems/coveralls-0.8.22/coveralls-ruby.gemspec +0 -29
  437. data/vendor/bundle/gems/coveralls-0.8.22/lib/coveralls.rb +0 -101
  438. data/vendor/bundle/gems/coveralls-0.8.22/lib/coveralls/api.rb +0 -128
  439. data/vendor/bundle/gems/coveralls-0.8.22/lib/coveralls/command.rb +0 -69
  440. data/vendor/bundle/gems/coveralls-0.8.22/lib/coveralls/configuration.rb +0 -233
  441. data/vendor/bundle/gems/coveralls-0.8.22/lib/coveralls/output.rb +0 -114
  442. data/vendor/bundle/gems/coveralls-0.8.22/lib/coveralls/rake/task.rb +0 -19
  443. data/vendor/bundle/gems/coveralls-0.8.22/lib/coveralls/simplecov.rb +0 -101
  444. data/vendor/bundle/gems/coveralls-0.8.22/lib/coveralls/version.rb +0 -3
  445. data/vendor/bundle/gems/coveralls-0.8.22/spec/coveralls/configuration_spec.rb +0 -368
  446. data/vendor/bundle/gems/coveralls-0.8.22/spec/coveralls/coveralls_spec.rb +0 -106
  447. data/vendor/bundle/gems/coveralls-0.8.22/spec/coveralls/fixtures/app/controllers/sample.rb +0 -12
  448. data/vendor/bundle/gems/coveralls-0.8.22/spec/coveralls/fixtures/app/models/airplane.rb +0 -10
  449. data/vendor/bundle/gems/coveralls-0.8.22/spec/coveralls/fixtures/app/models/dog.rb +0 -10
  450. data/vendor/bundle/gems/coveralls-0.8.22/spec/coveralls/fixtures/app/models/house.rb +0 -10
  451. data/vendor/bundle/gems/coveralls-0.8.22/spec/coveralls/fixtures/app/models/robot.rb +0 -10
  452. data/vendor/bundle/gems/coveralls-0.8.22/spec/coveralls/fixtures/app/models/user.rb +0 -10
  453. data/vendor/bundle/gems/coveralls-0.8.22/spec/coveralls/fixtures/app/vendor/vendored_gem.rb +0 -1
  454. data/vendor/bundle/gems/coveralls-0.8.22/spec/coveralls/fixtures/sample.rb +0 -12
  455. data/vendor/bundle/gems/coveralls-0.8.22/spec/coveralls/output_spec.rb +0 -92
  456. data/vendor/bundle/gems/coveralls-0.8.22/spec/coveralls/simplecov_spec.rb +0 -82
  457. data/vendor/bundle/gems/coveralls-0.8.22/spec/spec_helper.rb +0 -82
  458. data/vendor/bundle/gems/diff-lcs-1.3/Code-of-Conduct.md +0 -74
  459. data/vendor/bundle/gems/diff-lcs-1.3/Contributing.md +0 -83
  460. data/vendor/bundle/gems/diff-lcs-1.3/History.md +0 -220
  461. data/vendor/bundle/gems/diff-lcs-1.3/License.md +0 -39
  462. data/vendor/bundle/gems/diff-lcs-1.3/Manifest.txt +0 -37
  463. data/vendor/bundle/gems/diff-lcs-1.3/README.rdoc +0 -84
  464. data/vendor/bundle/gems/diff-lcs-1.3/Rakefile +0 -57
  465. data/vendor/bundle/gems/diff-lcs-1.3/autotest/discover.rb +0 -1
  466. data/vendor/bundle/gems/diff-lcs-1.3/bin/htmldiff +0 -32
  467. data/vendor/bundle/gems/diff-lcs-1.3/bin/ldiff +0 -6
  468. data/vendor/bundle/gems/diff-lcs-1.3/docs/COPYING.txt +0 -339
  469. data/vendor/bundle/gems/diff-lcs-1.3/docs/artistic.txt +0 -127
  470. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff-lcs.rb +0 -3
  471. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs.rb +0 -725
  472. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/array.rb +0 -7
  473. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/block.rb +0 -37
  474. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/callbacks.rb +0 -322
  475. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/change.rb +0 -181
  476. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/htmldiff.rb +0 -149
  477. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/hunk.rb +0 -276
  478. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/internals.rb +0 -307
  479. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/ldiff.rb +0 -167
  480. data/vendor/bundle/gems/diff-lcs-1.3/lib/diff/lcs/string.rb +0 -5
  481. data/vendor/bundle/gems/diff-lcs-1.3/spec/change_spec.rb +0 -65
  482. data/vendor/bundle/gems/diff-lcs-1.3/spec/diff_spec.rb +0 -47
  483. data/vendor/bundle/gems/diff-lcs-1.3/spec/fixtures/ds1.csv +0 -50
  484. data/vendor/bundle/gems/diff-lcs-1.3/spec/fixtures/ds2.csv +0 -51
  485. data/vendor/bundle/gems/diff-lcs-1.3/spec/hunk_spec.rb +0 -72
  486. data/vendor/bundle/gems/diff-lcs-1.3/spec/issues_spec.rb +0 -49
  487. data/vendor/bundle/gems/diff-lcs-1.3/spec/lcs_spec.rb +0 -56
  488. data/vendor/bundle/gems/diff-lcs-1.3/spec/ldiff_spec.rb +0 -47
  489. data/vendor/bundle/gems/diff-lcs-1.3/spec/patch_spec.rb +0 -422
  490. data/vendor/bundle/gems/diff-lcs-1.3/spec/sdiff_spec.rb +0 -214
  491. data/vendor/bundle/gems/diff-lcs-1.3/spec/spec_helper.rb +0 -321
  492. data/vendor/bundle/gems/diff-lcs-1.3/spec/traverse_balanced_spec.rb +0 -310
  493. data/vendor/bundle/gems/diff-lcs-1.3/spec/traverse_sequences_spec.rb +0 -139
  494. data/vendor/bundle/gems/docile-1.3.1/Gemfile +0 -12
  495. data/vendor/bundle/gems/docile-1.3.1/HISTORY.md +0 -84
  496. data/vendor/bundle/gems/docile-1.3.1/LICENSE +0 -21
  497. data/vendor/bundle/gems/docile-1.3.1/README.md +0 -381
  498. data/vendor/bundle/gems/docile-1.3.1/Rakefile +0 -28
  499. data/vendor/bundle/gems/docile-1.3.1/docile.gemspec +0 -54
  500. data/vendor/bundle/gems/docile-1.3.1/lib/docile.rb +0 -123
  501. data/vendor/bundle/gems/docile-1.3.1/lib/docile/chaining_fallback_context_proxy.rb +0 -20
  502. data/vendor/bundle/gems/docile-1.3.1/lib/docile/execution.rb +0 -41
  503. data/vendor/bundle/gems/docile-1.3.1/lib/docile/fallback_context_proxy.rb +0 -88
  504. data/vendor/bundle/gems/docile-1.3.1/lib/docile/version.rb +0 -4
  505. data/vendor/bundle/gems/docile-1.3.1/on_what.rb +0 -26
  506. data/vendor/bundle/gems/emot-0.0.4/Gemfile +0 -4
  507. data/vendor/bundle/gems/emot-0.0.4/LICENSE.txt +0 -22
  508. data/vendor/bundle/gems/emot-0.0.4/README.md +0 -87
  509. data/vendor/bundle/gems/emot-0.0.4/Rakefile +0 -7
  510. data/vendor/bundle/gems/emot-0.0.4/bin/emot +0 -5
  511. data/vendor/bundle/gems/emot-0.0.4/emot.gemspec +0 -26
  512. data/vendor/bundle/gems/emot-0.0.4/lib/emot.rb +0 -34
  513. data/vendor/bundle/gems/emot-0.0.4/lib/emot/cli.rb +0 -62
  514. data/vendor/bundle/gems/emot-0.0.4/lib/emot/map.rb +0 -894
  515. data/vendor/bundle/gems/emot-0.0.4/lib/emot/symbol_ext.rb +0 -11
  516. data/vendor/bundle/gems/emot-0.0.4/lib/emot/version.rb +0 -3
  517. data/vendor/bundle/gems/emot-0.0.4/spec/cli_spec.rb +0 -56
  518. data/vendor/bundle/gems/emot-0.0.4/spec/emot_spec.rb +0 -50
  519. data/vendor/bundle/gems/emot-0.0.4/spec/spec_helper.rb +0 -2
  520. data/vendor/bundle/gems/faraday-0.15.4/LICENSE.md +0 -20
  521. data/vendor/bundle/gems/faraday-0.15.4/README.md +0 -381
  522. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday.rb +0 -248
  523. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/adapter.rb +0 -55
  524. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/adapter/em_http.rb +0 -243
  525. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/adapter/em_http_ssl_patch.rb +0 -56
  526. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/adapter/em_synchrony.rb +0 -106
  527. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/adapter/em_synchrony/parallel_manager.rb +0 -66
  528. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/adapter/excon.rb +0 -82
  529. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/adapter/httpclient.rb +0 -128
  530. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/adapter/net_http.rb +0 -152
  531. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/adapter/net_http_persistent.rb +0 -68
  532. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/adapter/patron.rb +0 -95
  533. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/adapter/rack.rb +0 -58
  534. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/adapter/test.rb +0 -213
  535. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/adapter/typhoeus.rb +0 -12
  536. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/autoload.rb +0 -84
  537. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/connection.rb +0 -484
  538. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/error.rb +0 -66
  539. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/middleware.rb +0 -37
  540. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/options.rb +0 -373
  541. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/parameters.rb +0 -198
  542. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/rack_builder.rb +0 -237
  543. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/request.rb +0 -114
  544. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/request/authorization.rb +0 -41
  545. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/request/basic_authentication.rb +0 -13
  546. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/request/instrumentation.rb +0 -36
  547. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/request/multipart.rb +0 -68
  548. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/request/retry.rb +0 -210
  549. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/request/token_authentication.rb +0 -15
  550. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/request/url_encoded.rb +0 -36
  551. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/response.rb +0 -97
  552. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/response/logger.rb +0 -80
  553. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/response/raise_error.rb +0 -21
  554. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/upload_io.rb +0 -67
  555. data/vendor/bundle/gems/faraday-0.15.4/lib/faraday/utils.rb +0 -326
  556. data/vendor/bundle/gems/fastimage-2.1.5/MIT-LICENSE +0 -20
  557. data/vendor/bundle/gems/fastimage-2.1.5/README.textile +0 -162
  558. data/vendor/bundle/gems/fastimage-2.1.5/lib/fastimage.rb +0 -787
  559. data/vendor/bundle/gems/ffi-1.10.0/CHANGELOG.md +0 -98
  560. data/vendor/bundle/gems/ffi-1.10.0/COPYING +0 -49
  561. data/vendor/bundle/gems/ffi-1.10.0/Gemfile +0 -15
  562. data/vendor/bundle/gems/ffi-1.10.0/LICENSE +0 -24
  563. data/vendor/bundle/gems/ffi-1.10.0/LICENSE.SPECS +0 -22
  564. data/vendor/bundle/gems/ffi-1.10.0/README.md +0 -112
  565. data/vendor/bundle/gems/ffi-1.10.0/Rakefile +0 -268
  566. data/vendor/bundle/gems/ffi-1.10.0/appveyor.yml +0 -22
  567. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/AbstractMemory.c +0 -1109
  568. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/AbstractMemory.h +0 -175
  569. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/AbstractMemory.o +0 -0
  570. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/ArrayType.c +0 -162
  571. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/ArrayType.h +0 -59
  572. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/ArrayType.o +0 -0
  573. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Buffer.c +0 -365
  574. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Buffer.o +0 -0
  575. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Call.c +0 -520
  576. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Call.h +0 -110
  577. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Call.o +0 -0
  578. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/ClosurePool.c +0 -283
  579. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/ClosurePool.h +0 -57
  580. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/ClosurePool.o +0 -0
  581. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/DataConverter.c +0 -91
  582. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/DataConverter.o +0 -0
  583. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/DynamicLibrary.c +0 -339
  584. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/DynamicLibrary.h +0 -98
  585. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/DynamicLibrary.o +0 -0
  586. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Function.c +0 -1001
  587. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Function.h +0 -87
  588. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Function.o +0 -0
  589. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/FunctionInfo.c +0 -271
  590. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/FunctionInfo.o +0 -0
  591. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/LastError.c +0 -229
  592. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/LastError.h +0 -47
  593. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/LastError.o +0 -0
  594. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/LongDouble.c +0 -63
  595. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/LongDouble.h +0 -51
  596. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/LongDouble.o +0 -0
  597. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Makefile +0 -265
  598. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/MappedType.c +0 -168
  599. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/MappedType.h +0 -59
  600. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/MappedType.o +0 -0
  601. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/MemoryPointer.c +0 -197
  602. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/MemoryPointer.h +0 -53
  603. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/MemoryPointer.o +0 -0
  604. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/MethodHandle.c +0 -358
  605. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/MethodHandle.h +0 -55
  606. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/MethodHandle.o +0 -0
  607. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Platform.c +0 -129
  608. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Platform.h +0 -45
  609. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Platform.o +0 -0
  610. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Pointer.c +0 -508
  611. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Pointer.h +0 -63
  612. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Pointer.o +0 -0
  613. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Struct.c +0 -829
  614. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Struct.h +0 -106
  615. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Struct.o +0 -0
  616. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/StructByReference.c +0 -190
  617. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/StructByReference.h +0 -50
  618. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/StructByReference.o +0 -0
  619. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/StructByValue.c +0 -150
  620. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/StructByValue.h +0 -55
  621. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/StructByValue.o +0 -0
  622. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/StructLayout.c +0 -698
  623. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/StructLayout.o +0 -0
  624. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Thread.c +0 -353
  625. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Thread.h +0 -95
  626. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Thread.o +0 -0
  627. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Type.c +0 -397
  628. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Type.h +0 -62
  629. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Type.o +0 -0
  630. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Types.c +0 -139
  631. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Types.h +0 -89
  632. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Types.o +0 -0
  633. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Variadic.c +0 -304
  634. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/Variadic.o +0 -0
  635. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/compat.h +0 -78
  636. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/extconf.h +0 -12
  637. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/extconf.rb +0 -72
  638. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/ffi.c +0 -98
  639. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/ffi.o +0 -0
  640. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/ffi_c.so +0 -0
  641. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi.bsd.mk +0 -40
  642. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi.darwin.mk +0 -105
  643. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi.gnu.mk +0 -32
  644. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi.mk +0 -18
  645. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi.vc.mk +0 -26
  646. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi.vc64.mk +0 -26
  647. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/ChangeLog.libffi +0 -584
  648. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/ChangeLog.libffi-3.1 +0 -6000
  649. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/ChangeLog.libgcj +0 -40
  650. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/ChangeLog.v1 +0 -764
  651. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/LICENSE +0 -21
  652. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/LICENSE-BUILDTOOLS +0 -352
  653. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/Makefile.am +0 -166
  654. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/Makefile.in +0 -1809
  655. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/README.md +0 -461
  656. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/acinclude.m4 +0 -479
  657. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/autogen.sh +0 -2
  658. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/config.guess +0 -1466
  659. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/config.sub +0 -1836
  660. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/configure +0 -21978
  661. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/configure.ac +0 -390
  662. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/configure.host +0 -289
  663. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/doc/Makefile.am +0 -3
  664. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/doc/Makefile.in +0 -811
  665. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/doc/libffi.texi +0 -985
  666. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/doc/version.texi +0 -4
  667. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/fficonfig.h.in +0 -210
  668. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/generate-darwin-source-and-headers.py +0 -203
  669. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/include/Makefile.am +0 -9
  670. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/include/Makefile.in +0 -604
  671. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/include/ffi.h.in +0 -511
  672. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/include/ffi_cfi.h +0 -55
  673. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/include/ffi_common.h +0 -149
  674. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/install-sh +0 -508
  675. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/libffi.map.in +0 -80
  676. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/libffi.pc.in +0 -11
  677. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/libffi.xcodeproj/project.pbxproj +0 -1043
  678. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/libtool-ldflags +0 -106
  679. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/libtool-version +0 -29
  680. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/ltmain.sh +0 -11156
  681. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/m4/asmcfi.m4 +0 -13
  682. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/m4/ax_append_flag.m4 +0 -71
  683. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/m4/ax_cc_maxopt.m4 +0 -194
  684. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/m4/ax_cflags_warn_all.m4 +0 -122
  685. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/m4/ax_check_compile_flag.m4 +0 -74
  686. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/m4/ax_compiler_vendor.m4 +0 -87
  687. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/m4/ax_configure_args.m4 +0 -70
  688. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/m4/ax_enable_builddir.m4 +0 -302
  689. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/m4/ax_gcc_archflag.m4 +0 -263
  690. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/m4/ax_gcc_x86_cpuid.m4 +0 -89
  691. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/m4/ax_require_defined.m4 +0 -37
  692. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/man/Makefile.am +0 -8
  693. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/man/Makefile.in +0 -558
  694. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/man/ffi.3 +0 -41
  695. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/man/ffi_call.3 +0 -103
  696. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/man/ffi_prep_cif.3 +0 -68
  697. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/man/ffi_prep_cif_var.3 +0 -73
  698. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/missing +0 -215
  699. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/msvcc.sh +0 -328
  700. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/aarch64/ffi.c +0 -941
  701. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/aarch64/ffitarget.h +0 -81
  702. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/aarch64/internal.h +0 -67
  703. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/aarch64/sysv.S +0 -438
  704. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/alpha/ffi.c +0 -521
  705. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/alpha/ffitarget.h +0 -57
  706. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/alpha/internal.h +0 -23
  707. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/alpha/osf.S +0 -282
  708. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/arc/arcompact.S +0 -135
  709. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/arc/ffi.c +0 -266
  710. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/arc/ffitarget.h +0 -53
  711. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/arm/ffi.c +0 -819
  712. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/arm/ffitarget.h +0 -82
  713. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/arm/internal.h +0 -7
  714. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/arm/sysv.S +0 -383
  715. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/avr32/ffi.c +0 -423
  716. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/avr32/ffitarget.h +0 -55
  717. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/avr32/sysv.S +0 -208
  718. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/bfin/ffi.c +0 -196
  719. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/bfin/ffitarget.h +0 -43
  720. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/bfin/sysv.S +0 -179
  721. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/closures.c +0 -966
  722. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/cris/ffi.c +0 -386
  723. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/cris/ffitarget.h +0 -56
  724. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/cris/sysv.S +0 -215
  725. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/debug.c +0 -64
  726. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/dlmalloc.c +0 -5166
  727. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/frv/eabi.S +0 -128
  728. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/frv/ffi.c +0 -292
  729. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/frv/ffitarget.h +0 -62
  730. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/ia64/ffi.c +0 -604
  731. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/ia64/ffitarget.h +0 -56
  732. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/ia64/ia64_flags.h +0 -40
  733. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/ia64/unix.S +0 -567
  734. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/java_raw_api.c +0 -374
  735. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/m32r/ffi.c +0 -232
  736. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/m32r/ffitarget.h +0 -53
  737. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/m32r/sysv.S +0 -121
  738. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/m68k/ffi.c +0 -362
  739. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/m68k/ffitarget.h +0 -54
  740. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/m68k/sysv.S +0 -357
  741. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/m88k/ffi.c +0 -400
  742. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/m88k/ffitarget.h +0 -49
  743. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/m88k/obsd.S +0 -209
  744. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/metag/ffi.c +0 -330
  745. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/metag/ffitarget.h +0 -53
  746. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/metag/sysv.S +0 -311
  747. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/microblaze/ffi.c +0 -321
  748. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/microblaze/ffitarget.h +0 -53
  749. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/microblaze/sysv.S +0 -302
  750. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/mips/ffi.c +0 -1130
  751. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/mips/ffitarget.h +0 -244
  752. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/mips/n32.S +0 -663
  753. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/mips/o32.S +0 -502
  754. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/moxie/eabi.S +0 -101
  755. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/moxie/ffi.c +0 -285
  756. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/moxie/ffitarget.h +0 -52
  757. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/nios2/ffi.c +0 -304
  758. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/nios2/ffitarget.h +0 -52
  759. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/nios2/sysv.S +0 -136
  760. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/or1k/ffi.c +0 -328
  761. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/or1k/ffitarget.h +0 -58
  762. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/or1k/sysv.S +0 -107
  763. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/pa/ffi.c +0 -719
  764. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/pa/ffitarget.h +0 -85
  765. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/pa/hpux32.S +0 -368
  766. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/pa/linux.S +0 -357
  767. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/powerpc/aix.S +0 -566
  768. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/powerpc/aix_closure.S +0 -694
  769. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/powerpc/asm.h +0 -125
  770. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/powerpc/darwin.S +0 -378
  771. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/powerpc/darwin_closure.S +0 -571
  772. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/powerpc/ffi.c +0 -173
  773. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/powerpc/ffi_darwin.c +0 -1440
  774. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/powerpc/ffi_linux64.c +0 -974
  775. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/powerpc/ffi_powerpc.h +0 -94
  776. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/powerpc/ffi_sysv.c +0 -923
  777. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/powerpc/ffitarget.h +0 -198
  778. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/powerpc/linux64.S +0 -228
  779. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/powerpc/linux64_closure.S +0 -488
  780. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/powerpc/ppc_closure.S +0 -397
  781. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/powerpc/sysv.S +0 -175
  782. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/prep_cif.c +0 -261
  783. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/raw_api.c +0 -267
  784. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/riscv/ffi.c +0 -445
  785. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/riscv/ffitarget.h +0 -68
  786. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/riscv/sysv.S +0 -214
  787. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/s390/ffi.c +0 -756
  788. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/s390/ffitarget.h +0 -70
  789. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/s390/internal.h +0 -11
  790. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/s390/sysv.S +0 -325
  791. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/sh/ffi.c +0 -717
  792. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/sh/ffitarget.h +0 -54
  793. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/sh/sysv.S +0 -850
  794. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/sh64/ffi.c +0 -469
  795. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/sh64/ffitarget.h +0 -58
  796. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/sh64/sysv.S +0 -539
  797. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/sparc/ffi.c +0 -468
  798. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/sparc/ffi64.c +0 -608
  799. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/sparc/ffitarget.h +0 -81
  800. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/sparc/internal.h +0 -26
  801. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/sparc/v8.S +0 -443
  802. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/sparc/v9.S +0 -440
  803. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/tile/ffi.c +0 -355
  804. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/tile/ffitarget.h +0 -65
  805. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/tile/tile.S +0 -360
  806. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/types.c +0 -108
  807. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/vax/elfbsd.S +0 -195
  808. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/vax/ffi.c +0 -276
  809. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/vax/ffitarget.h +0 -49
  810. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/x86/asmnames.h +0 -30
  811. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/x86/ffi.c +0 -753
  812. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/x86/ffi64.c +0 -884
  813. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/x86/ffitarget.h +0 -147
  814. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/x86/ffiw64.c +0 -308
  815. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/x86/internal.h +0 -29
  816. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/x86/internal64.h +0 -22
  817. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/x86/sysv.S +0 -1043
  818. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/x86/unix64.S +0 -525
  819. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/x86/win64.S +0 -232
  820. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/x86/win64_intel.S +0 -237
  821. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/xtensa/ffi.c +0 -298
  822. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/xtensa/ffitarget.h +0 -53
  823. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/src/xtensa/sysv.S +0 -258
  824. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/stamp-h.in +0 -1
  825. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/Makefile.am +0 -117
  826. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/Makefile.in +0 -608
  827. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/config/default.exp +0 -1
  828. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/lib/libffi.exp +0 -636
  829. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/lib/target-libpath.exp +0 -283
  830. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/lib/wrapper.exp +0 -45
  831. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.bhaible/Makefile +0 -28
  832. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.bhaible/README +0 -78
  833. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.bhaible/alignof.h +0 -50
  834. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.bhaible/bhaible.exp +0 -58
  835. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.bhaible/test-call.c +0 -1745
  836. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.bhaible/test-callback.c +0 -2885
  837. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.bhaible/testcases.c +0 -743
  838. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/align_mixed.c +0 -46
  839. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/align_stdcall.c +0 -46
  840. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/call.exp +0 -43
  841. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn0.c +0 -89
  842. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn1.c +0 -81
  843. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn2.c +0 -81
  844. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn3.c +0 -82
  845. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn4.c +0 -89
  846. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn5.c +0 -92
  847. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn6.c +0 -90
  848. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/closure_loc_fn0.c +0 -95
  849. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/closure_simple.c +0 -55
  850. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_12byte.c +0 -94
  851. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_16byte.c +0 -95
  852. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_18byte.c +0 -96
  853. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_19byte.c +0 -102
  854. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_1_1byte.c +0 -89
  855. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_20byte.c +0 -91
  856. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_20byte1.c +0 -93
  857. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_24byte.c +0 -113
  858. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_2byte.c +0 -90
  859. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_3_1byte.c +0 -95
  860. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_3byte1.c +0 -90
  861. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_3byte2.c +0 -90
  862. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_3float.c +0 -95
  863. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_4_1byte.c +0 -98
  864. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_4byte.c +0 -90
  865. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_5_1_byte.c +0 -109
  866. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_5byte.c +0 -98
  867. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_64byte.c +0 -124
  868. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_6_1_byte.c +0 -113
  869. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_6byte.c +0 -99
  870. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_7_1_byte.c +0 -117
  871. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_7byte.c +0 -97
  872. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_8byte.c +0 -88
  873. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_9byte1.c +0 -90
  874. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_9byte2.c +0 -91
  875. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_double.c +0 -93
  876. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_float.c +0 -91
  877. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_longdouble.c +0 -92
  878. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_longdouble_split.c +0 -132
  879. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_longdouble_split2.c +0 -115
  880. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_pointer.c +0 -95
  881. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_sint16.c +0 -91
  882. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_sint32.c +0 -91
  883. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_sint64.c +0 -92
  884. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_uint16.c +0 -91
  885. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_uint32.c +0 -91
  886. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_uint64.c +0 -93
  887. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_dbls_struct.c +0 -66
  888. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_double.c +0 -43
  889. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_double_va.c +0 -61
  890. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_float.c +0 -42
  891. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_longdouble.c +0 -105
  892. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_longdouble_va.c +0 -61
  893. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_many_mixed_args.c +0 -70
  894. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_many_mixed_float_double.c +0 -55
  895. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_schar.c +0 -74
  896. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_sshort.c +0 -74
  897. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_sshortchar.c +0 -86
  898. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_uchar.c +0 -91
  899. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_ushort.c +0 -74
  900. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_ushortchar.c +0 -86
  901. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_pointer.c +0 -74
  902. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_pointer_stack.c +0 -142
  903. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_schar.c +0 -44
  904. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_sint.c +0 -42
  905. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_sshort.c +0 -42
  906. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_struct_va1.c +0 -114
  907. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_uchar.c +0 -42
  908. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_uchar_va.c +0 -44
  909. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_uint.c +0 -43
  910. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_uint_va.c +0 -45
  911. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_ulong_va.c +0 -45
  912. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_ulonglong.c +0 -47
  913. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_ushort.c +0 -43
  914. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/cls_ushort_va.c +0 -44
  915. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/err_bad_abi.c +0 -36
  916. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/err_bad_typedef.c +0 -26
  917. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/ffitest.h +0 -138
  918. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/float.c +0 -59
  919. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/float1.c +0 -60
  920. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/float2.c +0 -60
  921. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/float3.c +0 -74
  922. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/float4.c +0 -62
  923. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/float_va.c +0 -107
  924. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/huge_struct.c +0 -341
  925. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/many.c +0 -59
  926. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/many2.c +0 -57
  927. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/many_double.c +0 -70
  928. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/many_mixed.c +0 -78
  929. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/negint.c +0 -52
  930. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct.c +0 -152
  931. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct1.c +0 -161
  932. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct10.c +0 -134
  933. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct11.c +0 -121
  934. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct2.c +0 -110
  935. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct3.c +0 -111
  936. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct4.c +0 -111
  937. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct5.c +0 -112
  938. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct6.c +0 -131
  939. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct7.c +0 -111
  940. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct8.c +0 -131
  941. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct9.c +0 -131
  942. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/offsets.c +0 -46
  943. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/pr1172638.c +0 -127
  944. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/problem1.c +0 -90
  945. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/promotion.c +0 -59
  946. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/pyobjc-tc.c +0 -114
  947. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/return_dbl.c +0 -36
  948. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/return_dbl1.c +0 -43
  949. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/return_dbl2.c +0 -42
  950. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/return_fl.c +0 -35
  951. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/return_fl1.c +0 -36
  952. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/return_fl2.c +0 -49
  953. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/return_fl3.c +0 -42
  954. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/return_ldl.c +0 -34
  955. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/return_ll.c +0 -41
  956. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/return_ll1.c +0 -43
  957. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/return_sc.c +0 -36
  958. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/return_sl.c +0 -38
  959. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/return_uc.c +0 -38
  960. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/return_ul.c +0 -38
  961. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/stret_large.c +0 -145
  962. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/stret_large2.c +0 -148
  963. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/stret_medium.c +0 -124
  964. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/stret_medium2.c +0 -125
  965. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/strlen.c +0 -44
  966. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/strlen2.c +0 -49
  967. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/strlen3.c +0 -49
  968. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/strlen4.c +0 -55
  969. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/struct1.c +0 -67
  970. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/struct10.c +0 -57
  971. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/struct2.c +0 -67
  972. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/struct3.c +0 -60
  973. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/struct4.c +0 -64
  974. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/struct5.c +0 -66
  975. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/struct6.c +0 -64
  976. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/struct7.c +0 -74
  977. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/struct8.c +0 -81
  978. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/struct9.c +0 -68
  979. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/testclosure.c +0 -70
  980. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/uninitialized.c +0 -61
  981. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/unwindtest.cc +0 -117
  982. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/unwindtest_ffi_call.cc +0 -54
  983. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/va_1.c +0 -196
  984. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/va_struct1.c +0 -121
  985. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/va_struct2.c +0 -123
  986. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.call/va_struct3.c +0 -125
  987. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/cls_align_complex.inc +0 -91
  988. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/cls_align_complex_double.c +0 -10
  989. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/cls_align_complex_float.c +0 -10
  990. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/cls_align_complex_longdouble.c +0 -10
  991. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex.inc +0 -42
  992. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_double.c +0 -10
  993. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_float.c +0 -10
  994. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_longdouble.c +0 -10
  995. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_struct.inc +0 -71
  996. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_struct_double.c +0 -10
  997. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_struct_float.c +0 -10
  998. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_struct_longdouble.c +0 -10
  999. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_va.inc +0 -80
  1000. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_va_double.c +0 -10
  1001. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_va_float.c +0 -16
  1002. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_va_longdouble.c +0 -10
  1003. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/complex.exp +0 -36
  1004. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/complex.inc +0 -51
  1005. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/complex_defs_double.inc +0 -7
  1006. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/complex_defs_float.inc +0 -7
  1007. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/complex_defs_longdouble.inc +0 -7
  1008. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/complex_double.c +0 -10
  1009. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/complex_float.c +0 -10
  1010. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/complex_int.c +0 -86
  1011. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/complex_longdouble.c +0 -10
  1012. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/ffitest.h +0 -1
  1013. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/many_complex.inc +0 -78
  1014. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/many_complex_double.c +0 -10
  1015. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/many_complex_float.c +0 -10
  1016. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/many_complex_longdouble.c +0 -10
  1017. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex.inc +0 -37
  1018. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex1.inc +0 -41
  1019. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex1_double.c +0 -10
  1020. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex1_float.c +0 -10
  1021. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex1_longdouble.c +0 -10
  1022. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex2.inc +0 -44
  1023. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex2_double.c +0 -10
  1024. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex2_float.c +0 -10
  1025. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex2_longdouble.c +0 -10
  1026. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex_double.c +0 -10
  1027. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex_float.c +0 -10
  1028. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex_longdouble.c +0 -10
  1029. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.go/aa-direct.c +0 -34
  1030. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.go/closure1.c +0 -28
  1031. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.go/ffitest.h +0 -1
  1032. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.go/go.exp +0 -36
  1033. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/libffi.go/static-chain.h +0 -19
  1034. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/rbffi.h +0 -57
  1035. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/rbffi_endian.h +0 -59
  1036. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/win32/stdbool.h +0 -8
  1037. data/vendor/bundle/gems/ffi-1.10.0/ext/ffi_c/win32/stdint.h +0 -201
  1038. data/vendor/bundle/gems/ffi-1.10.0/ffi.gemspec +0 -36
  1039. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi.rb +0 -20
  1040. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/autopointer.rb +0 -203
  1041. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/buffer.rb +0 -4
  1042. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/callback.rb +0 -4
  1043. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/enum.rb +0 -296
  1044. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/errno.rb +0 -43
  1045. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/ffi.rb +0 -44
  1046. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/io.rb +0 -62
  1047. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/library.rb +0 -588
  1048. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/managedstruct.rb +0 -84
  1049. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/memorypointer.rb +0 -1
  1050. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform.rb +0 -170
  1051. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/aarch64-freebsd/types.conf +0 -128
  1052. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/aarch64-freebsd12/types.conf +0 -128
  1053. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/aarch64-linux/types.conf +0 -104
  1054. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/arm-freebsd/types.conf +0 -152
  1055. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/arm-freebsd12/types.conf +0 -152
  1056. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/arm-linux/types.conf +0 -104
  1057. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/i386-cygwin/types.conf +0 -3
  1058. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/i386-darwin/types.conf +0 -100
  1059. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/i386-freebsd/types.conf +0 -152
  1060. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/i386-freebsd12/types.conf +0 -152
  1061. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/i386-gnu/types.conf +0 -107
  1062. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/i386-linux/types.conf +0 -103
  1063. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/i386-netbsd/types.conf +0 -126
  1064. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/i386-openbsd/types.conf +0 -128
  1065. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/i386-solaris/types.conf +0 -122
  1066. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/i386-windows/types.conf +0 -105
  1067. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/ia64-linux/types.conf +0 -104
  1068. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/mips-linux/types.conf +0 -102
  1069. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/mips64-linux/types.conf +0 -104
  1070. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/mips64el-linux/types.conf +0 -104
  1071. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/mipsel-linux/types.conf +0 -102
  1072. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/mipsisa32r6-linux/types.conf +0 -102
  1073. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/mipsisa32r6el-linux/types.conf +0 -102
  1074. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/mipsisa64r6-linux/types.conf +0 -104
  1075. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/mipsisa64r6el-linux/types.conf +0 -104
  1076. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/powerpc-aix/types.conf +0 -180
  1077. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/powerpc-darwin/types.conf +0 -100
  1078. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/powerpc-linux/types.conf +0 -100
  1079. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/powerpc64-linux/types.conf +0 -104
  1080. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/s390-linux/types.conf +0 -102
  1081. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/s390x-linux/types.conf +0 -102
  1082. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/sparc-linux/types.conf +0 -102
  1083. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/sparc-solaris/types.conf +0 -128
  1084. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/sparc64-linux/types.conf +0 -102
  1085. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/sparcv9-solaris/types.conf +0 -128
  1086. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/x86_64-cygwin/types.conf +0 -3
  1087. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/x86_64-darwin/types.conf +0 -126
  1088. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/x86_64-freebsd/types.conf +0 -128
  1089. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/x86_64-freebsd12/types.conf +0 -128
  1090. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/x86_64-linux/types.conf +0 -102
  1091. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/x86_64-netbsd/types.conf +0 -128
  1092. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/x86_64-openbsd/types.conf +0 -134
  1093. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/x86_64-solaris/types.conf +0 -122
  1094. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/platform/x86_64-windows/types.conf +0 -120
  1095. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/pointer.rb +0 -160
  1096. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/struct.rb +0 -371
  1097. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/struct_layout_builder.rb +0 -227
  1098. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/tools/const_generator.rb +0 -229
  1099. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/tools/generator.rb +0 -60
  1100. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/tools/generator_task.rb +0 -36
  1101. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/tools/struct_generator.rb +0 -194
  1102. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/tools/types_generator.rb +0 -134
  1103. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/types.rb +0 -194
  1104. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/union.rb +0 -43
  1105. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/variadic.rb +0 -78
  1106. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi/version.rb +0 -3
  1107. data/vendor/bundle/gems/ffi-1.10.0/lib/ffi_c.so +0 -0
  1108. data/vendor/bundle/gems/ffi-1.10.0/samples/getlogin.rb +0 -8
  1109. data/vendor/bundle/gems/ffi-1.10.0/samples/getpid.rb +0 -8
  1110. data/vendor/bundle/gems/ffi-1.10.0/samples/gettimeofday.rb +0 -18
  1111. data/vendor/bundle/gems/ffi-1.10.0/samples/hello.rb +0 -7
  1112. data/vendor/bundle/gems/ffi-1.10.0/samples/inotify.rb +0 -60
  1113. data/vendor/bundle/gems/ffi-1.10.0/samples/pty.rb +0 -76
  1114. data/vendor/bundle/gems/ffi-1.10.0/samples/qsort.rb +0 -21
  1115. data/vendor/bundle/gems/ffi-1.10.0/samples/sample_helper.rb +0 -6
  1116. data/vendor/bundle/gems/hikidoc-0.1.0/COPYING +0 -28
  1117. data/vendor/bundle/gems/hikidoc-0.1.0/Gemfile +0 -4
  1118. data/vendor/bundle/gems/hikidoc-0.1.0/NEWS +0 -30
  1119. data/vendor/bundle/gems/hikidoc-0.1.0/NEWS.ja +0 -30
  1120. data/vendor/bundle/gems/hikidoc-0.1.0/README +0 -87
  1121. data/vendor/bundle/gems/hikidoc-0.1.0/README.ja +0 -84
  1122. data/vendor/bundle/gems/hikidoc-0.1.0/Rakefile +0 -8
  1123. data/vendor/bundle/gems/hikidoc-0.1.0/TextFormattingRules +0 -320
  1124. data/vendor/bundle/gems/hikidoc-0.1.0/TextFormattingRules.ja +0 -318
  1125. data/vendor/bundle/gems/hikidoc-0.1.0/bin/hikidoc +0 -66
  1126. data/vendor/bundle/gems/hikidoc-0.1.0/hikidoc.gemspec +0 -23
  1127. data/vendor/bundle/gems/hikidoc-0.1.0/lib/hikidoc.rb +0 -912
  1128. data/vendor/bundle/gems/hikidoc-0.1.0/test/hikidoc_test.rb +0 -506
  1129. data/vendor/bundle/gems/jasmine-2.99.0/Gemfile +0 -30
  1130. data/vendor/bundle/gems/jasmine-2.99.0/HOW_TO_TEST.markdown +0 -10
  1131. data/vendor/bundle/gems/jasmine-2.99.0/MIT.LICENSE +0 -20
  1132. data/vendor/bundle/gems/jasmine-2.99.0/README.markdown +0 -96
  1133. data/vendor/bundle/gems/jasmine-2.99.0/RELEASE.markdown +0 -15
  1134. data/vendor/bundle/gems/jasmine-2.99.0/Rakefile +0 -49
  1135. data/vendor/bundle/gems/jasmine-2.99.0/bin/jasmine +0 -6
  1136. data/vendor/bundle/gems/jasmine-2.99.0/jasmine.gemspec +0 -48
  1137. data/vendor/bundle/gems/jasmine-2.99.0/lib/generators/jasmine/examples/USAGE +0 -11
  1138. data/vendor/bundle/gems/jasmine-2.99.0/lib/generators/jasmine/examples/examples_generator.rb +0 -19
  1139. data/vendor/bundle/gems/jasmine-2.99.0/lib/generators/jasmine/examples/templates/app/assets/javascripts/jasmine_examples/Player.js +0 -22
  1140. data/vendor/bundle/gems/jasmine-2.99.0/lib/generators/jasmine/examples/templates/app/assets/javascripts/jasmine_examples/Song.js +0 -7
  1141. data/vendor/bundle/gems/jasmine-2.99.0/lib/generators/jasmine/examples/templates/spec/javascripts/helpers/jasmine_examples/SpecHelper.js +0 -15
  1142. data/vendor/bundle/gems/jasmine-2.99.0/lib/generators/jasmine/examples/templates/spec/javascripts/jasmine_examples/PlayerSpec.js +0 -58
  1143. data/vendor/bundle/gems/jasmine-2.99.0/lib/generators/jasmine/install/USAGE +0 -9
  1144. data/vendor/bundle/gems/jasmine-2.99.0/lib/generators/jasmine/install/install_generator.rb +0 -18
  1145. data/vendor/bundle/gems/jasmine-2.99.0/lib/generators/jasmine/install/templates/spec/javascripts/support/jasmine.yml +0 -145
  1146. data/vendor/bundle/gems/jasmine-2.99.0/lib/generators/jasmine/install/templates/spec/javascripts/support/jasmine_helper.rb +0 -16
  1147. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine.rb +0 -32
  1148. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/application.rb +0 -21
  1149. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/asset_expander.rb +0 -66
  1150. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/asset_pipeline_mapper.rb +0 -17
  1151. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/base.rb +0 -54
  1152. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/ci_runner.rb +0 -50
  1153. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/command_line_install.txt +0 -13
  1154. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/command_line_tool.rb +0 -125
  1155. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/config.rb +0 -135
  1156. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/configuration.rb +0 -114
  1157. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/core_configuration.rb +0 -31
  1158. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/dependencies.rb +0 -28
  1159. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/formatters/console.rb +0 -118
  1160. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/formatters/exit_code.rb +0 -23
  1161. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/formatters/multi.rb +0 -17
  1162. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/page.rb +0 -11
  1163. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/path_expander.rb +0 -22
  1164. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/path_mapper.rb +0 -38
  1165. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/railtie.rb +0 -22
  1166. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/result.rb +0 -58
  1167. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/ruby_versions.rb +0 -11
  1168. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/run.html.erb +0 -20
  1169. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/runners/phantom_boot.js +0 -15
  1170. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/runners/phantom_jasmine_run.js +0 -50
  1171. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/runners/phantom_js.rb +0 -74
  1172. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/server.rb +0 -17
  1173. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/tasks/jasmine.rake +0 -71
  1174. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/tasks/jasmine_rails.rake +0 -1
  1175. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/version.rb +0 -3
  1176. data/vendor/bundle/gems/jasmine-2.99.0/lib/jasmine/yaml_config_parser.rb +0 -95
  1177. data/vendor/bundle/gems/jasmine-2.99.0/lib/rack/jasmine/cache_control.rb +0 -20
  1178. data/vendor/bundle/gems/jasmine-2.99.0/lib/rack/jasmine/focused_suite.rb +0 -17
  1179. data/vendor/bundle/gems/jasmine-2.99.0/lib/rack/jasmine/runner.rb +0 -27
  1180. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v1.2.1.md +0 -6
  1181. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v1.3.2.md +0 -32
  1182. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.0.0.md +0 -78
  1183. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.0.1.md +0 -31
  1184. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.0.2.md +0 -17
  1185. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.0.3.md +0 -31
  1186. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.1.0.md +0 -11
  1187. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.2.0.md +0 -31
  1188. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.3.0.md +0 -27
  1189. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.3.1.md +0 -14
  1190. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.4.0.md +0 -20
  1191. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.5.0.md +0 -35
  1192. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.5.1.md +0 -12
  1193. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.5.2.md +0 -22
  1194. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.6.0.md +0 -17
  1195. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.6.1.md +0 -11
  1196. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.7.0.md +0 -28
  1197. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.8.0.md +0 -21
  1198. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.9.0.md +0 -22
  1199. data/vendor/bundle/gems/jasmine-2.99.0/release_notes/v2.99.md +0 -13
  1200. data/vendor/bundle/gems/jasmine-2.99.0/spec/application_integration_spec.rb +0 -15
  1201. data/vendor/bundle/gems/jasmine-2.99.0/spec/application_spec.rb +0 -55
  1202. data/vendor/bundle/gems/jasmine-2.99.0/spec/base_spec.rb +0 -35
  1203. data/vendor/bundle/gems/jasmine-2.99.0/spec/ci_runner_spec.rb +0 -137
  1204. data/vendor/bundle/gems/jasmine-2.99.0/spec/configuration_spec.rb +0 -219
  1205. data/vendor/bundle/gems/jasmine-2.99.0/spec/fixture/Rakefile +0 -4
  1206. data/vendor/bundle/gems/jasmine-2.99.0/spec/fixture/afterall_spec.js +0 -8
  1207. data/vendor/bundle/gems/jasmine-2.99.0/spec/fixture/coffee_spec.coffee +0 -3
  1208. data/vendor/bundle/gems/jasmine-2.99.0/spec/fixture/console_log_spec.js +0 -5
  1209. data/vendor/bundle/gems/jasmine-2.99.0/spec/fixture/exception_test.js +0 -1
  1210. data/vendor/bundle/gems/jasmine-2.99.0/spec/fixture/failing_runner.rb +0 -9
  1211. data/vendor/bundle/gems/jasmine-2.99.0/spec/fixture/failing_test.js +0 -5
  1212. data/vendor/bundle/gems/jasmine-2.99.0/spec/fixture/large_test_suite_spec.js +0 -20
  1213. data/vendor/bundle/gems/jasmine-2.99.0/spec/fixture/non_asset_pipeline.js +0 -1
  1214. data/vendor/bundle/gems/jasmine-2.99.0/spec/fixture/non_asset_pipeline_test.js +0 -5
  1215. data/vendor/bundle/gems/jasmine-2.99.0/spec/fixture/phantomConfig.js +0 -6
  1216. data/vendor/bundle/gems/jasmine-2.99.0/spec/fixture/viewport_spec.js +0 -6
  1217. data/vendor/bundle/gems/jasmine-2.99.0/spec/jasmine_command_line_tool_spec.rb +0 -142
  1218. data/vendor/bundle/gems/jasmine-2.99.0/spec/jasmine_pojs_spec.rb +0 -124
  1219. data/vendor/bundle/gems/jasmine-2.99.0/spec/jasmine_rails_spec.rb +0 -217
  1220. data/vendor/bundle/gems/jasmine-2.99.0/spec/lib/jasmine/formatters/console_spec.rb +0 -205
  1221. data/vendor/bundle/gems/jasmine-2.99.0/spec/lib/jasmine/formatters/exit_code_spec.rb +0 -34
  1222. data/vendor/bundle/gems/jasmine-2.99.0/spec/lib/jasmine/formatters/multi_spec.rb +0 -27
  1223. data/vendor/bundle/gems/jasmine-2.99.0/spec/page_spec.rb +0 -23
  1224. data/vendor/bundle/gems/jasmine-2.99.0/spec/path_expander_spec.rb +0 -138
  1225. data/vendor/bundle/gems/jasmine-2.99.0/spec/path_mapper_spec.rb +0 -38
  1226. data/vendor/bundle/gems/jasmine-2.99.0/spec/performance/phantom_js_runner_performance_spec.rb +0 -23
  1227. data/vendor/bundle/gems/jasmine-2.99.0/spec/phantom_js_spec.rb +0 -14
  1228. data/vendor/bundle/gems/jasmine-2.99.0/spec/rack/jasmine/runner_spec.rb +0 -25
  1229. data/vendor/bundle/gems/jasmine-2.99.0/spec/result_spec.rb +0 -44
  1230. data/vendor/bundle/gems/jasmine-2.99.0/spec/server_spec.rb +0 -22
  1231. data/vendor/bundle/gems/jasmine-2.99.0/spec/spec_helper.rb +0 -145
  1232. data/vendor/bundle/gems/jasmine-2.99.0/spec/yaml_config_parser_spec.rb +0 -239
  1233. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/console/console.js +0 -190
  1234. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core.js +0 -37
  1235. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core.rb +0 -53
  1236. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/__init__.py +0 -1
  1237. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/boot.js +0 -155
  1238. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/boot/boot.js +0 -133
  1239. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/boot/node_boot.js +0 -19
  1240. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/core.py +0 -60
  1241. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/example/node_example/lib/jasmine_examples/Player.js +0 -24
  1242. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/example/node_example/lib/jasmine_examples/Song.js +0 -9
  1243. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/example/node_example/spec/helpers/jasmine_examples/SpecHelper.js +0 -15
  1244. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/example/node_example/spec/jasmine_examples/PlayerSpec.js +0 -60
  1245. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/example/spec/PlayerSpec.js +0 -58
  1246. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/example/spec/SpecHelper.js +0 -15
  1247. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/example/src/Player.js +0 -22
  1248. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/example/src/Song.js +0 -7
  1249. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/jasmine-html.js +0 -545
  1250. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/jasmine.css +0 -59
  1251. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/jasmine.js +0 -5586
  1252. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/json2.js +0 -489
  1253. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/node_boot.js +0 -41
  1254. data/vendor/bundle/gems/jasmine-core-2.99.2/lib/jasmine-core/version.rb +0 -9
  1255. data/vendor/bundle/gems/json-2.2.0/CHANGES.md +0 -391
  1256. data/vendor/bundle/gems/json-2.2.0/Gemfile +0 -14
  1257. data/vendor/bundle/gems/json-2.2.0/README-json-jruby.md +0 -33
  1258. data/vendor/bundle/gems/json-2.2.0/README.md +0 -409
  1259. data/vendor/bundle/gems/json-2.2.0/Rakefile +0 -408
  1260. data/vendor/bundle/gems/json-2.2.0/VERSION +0 -1
  1261. data/vendor/bundle/gems/json-2.2.0/ext/json/Makefile +0 -201
  1262. data/vendor/bundle/gems/json-2.2.0/ext/json/ext/fbuffer/fbuffer.h +0 -187
  1263. data/vendor/bundle/gems/json-2.2.0/ext/json/ext/generator/Makefile +0 -266
  1264. data/vendor/bundle/gems/json-2.2.0/ext/json/ext/generator/depend +0 -1
  1265. data/vendor/bundle/gems/json-2.2.0/ext/json/ext/generator/extconf.rb +0 -4
  1266. data/vendor/bundle/gems/json-2.2.0/ext/json/ext/generator/generator.c +0 -1444
  1267. data/vendor/bundle/gems/json-2.2.0/ext/json/ext/generator/generator.h +0 -171
  1268. data/vendor/bundle/gems/json-2.2.0/ext/json/ext/generator/generator.o +0 -0
  1269. data/vendor/bundle/gems/json-2.2.0/ext/json/ext/generator/generator.so +0 -0
  1270. data/vendor/bundle/gems/json-2.2.0/ext/json/ext/parser/Makefile +0 -266
  1271. data/vendor/bundle/gems/json-2.2.0/ext/json/ext/parser/depend +0 -1
  1272. data/vendor/bundle/gems/json-2.2.0/ext/json/ext/parser/extconf.rb +0 -6
  1273. data/vendor/bundle/gems/json-2.2.0/ext/json/ext/parser/parser.c +0 -2131
  1274. data/vendor/bundle/gems/json-2.2.0/ext/json/ext/parser/parser.h +0 -91
  1275. data/vendor/bundle/gems/json-2.2.0/ext/json/ext/parser/parser.o +0 -0
  1276. data/vendor/bundle/gems/json-2.2.0/ext/json/ext/parser/parser.rl +0 -891
  1277. data/vendor/bundle/gems/json-2.2.0/ext/json/ext/parser/parser.so +0 -0
  1278. data/vendor/bundle/gems/json-2.2.0/ext/json/extconf.rb +0 -2
  1279. data/vendor/bundle/gems/json-2.2.0/install.rb +0 -23
  1280. data/vendor/bundle/gems/json-2.2.0/java/src/json/ext/ByteListTranscoder.java +0 -166
  1281. data/vendor/bundle/gems/json-2.2.0/java/src/json/ext/Generator.java +0 -443
  1282. data/vendor/bundle/gems/json-2.2.0/java/src/json/ext/GeneratorMethods.java +0 -231
  1283. data/vendor/bundle/gems/json-2.2.0/java/src/json/ext/GeneratorService.java +0 -42
  1284. data/vendor/bundle/gems/json-2.2.0/java/src/json/ext/GeneratorState.java +0 -490
  1285. data/vendor/bundle/gems/json-2.2.0/java/src/json/ext/OptionsReader.java +0 -113
  1286. data/vendor/bundle/gems/json-2.2.0/java/src/json/ext/Parser.java +0 -2362
  1287. data/vendor/bundle/gems/json-2.2.0/java/src/json/ext/Parser.rl +0 -893
  1288. data/vendor/bundle/gems/json-2.2.0/java/src/json/ext/ParserService.java +0 -34
  1289. data/vendor/bundle/gems/json-2.2.0/java/src/json/ext/RuntimeInfo.java +0 -116
  1290. data/vendor/bundle/gems/json-2.2.0/java/src/json/ext/StringDecoder.java +0 -166
  1291. data/vendor/bundle/gems/json-2.2.0/java/src/json/ext/StringEncoder.java +0 -111
  1292. data/vendor/bundle/gems/json-2.2.0/java/src/json/ext/Utils.java +0 -88
  1293. data/vendor/bundle/gems/json-2.2.0/json-java.gemspec +0 -38
  1294. data/vendor/bundle/gems/json-2.2.0/json.gemspec +0 -0
  1295. data/vendor/bundle/gems/json-2.2.0/json_pure.gemspec +0 -38
  1296. data/vendor/bundle/gems/json-2.2.0/lib/json.rb +0 -63
  1297. data/vendor/bundle/gems/json-2.2.0/lib/json/add/bigdecimal.rb +0 -29
  1298. data/vendor/bundle/gems/json-2.2.0/lib/json/add/complex.rb +0 -29
  1299. data/vendor/bundle/gems/json-2.2.0/lib/json/add/core.rb +0 -12
  1300. data/vendor/bundle/gems/json-2.2.0/lib/json/add/date.rb +0 -34
  1301. data/vendor/bundle/gems/json-2.2.0/lib/json/add/date_time.rb +0 -50
  1302. data/vendor/bundle/gems/json-2.2.0/lib/json/add/exception.rb +0 -31
  1303. data/vendor/bundle/gems/json-2.2.0/lib/json/add/ostruct.rb +0 -31
  1304. data/vendor/bundle/gems/json-2.2.0/lib/json/add/range.rb +0 -29
  1305. data/vendor/bundle/gems/json-2.2.0/lib/json/add/rational.rb +0 -28
  1306. data/vendor/bundle/gems/json-2.2.0/lib/json/add/regexp.rb +0 -30
  1307. data/vendor/bundle/gems/json-2.2.0/lib/json/add/set.rb +0 -29
  1308. data/vendor/bundle/gems/json-2.2.0/lib/json/add/struct.rb +0 -30
  1309. data/vendor/bundle/gems/json-2.2.0/lib/json/add/symbol.rb +0 -25
  1310. data/vendor/bundle/gems/json-2.2.0/lib/json/add/time.rb +0 -38
  1311. data/vendor/bundle/gems/json-2.2.0/lib/json/common.rb +0 -456
  1312. data/vendor/bundle/gems/json-2.2.0/lib/json/ext.rb +0 -15
  1313. data/vendor/bundle/gems/json-2.2.0/lib/json/ext/generator.so +0 -0
  1314. data/vendor/bundle/gems/json-2.2.0/lib/json/ext/parser.so +0 -0
  1315. data/vendor/bundle/gems/json-2.2.0/lib/json/generic_object.rb +0 -71
  1316. data/vendor/bundle/gems/json-2.2.0/lib/json/pure.rb +0 -15
  1317. data/vendor/bundle/gems/json-2.2.0/lib/json/pure/generator.rb +0 -458
  1318. data/vendor/bundle/gems/json-2.2.0/lib/json/pure/parser.rb +0 -311
  1319. data/vendor/bundle/gems/json-2.2.0/lib/json/version.rb +0 -9
  1320. data/vendor/bundle/gems/json-2.2.0/references/rfc7159.txt +0 -899
  1321. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail10.json +0 -1
  1322. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail11.json +0 -1
  1323. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail12.json +0 -1
  1324. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail13.json +0 -1
  1325. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail14.json +0 -1
  1326. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail18.json +0 -1
  1327. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail19.json +0 -1
  1328. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail2.json +0 -1
  1329. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail20.json +0 -1
  1330. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail21.json +0 -1
  1331. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail22.json +0 -1
  1332. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail23.json +0 -1
  1333. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail24.json +0 -1
  1334. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail25.json +0 -1
  1335. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail27.json +0 -2
  1336. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail28.json +0 -2
  1337. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail3.json +0 -1
  1338. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail4.json +0 -1
  1339. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail5.json +0 -1
  1340. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail6.json +0 -1
  1341. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail7.json +0 -1
  1342. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail8.json +0 -1
  1343. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/fail9.json +0 -1
  1344. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/obsolete_fail1.json +0 -1
  1345. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/pass1.json +0 -56
  1346. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/pass15.json +0 -1
  1347. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/pass16.json +0 -1
  1348. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/pass17.json +0 -1
  1349. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/pass2.json +0 -1
  1350. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/pass26.json +0 -1
  1351. data/vendor/bundle/gems/json-2.2.0/tests/fixtures/pass3.json +0 -6
  1352. data/vendor/bundle/gems/json-2.2.0/tests/json_addition_test.rb +0 -203
  1353. data/vendor/bundle/gems/json-2.2.0/tests/json_common_interface_test.rb +0 -126
  1354. data/vendor/bundle/gems/json-2.2.0/tests/json_encoding_test.rb +0 -107
  1355. data/vendor/bundle/gems/json-2.2.0/tests/json_ext_parser_test.rb +0 -15
  1356. data/vendor/bundle/gems/json-2.2.0/tests/json_fixtures_test.rb +0 -32
  1357. data/vendor/bundle/gems/json-2.2.0/tests/json_generator_test.rb +0 -377
  1358. data/vendor/bundle/gems/json-2.2.0/tests/json_generic_object_test.rb +0 -82
  1359. data/vendor/bundle/gems/json-2.2.0/tests/json_parser_test.rb +0 -472
  1360. data/vendor/bundle/gems/json-2.2.0/tests/json_string_matching_test.rb +0 -38
  1361. data/vendor/bundle/gems/json-2.2.0/tests/test_helper.rb +0 -17
  1362. data/vendor/bundle/gems/json-2.2.0/tools/diff.sh +0 -18
  1363. data/vendor/bundle/gems/json-2.2.0/tools/fuzz.rb +0 -131
  1364. data/vendor/bundle/gems/json-2.2.0/tools/server.rb +0 -62
  1365. data/vendor/bundle/gems/launchy-2.4.3/CONTRIBUTING.md +0 -59
  1366. data/vendor/bundle/gems/launchy-2.4.3/HISTORY.md +0 -160
  1367. data/vendor/bundle/gems/launchy-2.4.3/LICENSE +0 -16
  1368. data/vendor/bundle/gems/launchy-2.4.3/Manifest.txt +0 -38
  1369. data/vendor/bundle/gems/launchy-2.4.3/README.md +0 -136
  1370. data/vendor/bundle/gems/launchy-2.4.3/Rakefile +0 -25
  1371. data/vendor/bundle/gems/launchy-2.4.3/bin/launchy +0 -4
  1372. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy.rb +0 -152
  1373. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/application.rb +0 -62
  1374. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/applications/browser.rb +0 -82
  1375. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/argv.rb +0 -36
  1376. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/cli.rb +0 -89
  1377. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/deprecated.rb +0 -52
  1378. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/descendant_tracker.rb +0 -49
  1379. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/detect.rb +0 -10
  1380. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/detect/host_os.rb +0 -32
  1381. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/detect/host_os_family.rb +0 -71
  1382. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/detect/nix_desktop_environment.rb +0 -92
  1383. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/detect/ruby_engine.rb +0 -78
  1384. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/detect/runner.rb +0 -152
  1385. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/error.rb +0 -6
  1386. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/os_family.rb +0 -8
  1387. data/vendor/bundle/gems/launchy-2.4.3/lib/launchy/version.rb +0 -18
  1388. data/vendor/bundle/gems/launchy-2.4.3/spec/application_spec.rb +0 -43
  1389. data/vendor/bundle/gems/launchy-2.4.3/spec/applications/browser_spec.rb +0 -68
  1390. data/vendor/bundle/gems/launchy-2.4.3/spec/cli_spec.rb +0 -75
  1391. data/vendor/bundle/gems/launchy-2.4.3/spec/detect/host_os_family_spec.rb +0 -40
  1392. data/vendor/bundle/gems/launchy-2.4.3/spec/detect/host_os_spec.rb +0 -19
  1393. data/vendor/bundle/gems/launchy-2.4.3/spec/detect/nix_desktop_environment_spec.rb +0 -36
  1394. data/vendor/bundle/gems/launchy-2.4.3/spec/detect/ruby_engine_spec.rb +0 -37
  1395. data/vendor/bundle/gems/launchy-2.4.3/spec/detect/runner_spec.rb +0 -103
  1396. data/vendor/bundle/gems/launchy-2.4.3/spec/launchy_spec.rb +0 -110
  1397. data/vendor/bundle/gems/launchy-2.4.3/spec/mock_application.rb +0 -9
  1398. data/vendor/bundle/gems/launchy-2.4.3/spec/spec_helper.rb +0 -11
  1399. data/vendor/bundle/gems/launchy-2.4.3/spec/tattle-host-os.yaml +0 -427
  1400. data/vendor/bundle/gems/launchy-2.4.3/spec/version_spec.rb +0 -11
  1401. data/vendor/bundle/gems/launchy-2.4.3/tasks/default.rake +0 -272
  1402. data/vendor/bundle/gems/launchy-2.4.3/tasks/this.rb +0 -209
  1403. data/vendor/bundle/gems/mail-2.7.1/MIT-LICENSE +0 -20
  1404. data/vendor/bundle/gems/mail-2.7.1/README.md +0 -695
  1405. data/vendor/bundle/gems/mail-2.7.1/lib/mail.rb +0 -85
  1406. data/vendor/bundle/gems/mail-2.7.1/lib/mail/attachments_list.rb +0 -110
  1407. data/vendor/bundle/gems/mail-2.7.1/lib/mail/body.rb +0 -328
  1408. data/vendor/bundle/gems/mail-2.7.1/lib/mail/check_delivery_params.rb +0 -60
  1409. data/vendor/bundle/gems/mail-2.7.1/lib/mail/configuration.rb +0 -78
  1410. data/vendor/bundle/gems/mail-2.7.1/lib/mail/constants.rb +0 -57
  1411. data/vendor/bundle/gems/mail-2.7.1/lib/mail/core_extensions/smtp.rb +0 -28
  1412. data/vendor/bundle/gems/mail-2.7.1/lib/mail/core_extensions/string.rb +0 -17
  1413. data/vendor/bundle/gems/mail-2.7.1/lib/mail/elements.rb +0 -15
  1414. data/vendor/bundle/gems/mail-2.7.1/lib/mail/elements/address.rb +0 -258
  1415. data/vendor/bundle/gems/mail-2.7.1/lib/mail/elements/address_list.rb +0 -34
  1416. data/vendor/bundle/gems/mail-2.7.1/lib/mail/elements/content_disposition_element.rb +0 -20
  1417. data/vendor/bundle/gems/mail-2.7.1/lib/mail/elements/content_location_element.rb +0 -17
  1418. data/vendor/bundle/gems/mail-2.7.1/lib/mail/elements/content_transfer_encoding_element.rb +0 -13
  1419. data/vendor/bundle/gems/mail-2.7.1/lib/mail/elements/content_type_element.rb +0 -21
  1420. data/vendor/bundle/gems/mail-2.7.1/lib/mail/elements/date_time_element.rb +0 -15
  1421. data/vendor/bundle/gems/mail-2.7.1/lib/mail/elements/envelope_from_element.rb +0 -33
  1422. data/vendor/bundle/gems/mail-2.7.1/lib/mail/elements/message_ids_element.rb +0 -22
  1423. data/vendor/bundle/gems/mail-2.7.1/lib/mail/elements/mime_version_element.rb +0 -15
  1424. data/vendor/bundle/gems/mail-2.7.1/lib/mail/elements/phrase_list.rb +0 -14
  1425. data/vendor/bundle/gems/mail-2.7.1/lib/mail/elements/received_element.rb +0 -21
  1426. data/vendor/bundle/gems/mail-2.7.1/lib/mail/encodings.rb +0 -343
  1427. data/vendor/bundle/gems/mail-2.7.1/lib/mail/encodings/7bit.rb +0 -22
  1428. data/vendor/bundle/gems/mail-2.7.1/lib/mail/encodings/8bit.rb +0 -18
  1429. data/vendor/bundle/gems/mail-2.7.1/lib/mail/encodings/base64.rb +0 -38
  1430. data/vendor/bundle/gems/mail-2.7.1/lib/mail/encodings/binary.rb +0 -13
  1431. data/vendor/bundle/gems/mail-2.7.1/lib/mail/encodings/identity.rb +0 -24
  1432. data/vendor/bundle/gems/mail-2.7.1/lib/mail/encodings/quoted_printable.rb +0 -45
  1433. data/vendor/bundle/gems/mail-2.7.1/lib/mail/encodings/transfer_encoding.rb +0 -77
  1434. data/vendor/bundle/gems/mail-2.7.1/lib/mail/encodings/unix_to_unix.rb +0 -20
  1435. data/vendor/bundle/gems/mail-2.7.1/lib/mail/envelope.rb +0 -31
  1436. data/vendor/bundle/gems/mail-2.7.1/lib/mail/field.rb +0 -299
  1437. data/vendor/bundle/gems/mail-2.7.1/lib/mail/field_list.rb +0 -34
  1438. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields.rb +0 -36
  1439. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/bcc_field.rb +0 -68
  1440. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/cc_field.rb +0 -55
  1441. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/comments_field.rb +0 -42
  1442. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/common/address_container.rb +0 -17
  1443. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/common/common_address.rb +0 -161
  1444. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/common/common_date.rb +0 -36
  1445. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/common/common_field.rb +0 -52
  1446. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/common/common_message_id.rb +0 -49
  1447. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/common/parameter_hash.rb +0 -59
  1448. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/content_description_field.rb +0 -20
  1449. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/content_disposition_field.rb +0 -71
  1450. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/content_id_field.rb +0 -63
  1451. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/content_location_field.rb +0 -43
  1452. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/content_transfer_encoding_field.rb +0 -45
  1453. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/content_type_field.rb +0 -197
  1454. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/date_field.rb +0 -57
  1455. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/from_field.rb +0 -55
  1456. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/in_reply_to_field.rb +0 -57
  1457. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/keywords_field.rb +0 -44
  1458. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/message_id_field.rb +0 -83
  1459. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/mime_version_field.rb +0 -54
  1460. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/optional_field.rb +0 -17
  1461. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/received_field.rb +0 -76
  1462. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/references_field.rb +0 -57
  1463. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/reply_to_field.rb +0 -55
  1464. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/resent_bcc_field.rb +0 -55
  1465. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/resent_cc_field.rb +0 -55
  1466. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/resent_date_field.rb +0 -35
  1467. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/resent_from_field.rb +0 -55
  1468. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/resent_message_id_field.rb +0 -35
  1469. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/resent_sender_field.rb +0 -62
  1470. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/resent_to_field.rb +0 -55
  1471. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/return_path_field.rb +0 -65
  1472. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/sender_field.rb +0 -67
  1473. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/structured_field.rb +0 -52
  1474. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/subject_field.rb +0 -17
  1475. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/to_field.rb +0 -55
  1476. data/vendor/bundle/gems/mail-2.7.1/lib/mail/fields/unstructured_field.rb +0 -222
  1477. data/vendor/bundle/gems/mail-2.7.1/lib/mail/header.rb +0 -278
  1478. data/vendor/bundle/gems/mail-2.7.1/lib/mail/indifferent_hash.rb +0 -147
  1479. data/vendor/bundle/gems/mail-2.7.1/lib/mail/mail.rb +0 -262
  1480. data/vendor/bundle/gems/mail-2.7.1/lib/mail/matchers/attachment_matchers.rb +0 -29
  1481. data/vendor/bundle/gems/mail-2.7.1/lib/mail/matchers/has_sent_mail.rb +0 -201
  1482. data/vendor/bundle/gems/mail-2.7.1/lib/mail/message.rb +0 -2170
  1483. data/vendor/bundle/gems/mail-2.7.1/lib/mail/multibyte.rb +0 -92
  1484. data/vendor/bundle/gems/mail-2.7.1/lib/mail/multibyte/chars.rb +0 -476
  1485. data/vendor/bundle/gems/mail-2.7.1/lib/mail/multibyte/unicode.rb +0 -405
  1486. data/vendor/bundle/gems/mail-2.7.1/lib/mail/multibyte/utils.rb +0 -61
  1487. data/vendor/bundle/gems/mail-2.7.1/lib/mail/network.rb +0 -16
  1488. data/vendor/bundle/gems/mail-2.7.1/lib/mail/network/delivery_methods/exim.rb +0 -49
  1489. data/vendor/bundle/gems/mail-2.7.1/lib/mail/network/delivery_methods/file_delivery.rb +0 -42
  1490. data/vendor/bundle/gems/mail-2.7.1/lib/mail/network/delivery_methods/logger_delivery.rb +0 -37
  1491. data/vendor/bundle/gems/mail-2.7.1/lib/mail/network/delivery_methods/sendmail.rb +0 -95
  1492. data/vendor/bundle/gems/mail-2.7.1/lib/mail/network/delivery_methods/smtp.rb +0 -149
  1493. data/vendor/bundle/gems/mail-2.7.1/lib/mail/network/delivery_methods/smtp_connection.rb +0 -66
  1494. data/vendor/bundle/gems/mail-2.7.1/lib/mail/network/delivery_methods/test_mailer.rb +0 -42
  1495. data/vendor/bundle/gems/mail-2.7.1/lib/mail/network/retriever_methods/base.rb +0 -64
  1496. data/vendor/bundle/gems/mail-2.7.1/lib/mail/network/retriever_methods/imap.rb +0 -187
  1497. data/vendor/bundle/gems/mail-2.7.1/lib/mail/network/retriever_methods/pop3.rb +0 -143
  1498. data/vendor/bundle/gems/mail-2.7.1/lib/mail/network/retriever_methods/test_retriever.rb +0 -44
  1499. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parser_tools.rb +0 -15
  1500. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers.rb +0 -19
  1501. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/address_lists_parser.rb +0 -33236
  1502. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/address_lists_parser.rl +0 -172
  1503. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/content_disposition_parser.rb +0 -895
  1504. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/content_disposition_parser.rl +0 -82
  1505. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/content_location_parser.rb +0 -816
  1506. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/content_location_parser.rl +0 -71
  1507. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/content_transfer_encoding_parser.rb +0 -516
  1508. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/content_transfer_encoding_parser.rl +0 -64
  1509. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/content_type_parser.rb +0 -1042
  1510. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/content_type_parser.rl +0 -83
  1511. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/date_time_parser.rb +0 -885
  1512. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/date_time_parser.rl +0 -62
  1513. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/envelope_from_parser.rb +0 -3581
  1514. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/envelope_from_parser.rl +0 -82
  1515. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/message_ids_parser.rb +0 -2854
  1516. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/message_ids_parser.rl +0 -82
  1517. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/mime_version_parser.rb +0 -507
  1518. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/mime_version_parser.rl +0 -61
  1519. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/phrase_lists_parser.rb +0 -878
  1520. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/phrase_lists_parser.rl +0 -83
  1521. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/received_parser.rb +0 -8776
  1522. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/received_parser.rl +0 -84
  1523. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/rfc2045_content_transfer_encoding.rl +0 -13
  1524. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/rfc2045_content_type.rl +0 -25
  1525. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/rfc2045_mime.rl +0 -16
  1526. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/rfc2183_content_disposition.rl +0 -15
  1527. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/rfc3629_utf8.rl +0 -19
  1528. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/rfc5234_abnf_core_rules.rl +0 -22
  1529. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/rfc5322.rl +0 -59
  1530. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/rfc5322_address.rl +0 -72
  1531. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/rfc5322_date_time.rl +0 -37
  1532. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parsers/rfc5322_lexical_tokens.rl +0 -60
  1533. data/vendor/bundle/gems/mail-2.7.1/lib/mail/part.rb +0 -123
  1534. data/vendor/bundle/gems/mail-2.7.1/lib/mail/parts_list.rb +0 -74
  1535. data/vendor/bundle/gems/mail-2.7.1/lib/mail/utilities.rb +0 -324
  1536. data/vendor/bundle/gems/mail-2.7.1/lib/mail/values/unicode_tables.dat +0 -0
  1537. data/vendor/bundle/gems/mail-2.7.1/lib/mail/version.rb +0 -17
  1538. data/vendor/bundle/gems/mail-2.7.1/lib/mail/version_specific/ruby_1_8.rb +0 -163
  1539. data/vendor/bundle/gems/mail-2.7.1/lib/mail/version_specific/ruby_1_9.rb +0 -278
  1540. data/vendor/bundle/gems/mime-types-3.2.2/Code-of-Conduct.md +0 -73
  1541. data/vendor/bundle/gems/mime-types-3.2.2/Contributing.md +0 -139
  1542. data/vendor/bundle/gems/mime-types-3.2.2/History.md +0 -208
  1543. data/vendor/bundle/gems/mime-types-3.2.2/Licence.md +0 -25
  1544. data/vendor/bundle/gems/mime-types-3.2.2/Manifest.txt +0 -31
  1545. data/vendor/bundle/gems/mime-types-3.2.2/README.rdoc +0 -200
  1546. data/vendor/bundle/gems/mime-types-3.2.2/Rakefile +0 -256
  1547. data/vendor/bundle/gems/mime-types-3.2.2/lib/mime-types.rb +0 -3
  1548. data/vendor/bundle/gems/mime-types-3.2.2/lib/mime/type.rb +0 -573
  1549. data/vendor/bundle/gems/mime-types-3.2.2/lib/mime/type/columnar.rb +0 -57
  1550. data/vendor/bundle/gems/mime-types-3.2.2/lib/mime/types.rb +0 -230
  1551. data/vendor/bundle/gems/mime-types-3.2.2/lib/mime/types/_columnar.rb +0 -137
  1552. data/vendor/bundle/gems/mime-types-3.2.2/lib/mime/types/cache.rb +0 -58
  1553. data/vendor/bundle/gems/mime-types-3.2.2/lib/mime/types/columnar.rb +0 -3
  1554. data/vendor/bundle/gems/mime-types-3.2.2/lib/mime/types/container.rb +0 -94
  1555. data/vendor/bundle/gems/mime-types-3.2.2/lib/mime/types/deprecations.rb +0 -34
  1556. data/vendor/bundle/gems/mime-types-3.2.2/lib/mime/types/full.rb +0 -19
  1557. data/vendor/bundle/gems/mime-types-3.2.2/lib/mime/types/loader.rb +0 -146
  1558. data/vendor/bundle/gems/mime-types-3.2.2/lib/mime/types/logger.rb +0 -39
  1559. data/vendor/bundle/gems/mime-types-3.2.2/lib/mime/types/registry.rb +0 -90
  1560. data/vendor/bundle/gems/mime-types-3.2.2/test/bad-fixtures/malformed +0 -9
  1561. data/vendor/bundle/gems/mime-types-3.2.2/test/fixture/json.json +0 -1
  1562. data/vendor/bundle/gems/mime-types-3.2.2/test/fixture/old-data +0 -9
  1563. data/vendor/bundle/gems/mime-types-3.2.2/test/fixture/yaml.yaml +0 -55
  1564. data/vendor/bundle/gems/mime-types-3.2.2/test/minitest_helper.rb +0 -15
  1565. data/vendor/bundle/gems/mime-types-3.2.2/test/test_mime_type.rb +0 -614
  1566. data/vendor/bundle/gems/mime-types-3.2.2/test/test_mime_types.rb +0 -171
  1567. data/vendor/bundle/gems/mime-types-3.2.2/test/test_mime_types_cache.rb +0 -120
  1568. data/vendor/bundle/gems/mime-types-3.2.2/test/test_mime_types_class.rb +0 -161
  1569. data/vendor/bundle/gems/mime-types-3.2.2/test/test_mime_types_lazy.rb +0 -51
  1570. data/vendor/bundle/gems/mime-types-3.2.2/test/test_mime_types_loader.rb +0 -34
  1571. data/vendor/bundle/gems/mime-types-data-3.2018.0812/Code-of-Conduct.md +0 -75
  1572. data/vendor/bundle/gems/mime-types-data-3.2018.0812/Contributing.md +0 -160
  1573. data/vendor/bundle/gems/mime-types-data-3.2018.0812/History.md +0 -379
  1574. data/vendor/bundle/gems/mime-types-data-3.2018.0812/Licence.md +0 -25
  1575. data/vendor/bundle/gems/mime-types-data-3.2018.0812/Manifest.txt +0 -31
  1576. data/vendor/bundle/gems/mime-types-data-3.2018.0812/README.md +0 -63
  1577. data/vendor/bundle/gems/mime-types-data-3.2018.0812/Rakefile +0 -80
  1578. data/vendor/bundle/gems/mime-types-data-3.2018.0812/data/mime-types.json +0 -1
  1579. data/vendor/bundle/gems/mime-types-data-3.2018.0812/data/mime.content_type.column +0 -2137
  1580. data/vendor/bundle/gems/mime-types-data-3.2018.0812/data/mime.docs.column +0 -2137
  1581. data/vendor/bundle/gems/mime-types-data-3.2018.0812/data/mime.encoding.column +0 -2137
  1582. data/vendor/bundle/gems/mime-types-data-3.2018.0812/data/mime.flags.column +0 -2137
  1583. data/vendor/bundle/gems/mime-types-data-3.2018.0812/data/mime.friendly.column +0 -2137
  1584. data/vendor/bundle/gems/mime-types-data-3.2018.0812/data/mime.pext.column +0 -2137
  1585. data/vendor/bundle/gems/mime-types-data-3.2018.0812/data/mime.use_instead.column +0 -2137
  1586. data/vendor/bundle/gems/mime-types-data-3.2018.0812/data/mime.xrefs.column +0 -2137
  1587. data/vendor/bundle/gems/mime-types-data-3.2018.0812/lib/mime-types-data.rb +0 -3
  1588. data/vendor/bundle/gems/mime-types-data-3.2018.0812/lib/mime/types/data.rb +0 -21
  1589. data/vendor/bundle/gems/mime-types-data-3.2018.0812/types/application.yaml +0 -15827
  1590. data/vendor/bundle/gems/mime-types-data-3.2018.0812/types/audio.yaml +0 -1616
  1591. data/vendor/bundle/gems/mime-types-data-3.2018.0812/types/chemical.yaml +0 -71
  1592. data/vendor/bundle/gems/mime-types-data-3.2018.0812/types/conference.yaml +0 -9
  1593. data/vendor/bundle/gems/mime-types-data-3.2018.0812/types/drawing.yaml +0 -15
  1594. data/vendor/bundle/gems/mime-types-data-3.2018.0812/types/font.yaml +0 -65
  1595. data/vendor/bundle/gems/mime-types-data-3.2018.0812/types/image.yaml +0 -963
  1596. data/vendor/bundle/gems/mime-types-data-3.2018.0812/types/message.yaml +0 -200
  1597. data/vendor/bundle/gems/mime-types-data-3.2018.0812/types/model.yaml +0 -302
  1598. data/vendor/bundle/gems/mime-types-data-3.2018.0812/types/multipart.yaml +0 -179
  1599. data/vendor/bundle/gems/mime-types-data-3.2018.0812/types/text.yaml +0 -1019
  1600. data/vendor/bundle/gems/mime-types-data-3.2018.0812/types/video.yaml +0 -1043
  1601. data/vendor/bundle/gems/mime-types-data-3.2018.0812/types/world.yaml +0 -8
  1602. data/vendor/bundle/gems/mini_mime-1.0.1/CHANGELOG +0 -33
  1603. data/vendor/bundle/gems/mini_mime-1.0.1/CODE_OF_CONDUCT.md +0 -74
  1604. data/vendor/bundle/gems/mini_mime-1.0.1/Gemfile +0 -6
  1605. data/vendor/bundle/gems/mini_mime-1.0.1/LICENSE.txt +0 -21
  1606. data/vendor/bundle/gems/mini_mime-1.0.1/README.md +0 -95
  1607. data/vendor/bundle/gems/mini_mime-1.0.1/Rakefile +0 -96
  1608. data/vendor/bundle/gems/mini_mime-1.0.1/bench/bench.rb +0 -52
  1609. data/vendor/bundle/gems/mini_mime-1.0.1/bin/console +0 -14
  1610. data/vendor/bundle/gems/mini_mime-1.0.1/bin/setup +0 -8
  1611. data/vendor/bundle/gems/mini_mime-1.0.1/lib/db/content_type_mime.db +0 -852
  1612. data/vendor/bundle/gems/mini_mime-1.0.1/lib/db/ext_mime.db +0 -1170
  1613. data/vendor/bundle/gems/mini_mime-1.0.1/lib/mini_mime.rb +0 -156
  1614. data/vendor/bundle/gems/mini_mime-1.0.1/lib/mini_mime/version.rb +0 -3
  1615. data/vendor/bundle/gems/mini_mime-1.0.1/mini_mime.gemspec +0 -28
  1616. data/vendor/bundle/gems/mini_portile2-2.4.0/CHANGELOG.md +0 -209
  1617. data/vendor/bundle/gems/mini_portile2-2.4.0/Gemfile +0 -4
  1618. data/vendor/bundle/gems/mini_portile2-2.4.0/LICENSE.txt +0 -20
  1619. data/vendor/bundle/gems/mini_portile2-2.4.0/README.md +0 -245
  1620. data/vendor/bundle/gems/mini_portile2-2.4.0/Rakefile +0 -29
  1621. data/vendor/bundle/gems/mini_portile2-2.4.0/appveyor.yml +0 -25
  1622. data/vendor/bundle/gems/mini_portile2-2.4.0/concourse/mini_portile.yml +0 -141
  1623. data/vendor/bundle/gems/mini_portile2-2.4.0/concourse/tasks/rake-test/task.ps1 +0 -11
  1624. data/vendor/bundle/gems/mini_portile2-2.4.0/concourse/tasks/rake-test/task.sh +0 -13
  1625. data/vendor/bundle/gems/mini_portile2-2.4.0/lib/mini_portile2.rb +0 -3
  1626. data/vendor/bundle/gems/mini_portile2-2.4.0/lib/mini_portile2/mini_portile.rb +0 -556
  1627. data/vendor/bundle/gems/mini_portile2-2.4.0/lib/mini_portile2/mini_portile_cmake.rb +0 -40
  1628. data/vendor/bundle/gems/mini_portile2-2.4.0/lib/mini_portile2/version.rb +0 -3
  1629. data/vendor/bundle/gems/mini_portile2-2.4.0/mini_portile2.gemspec +0 -42
  1630. data/vendor/bundle/gems/mini_portile2-2.4.0/test/assets/git/config +0 -4
  1631. data/vendor/bundle/gems/mini_portile2-2.4.0/test/assets/gpg-fixtures/data +0 -1
  1632. data/vendor/bundle/gems/mini_portile2-2.4.0/test/assets/gpg-fixtures/data.asc +0 -9
  1633. data/vendor/bundle/gems/mini_portile2-2.4.0/test/assets/gpg-fixtures/data.invalid.asc +0 -9
  1634. data/vendor/bundle/gems/mini_portile2-2.4.0/test/assets/patch 1.diff +0 -7
  1635. data/vendor/bundle/gems/mini_portile2-2.4.0/test/assets/test mini portile-1.0.0/configure +0 -11
  1636. data/vendor/bundle/gems/mini_portile2-2.4.0/test/assets/test-cmake-1.0/CMakeLists.txt +0 -7
  1637. data/vendor/bundle/gems/mini_portile2-2.4.0/test/assets/test-cmake-1.0/hello.c +0 -4
  1638. data/vendor/bundle/gems/mini_portile2-2.4.0/test/assets/test-download-archive.tar.gz +0 -1
  1639. data/vendor/bundle/gems/mini_portile2-2.4.0/test/helper.rb +0 -60
  1640. data/vendor/bundle/gems/mini_portile2-2.4.0/test/test_cmake.rb +0 -64
  1641. data/vendor/bundle/gems/mini_portile2-2.4.0/test/test_cook.rb +0 -115
  1642. data/vendor/bundle/gems/mini_portile2-2.4.0/test/test_digest.rb +0 -215
  1643. data/vendor/bundle/gems/mini_portile2-2.4.0/test/test_download.rb +0 -71
  1644. data/vendor/bundle/gems/mini_portile2-2.4.0/test/test_proxy.rb +0 -121
  1645. data/vendor/bundle/gems/multipart-post-2.0.0/Gemfile +0 -14
  1646. data/vendor/bundle/gems/multipart-post-2.0.0/History.txt +0 -60
  1647. data/vendor/bundle/gems/multipart-post-2.0.0/Manifest.txt +0 -9
  1648. data/vendor/bundle/gems/multipart-post-2.0.0/README.md +0 -77
  1649. data/vendor/bundle/gems/multipart-post-2.0.0/Rakefile +0 -9
  1650. data/vendor/bundle/gems/multipart-post-2.0.0/lib/composite_io.rb +0 -108
  1651. data/vendor/bundle/gems/multipart-post-2.0.0/lib/multipart_post.rb +0 -9
  1652. data/vendor/bundle/gems/multipart-post-2.0.0/lib/multipartable.rb +0 -29
  1653. data/vendor/bundle/gems/multipart-post-2.0.0/lib/net/http/post/multipart.rb +0 -27
  1654. data/vendor/bundle/gems/multipart-post-2.0.0/lib/parts.rb +0 -96
  1655. data/vendor/bundle/gems/multipart-post-2.0.0/multipart-post.gemspec +0 -22
  1656. data/vendor/bundle/gems/multipart-post-2.0.0/test/multibyte.txt +0 -1
  1657. data/vendor/bundle/gems/multipart-post-2.0.0/test/net/http/post/test_multipart.rb +0 -110
  1658. data/vendor/bundle/gems/multipart-post-2.0.0/test/test_composite_io.rb +0 -115
  1659. data/vendor/bundle/gems/multipart-post-2.0.0/test/test_parts.rb +0 -86
  1660. data/vendor/bundle/gems/nokogiri-1.10.2/LICENSE-DEPENDENCIES.md +0 -1614
  1661. data/vendor/bundle/gems/nokogiri-1.10.2/LICENSE.md +0 -9
  1662. data/vendor/bundle/gems/nokogiri-1.10.2/README.md +0 -198
  1663. data/vendor/bundle/gems/nokogiri-1.10.2/bin/nokogiri +0 -118
  1664. data/vendor/bundle/gems/nokogiri-1.10.2/dependencies.yml +0 -72
  1665. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/Makefile +0 -627
  1666. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/depend +0 -358
  1667. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/extconf.rb +0 -686
  1668. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/html_document.c +0 -170
  1669. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/html_document.h +0 -10
  1670. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/html_document.o +0 -0
  1671. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/html_element_description.c +0 -279
  1672. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/html_element_description.h +0 -10
  1673. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/html_element_description.o +0 -0
  1674. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/html_entity_lookup.c +0 -32
  1675. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/html_entity_lookup.h +0 -8
  1676. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/html_entity_lookup.o +0 -0
  1677. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/html_sax_parser_context.c +0 -116
  1678. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/html_sax_parser_context.h +0 -11
  1679. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/html_sax_parser_context.o +0 -0
  1680. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/html_sax_push_parser.c +0 -87
  1681. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/html_sax_push_parser.h +0 -9
  1682. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/html_sax_push_parser.o +0 -0
  1683. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/nokogiri.c +0 -141
  1684. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/nokogiri.h +0 -121
  1685. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/nokogiri.o +0 -0
  1686. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/nokogiri.so +0 -0
  1687. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_attr.c +0 -103
  1688. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_attr.h +0 -9
  1689. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_attr.o +0 -0
  1690. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_attribute_decl.c +0 -70
  1691. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_attribute_decl.h +0 -9
  1692. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_attribute_decl.o +0 -0
  1693. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_cdata.c +0 -62
  1694. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_cdata.h +0 -9
  1695. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_cdata.o +0 -0
  1696. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_comment.c +0 -69
  1697. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_comment.h +0 -9
  1698. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_comment.o +0 -0
  1699. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_document.c +0 -608
  1700. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_document.h +0 -23
  1701. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_document.o +0 -0
  1702. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_document_fragment.c +0 -48
  1703. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_document_fragment.h +0 -10
  1704. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_document_fragment.o +0 -0
  1705. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_dtd.c +0 -202
  1706. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_dtd.h +0 -10
  1707. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_dtd.o +0 -0
  1708. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_element_content.c +0 -123
  1709. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_element_content.h +0 -10
  1710. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_element_content.o +0 -0
  1711. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_element_decl.c +0 -69
  1712. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_element_decl.h +0 -9
  1713. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_element_decl.o +0 -0
  1714. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_encoding_handler.c +0 -79
  1715. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_encoding_handler.h +0 -8
  1716. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_encoding_handler.o +0 -0
  1717. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_entity_decl.c +0 -110
  1718. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_entity_decl.h +0 -10
  1719. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_entity_decl.o +0 -0
  1720. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_entity_reference.c +0 -52
  1721. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_entity_reference.h +0 -9
  1722. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_entity_reference.o +0 -0
  1723. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_io.c +0 -61
  1724. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_io.h +0 -11
  1725. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_io.o +0 -0
  1726. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_libxml2_hacks.c +0 -112
  1727. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_libxml2_hacks.h +0 -12
  1728. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_libxml2_hacks.o +0 -0
  1729. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_namespace.c +0 -111
  1730. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_namespace.h +0 -14
  1731. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_namespace.o +0 -0
  1732. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_node.c +0 -1753
  1733. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_node.h +0 -13
  1734. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_node.o +0 -0
  1735. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_node_set.c +0 -486
  1736. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_node_set.h +0 -12
  1737. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_node_set.o +0 -0
  1738. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_processing_instruction.c +0 -56
  1739. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_processing_instruction.h +0 -9
  1740. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_processing_instruction.o +0 -0
  1741. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_reader.c +0 -668
  1742. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_reader.h +0 -10
  1743. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_reader.o +0 -0
  1744. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_relax_ng.c +0 -161
  1745. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_relax_ng.h +0 -9
  1746. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_relax_ng.o +0 -0
  1747. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_sax_parser.c +0 -310
  1748. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_sax_parser.h +0 -39
  1749. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_sax_parser.o +0 -0
  1750. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_sax_parser_context.c +0 -262
  1751. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_sax_parser_context.h +0 -10
  1752. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_sax_parser_context.o +0 -0
  1753. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_sax_push_parser.c +0 -159
  1754. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_sax_push_parser.h +0 -9
  1755. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_sax_push_parser.o +0 -0
  1756. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_schema.c +0 -205
  1757. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_schema.h +0 -9
  1758. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_schema.o +0 -0
  1759. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_syntax_error.c +0 -64
  1760. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_syntax_error.h +0 -13
  1761. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_syntax_error.o +0 -0
  1762. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_text.c +0 -52
  1763. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_text.h +0 -9
  1764. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_text.o +0 -0
  1765. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_xpath_context.c +0 -298
  1766. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_xpath_context.h +0 -10
  1767. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xml_xpath_context.o +0 -0
  1768. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xslt_stylesheet.c +0 -270
  1769. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xslt_stylesheet.h +0 -14
  1770. data/vendor/bundle/gems/nokogiri-1.10.2/ext/nokogiri/xslt_stylesheet.o +0 -0
  1771. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri.rb +0 -144
  1772. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/css.rb +0 -27
  1773. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/css/node.rb +0 -52
  1774. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/css/parser.rb +0 -750
  1775. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/css/parser.y +0 -272
  1776. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/css/parser_extras.rb +0 -91
  1777. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/css/syntax_error.rb +0 -7
  1778. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/css/tokenizer.rb +0 -152
  1779. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/css/tokenizer.rex +0 -55
  1780. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/css/xpath_visitor.rb +0 -230
  1781. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/decorators/slop.rb +0 -42
  1782. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/html.rb +0 -37
  1783. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/html/builder.rb +0 -35
  1784. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/html/document.rb +0 -335
  1785. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/html/document_fragment.rb +0 -49
  1786. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/html/element_description.rb +0 -23
  1787. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/html/element_description_defaults.rb +0 -671
  1788. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/html/entity_lookup.rb +0 -13
  1789. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/html/sax/parser.rb +0 -62
  1790. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/html/sax/parser_context.rb +0 -16
  1791. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/html/sax/push_parser.rb +0 -36
  1792. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/nokogiri.so +0 -0
  1793. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/syntax_error.rb +0 -4
  1794. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/version.rb +0 -109
  1795. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml.rb +0 -75
  1796. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/attr.rb +0 -14
  1797. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/attribute_decl.rb +0 -18
  1798. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/builder.rb +0 -443
  1799. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/cdata.rb +0 -11
  1800. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/character_data.rb +0 -7
  1801. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/document.rb +0 -285
  1802. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/document_fragment.rb +0 -160
  1803. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/dtd.rb +0 -32
  1804. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/element_content.rb +0 -36
  1805. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/element_decl.rb +0 -13
  1806. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/entity_decl.rb +0 -19
  1807. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/entity_reference.rb +0 -18
  1808. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/namespace.rb +0 -13
  1809. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/node.rb +0 -902
  1810. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/node/save_options.rb +0 -61
  1811. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/node_set.rb +0 -371
  1812. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/notation.rb +0 -6
  1813. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/parse_options.rb +0 -120
  1814. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/pp.rb +0 -2
  1815. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/pp/character_data.rb +0 -18
  1816. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/pp/node.rb +0 -56
  1817. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/processing_instruction.rb +0 -8
  1818. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/reader.rb +0 -112
  1819. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/relax_ng.rb +0 -32
  1820. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/sax.rb +0 -4
  1821. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/sax/document.rb +0 -171
  1822. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/sax/parser.rb +0 -122
  1823. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/sax/parser_context.rb +0 -16
  1824. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/sax/push_parser.rb +0 -60
  1825. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/schema.rb +0 -63
  1826. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/searchable.rb +0 -230
  1827. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/syntax_error.rb +0 -70
  1828. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/text.rb +0 -9
  1829. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/xpath.rb +0 -10
  1830. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/xpath/syntax_error.rb +0 -11
  1831. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xml/xpath_context.rb +0 -16
  1832. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xslt.rb +0 -56
  1833. data/vendor/bundle/gems/nokogiri-1.10.2/lib/nokogiri/xslt/stylesheet.rb +0 -25
  1834. data/vendor/bundle/gems/nokogiri-1.10.2/lib/xsd/xmlparser/nokogiri.rb +0 -102
  1835. data/vendor/bundle/gems/nokogiri-1.10.2/patches/libxml2/0001-Revert-Do-not-URI-escape-in-server-side-includes.patch +0 -78
  1836. data/vendor/bundle/gems/nokogiri-1.10.2/patches/libxml2/0002-Remove-script-macro-support.patch +0 -40
  1837. data/vendor/bundle/gems/nokogiri-1.10.2/patches/libxml2/0003-Update-entities-to-remove-handling-of-ssi.patch +0 -44
  1838. data/vendor/bundle/gems/octokit-4.13.0/CONTRIBUTING.md +0 -22
  1839. data/vendor/bundle/gems/octokit-4.13.0/LICENSE.md +0 -20
  1840. data/vendor/bundle/gems/octokit-4.13.0/README.md +0 -767
  1841. data/vendor/bundle/gems/octokit-4.13.0/Rakefile +0 -22
  1842. data/vendor/bundle/gems/octokit-4.13.0/lib/ext/sawyer/relation.rb +0 -10
  1843. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit.rb +0 -59
  1844. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/arguments.rb +0 -14
  1845. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/authentication.rb +0 -82
  1846. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client.rb +0 -243
  1847. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/apps.rb +0 -209
  1848. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/authorizations.rb +0 -250
  1849. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/commit_comments.rb +0 -95
  1850. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/commits.rb +0 -239
  1851. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/community_profile.rb +0 -22
  1852. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/contents.rb +0 -164
  1853. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/deployments.rb +0 -72
  1854. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/downloads.rb +0 -50
  1855. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/emojis.rb +0 -18
  1856. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/events.rb +0 -151
  1857. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/feeds.rb +0 -33
  1858. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/gists.rb +0 -234
  1859. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/gitignore.rb +0 -43
  1860. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/hooks.rb +0 -297
  1861. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/issues.rb +0 -363
  1862. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/labels.rb +0 -156
  1863. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/legacy_search.rb +0 -42
  1864. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/licenses.rb +0 -45
  1865. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/markdown.rb +0 -27
  1866. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/marketplace.rb +0 -56
  1867. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/meta.rb +0 -21
  1868. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/milestones.rb +0 -87
  1869. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/notifications.rb +0 -167
  1870. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/objects.rb +0 -141
  1871. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/organizations.rb +0 -792
  1872. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/pages.rb +0 -63
  1873. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/projects.rb +0 -314
  1874. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/pub_sub_hubbub.rb +0 -111
  1875. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/pull_requests.rb +0 -303
  1876. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/rate_limit.rb +0 -54
  1877. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/reactions.rb +0 -158
  1878. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/refs.rb +0 -118
  1879. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/releases.rb +0 -164
  1880. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/repositories.rb +0 -701
  1881. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/repository_invitations.rb +0 -96
  1882. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/reviews.rb +0 -209
  1883. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/say.rb +0 -19
  1884. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/search.rb +0 -91
  1885. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/service_status.rb +0 -38
  1886. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/source_import.rb +0 -161
  1887. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/stats.rb +0 -107
  1888. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/statuses.rb +0 -47
  1889. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/traffic.rb +0 -69
  1890. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/client/users.rb +0 -355
  1891. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/configurable.rb +0 -151
  1892. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/connection.rb +0 -200
  1893. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/default.rb +0 -176
  1894. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/enterprise_admin_client.rb +0 -40
  1895. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/enterprise_admin_client/admin_stats.rb +0 -120
  1896. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/enterprise_admin_client/license.rb +0 -18
  1897. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/enterprise_admin_client/orgs.rb +0 -27
  1898. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/enterprise_admin_client/search_indexing.rb +0 -83
  1899. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/enterprise_admin_client/users.rb +0 -128
  1900. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/enterprise_management_console_client.rb +0 -50
  1901. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/enterprise_management_console_client/management_console.rb +0 -176
  1902. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/error.rb +0 -300
  1903. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/gist.rb +0 -36
  1904. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/middleware/follow_redirects.rb +0 -131
  1905. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/organization.rb +0 -17
  1906. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/preview.rb +0 -41
  1907. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/rate_limit.rb +0 -33
  1908. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/repo_arguments.rb +0 -19
  1909. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/repository.rb +0 -95
  1910. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/response/feed_parser.rb +0 -21
  1911. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/response/raise_error.rb +0 -21
  1912. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/user.rb +0 -19
  1913. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/version.rb +0 -17
  1914. data/vendor/bundle/gems/octokit-4.13.0/lib/octokit/warnable.rb +0 -17
  1915. data/vendor/bundle/gems/octokit-4.13.0/octokit.gemspec +0 -22
  1916. data/vendor/bundle/gems/phantomjs-2.1.1.0/Gemfile +0 -4
  1917. data/vendor/bundle/gems/phantomjs-2.1.1.0/LICENSE +0 -27
  1918. data/vendor/bundle/gems/phantomjs-2.1.1.0/README.md +0 -78
  1919. data/vendor/bundle/gems/phantomjs-2.1.1.0/Rakefile +0 -2
  1920. data/vendor/bundle/gems/phantomjs-2.1.1.0/lib/phantomjs.rb +0 -61
  1921. data/vendor/bundle/gems/phantomjs-2.1.1.0/lib/phantomjs/platform.rb +0 -162
  1922. data/vendor/bundle/gems/phantomjs-2.1.1.0/lib/phantomjs/poltergeist.rb +0 -13
  1923. data/vendor/bundle/gems/phantomjs-2.1.1.0/lib/phantomjs/version.rb +0 -3
  1924. data/vendor/bundle/gems/phantomjs-2.1.1.0/phantomjs.gemspec +0 -27
  1925. data/vendor/bundle/gems/phantomjs-2.1.1.0/spec/phantomjs_spec.rb +0 -50
  1926. data/vendor/bundle/gems/phantomjs-2.1.1.0/spec/platform_spec.rb +0 -203
  1927. data/vendor/bundle/gems/phantomjs-2.1.1.0/spec/runner.js +0 -5
  1928. data/vendor/bundle/gems/phantomjs-2.1.1.0/spec/spec_helper.rb +0 -11
  1929. data/vendor/bundle/gems/pit-0.0.7/ChangeLog +0 -87
  1930. data/vendor/bundle/gems/pit-0.0.7/Gemfile +0 -6
  1931. data/vendor/bundle/gems/pit-0.0.7/README +0 -59
  1932. data/vendor/bundle/gems/pit-0.0.7/Rakefile +0 -9
  1933. data/vendor/bundle/gems/pit-0.0.7/bin/pit +0 -137
  1934. data/vendor/bundle/gems/pit-0.0.7/lib/pit.rb +0 -97
  1935. data/vendor/bundle/gems/pit-0.0.7/lib/pit/version.rb +0 -4
  1936. data/vendor/bundle/gems/pit-0.0.7/pit.gemspec +0 -19
  1937. data/vendor/bundle/gems/pit-0.0.7/test/pit_test.rb +0 -112
  1938. data/vendor/bundle/gems/pit-0.0.7/test/test_helper.rb +0 -3
  1939. data/vendor/bundle/gems/power_assert-1.1.4/BSDL +0 -22
  1940. data/vendor/bundle/gems/power_assert-1.1.4/COPYING +0 -57
  1941. data/vendor/bundle/gems/power_assert-1.1.4/Gemfile +0 -9
  1942. data/vendor/bundle/gems/power_assert-1.1.4/LEGAL +0 -4
  1943. data/vendor/bundle/gems/power_assert-1.1.4/README.rdoc +0 -81
  1944. data/vendor/bundle/gems/power_assert-1.1.4/Rakefile +0 -59
  1945. data/vendor/bundle/gems/power_assert-1.1.4/bin/console +0 -12
  1946. data/vendor/bundle/gems/power_assert-1.1.4/bin/setup +0 -6
  1947. data/vendor/bundle/gems/power_assert-1.1.4/lib/power_assert.rb +0 -98
  1948. data/vendor/bundle/gems/power_assert-1.1.4/lib/power_assert/colorize.rb +0 -9
  1949. data/vendor/bundle/gems/power_assert-1.1.4/lib/power_assert/configuration.rb +0 -46
  1950. data/vendor/bundle/gems/power_assert-1.1.4/lib/power_assert/context.rb +0 -235
  1951. data/vendor/bundle/gems/power_assert-1.1.4/lib/power_assert/enable_tracepoint_events.rb +0 -91
  1952. data/vendor/bundle/gems/power_assert-1.1.4/lib/power_assert/inspector.rb +0 -61
  1953. data/vendor/bundle/gems/power_assert-1.1.4/lib/power_assert/parser.rb +0 -251
  1954. data/vendor/bundle/gems/power_assert-1.1.4/lib/power_assert/version.rb +0 -3
  1955. data/vendor/bundle/gems/power_assert-1.1.4/power_assert.gemspec +0 -31
  1956. data/vendor/bundle/gems/public_suffix-3.0.3/2.0-Upgrade.md +0 -52
  1957. data/vendor/bundle/gems/public_suffix-3.0.3/CHANGELOG.md +0 -340
  1958. data/vendor/bundle/gems/public_suffix-3.0.3/Gemfile +0 -10
  1959. data/vendor/bundle/gems/public_suffix-3.0.3/LICENSE.txt +0 -22
  1960. data/vendor/bundle/gems/public_suffix-3.0.3/README.md +0 -202
  1961. data/vendor/bundle/gems/public_suffix-3.0.3/Rakefile +0 -49
  1962. data/vendor/bundle/gems/public_suffix-3.0.3/bin/console +0 -14
  1963. data/vendor/bundle/gems/public_suffix-3.0.3/data/list.txt +0 -12659
  1964. data/vendor/bundle/gems/public_suffix-3.0.3/lib/public_suffix.rb +0 -175
  1965. data/vendor/bundle/gems/public_suffix-3.0.3/lib/public_suffix/domain.rb +0 -233
  1966. data/vendor/bundle/gems/public_suffix-3.0.3/lib/public_suffix/errors.rb +0 -39
  1967. data/vendor/bundle/gems/public_suffix-3.0.3/lib/public_suffix/list.rb +0 -243
  1968. data/vendor/bundle/gems/public_suffix-3.0.3/lib/public_suffix/rule.rb +0 -348
  1969. data/vendor/bundle/gems/public_suffix-3.0.3/lib/public_suffix/version.rb +0 -10
  1970. data/vendor/bundle/gems/public_suffix-3.0.3/public_suffix.gemspec +0 -25
  1971. data/vendor/bundle/gems/public_suffix-3.0.3/test/acceptance_test.rb +0 -127
  1972. data/vendor/bundle/gems/public_suffix-3.0.3/test/benchmarks/bm_find.rb +0 -66
  1973. data/vendor/bundle/gems/public_suffix-3.0.3/test/benchmarks/bm_find_all.rb +0 -102
  1974. data/vendor/bundle/gems/public_suffix-3.0.3/test/benchmarks/bm_names.rb +0 -91
  1975. data/vendor/bundle/gems/public_suffix-3.0.3/test/benchmarks/bm_select.rb +0 -26
  1976. data/vendor/bundle/gems/public_suffix-3.0.3/test/benchmarks/bm_select_incremental.rb +0 -25
  1977. data/vendor/bundle/gems/public_suffix-3.0.3/test/benchmarks/bm_valid.rb +0 -101
  1978. data/vendor/bundle/gems/public_suffix-3.0.3/test/profilers/domain_profiler.rb +0 -12
  1979. data/vendor/bundle/gems/public_suffix-3.0.3/test/profilers/find_profiler.rb +0 -12
  1980. data/vendor/bundle/gems/public_suffix-3.0.3/test/profilers/find_profiler_jp.rb +0 -12
  1981. data/vendor/bundle/gems/public_suffix-3.0.3/test/profilers/initialization_profiler.rb +0 -11
  1982. data/vendor/bundle/gems/public_suffix-3.0.3/test/profilers/list_profsize.rb +0 -11
  1983. data/vendor/bundle/gems/public_suffix-3.0.3/test/profilers/object_binsize.rb +0 -57
  1984. data/vendor/bundle/gems/public_suffix-3.0.3/test/psl_test.rb +0 -49
  1985. data/vendor/bundle/gems/public_suffix-3.0.3/test/test_helper.rb +0 -13
  1986. data/vendor/bundle/gems/public_suffix-3.0.3/test/tests.txt +0 -98
  1987. data/vendor/bundle/gems/public_suffix-3.0.3/test/unit/domain_test.rb +0 -104
  1988. data/vendor/bundle/gems/public_suffix-3.0.3/test/unit/errors_test.rb +0 -23
  1989. data/vendor/bundle/gems/public_suffix-3.0.3/test/unit/list_test.rb +0 -239
  1990. data/vendor/bundle/gems/public_suffix-3.0.3/test/unit/public_suffix_test.rb +0 -186
  1991. data/vendor/bundle/gems/public_suffix-3.0.3/test/unit/rule_test.rb +0 -220
  1992. data/vendor/bundle/gems/rack-2.0.6/COPYING +0 -18
  1993. data/vendor/bundle/gems/rack-2.0.6/HISTORY.md +0 -505
  1994. data/vendor/bundle/gems/rack-2.0.6/README.rdoc +0 -302
  1995. data/vendor/bundle/gems/rack-2.0.6/Rakefile +0 -116
  1996. data/vendor/bundle/gems/rack-2.0.6/SPEC +0 -264
  1997. data/vendor/bundle/gems/rack-2.0.6/bin/rackup +0 -4
  1998. data/vendor/bundle/gems/rack-2.0.6/contrib/rack.png +0 -0
  1999. data/vendor/bundle/gems/rack-2.0.6/contrib/rack.svg +0 -150
  2000. data/vendor/bundle/gems/rack-2.0.6/contrib/rack_logo.svg +0 -164
  2001. data/vendor/bundle/gems/rack-2.0.6/contrib/rdoc.css +0 -412
  2002. data/vendor/bundle/gems/rack-2.0.6/example/lobster.ru +0 -4
  2003. data/vendor/bundle/gems/rack-2.0.6/example/protectedlobster.rb +0 -14
  2004. data/vendor/bundle/gems/rack-2.0.6/example/protectedlobster.ru +0 -8
  2005. data/vendor/bundle/gems/rack-2.0.6/lib/rack.rb +0 -147
  2006. data/vendor/bundle/gems/rack-2.0.6/lib/rack/auth/abstract/handler.rb +0 -37
  2007. data/vendor/bundle/gems/rack-2.0.6/lib/rack/auth/abstract/request.rb +0 -47
  2008. data/vendor/bundle/gems/rack-2.0.6/lib/rack/auth/basic.rb +0 -58
  2009. data/vendor/bundle/gems/rack-2.0.6/lib/rack/auth/digest/md5.rb +0 -129
  2010. data/vendor/bundle/gems/rack-2.0.6/lib/rack/auth/digest/nonce.rb +0 -51
  2011. data/vendor/bundle/gems/rack-2.0.6/lib/rack/auth/digest/params.rb +0 -52
  2012. data/vendor/bundle/gems/rack-2.0.6/lib/rack/auth/digest/request.rb +0 -41
  2013. data/vendor/bundle/gems/rack-2.0.6/lib/rack/body_proxy.rb +0 -44
  2014. data/vendor/bundle/gems/rack-2.0.6/lib/rack/builder.rb +0 -164
  2015. data/vendor/bundle/gems/rack-2.0.6/lib/rack/cascade.rb +0 -52
  2016. data/vendor/bundle/gems/rack-2.0.6/lib/rack/chunked.rb +0 -69
  2017. data/vendor/bundle/gems/rack-2.0.6/lib/rack/common_logger.rb +0 -72
  2018. data/vendor/bundle/gems/rack-2.0.6/lib/rack/conditional_get.rb +0 -79
  2019. data/vendor/bundle/gems/rack-2.0.6/lib/rack/config.rb +0 -20
  2020. data/vendor/bundle/gems/rack-2.0.6/lib/rack/content_length.rb +0 -37
  2021. data/vendor/bundle/gems/rack-2.0.6/lib/rack/content_type.rb +0 -29
  2022. data/vendor/bundle/gems/rack-2.0.6/lib/rack/deflater.rb +0 -119
  2023. data/vendor/bundle/gems/rack-2.0.6/lib/rack/directory.rb +0 -179
  2024. data/vendor/bundle/gems/rack-2.0.6/lib/rack/etag.rb +0 -74
  2025. data/vendor/bundle/gems/rack-2.0.6/lib/rack/events.rb +0 -154
  2026. data/vendor/bundle/gems/rack-2.0.6/lib/rack/file.rb +0 -176
  2027. data/vendor/bundle/gems/rack-2.0.6/lib/rack/handler.rb +0 -99
  2028. data/vendor/bundle/gems/rack-2.0.6/lib/rack/handler/cgi.rb +0 -60
  2029. data/vendor/bundle/gems/rack-2.0.6/lib/rack/handler/fastcgi.rb +0 -100
  2030. data/vendor/bundle/gems/rack-2.0.6/lib/rack/handler/lsws.rb +0 -61
  2031. data/vendor/bundle/gems/rack-2.0.6/lib/rack/handler/scgi.rb +0 -70
  2032. data/vendor/bundle/gems/rack-2.0.6/lib/rack/handler/thin.rb +0 -36
  2033. data/vendor/bundle/gems/rack-2.0.6/lib/rack/handler/webrick.rb +0 -120
  2034. data/vendor/bundle/gems/rack-2.0.6/lib/rack/head.rb +0 -25
  2035. data/vendor/bundle/gems/rack-2.0.6/lib/rack/lint.rb +0 -760
  2036. data/vendor/bundle/gems/rack-2.0.6/lib/rack/lobster.rb +0 -70
  2037. data/vendor/bundle/gems/rack-2.0.6/lib/rack/lock.rb +0 -31
  2038. data/vendor/bundle/gems/rack-2.0.6/lib/rack/logger.rb +0 -18
  2039. data/vendor/bundle/gems/rack-2.0.6/lib/rack/media_type.rb +0 -38
  2040. data/vendor/bundle/gems/rack-2.0.6/lib/rack/method_override.rb +0 -50
  2041. data/vendor/bundle/gems/rack-2.0.6/lib/rack/mime.rb +0 -677
  2042. data/vendor/bundle/gems/rack-2.0.6/lib/rack/mock.rb +0 -196
  2043. data/vendor/bundle/gems/rack-2.0.6/lib/rack/multipart.rb +0 -63
  2044. data/vendor/bundle/gems/rack-2.0.6/lib/rack/multipart/generator.rb +0 -93
  2045. data/vendor/bundle/gems/rack-2.0.6/lib/rack/multipart/parser.rb +0 -369
  2046. data/vendor/bundle/gems/rack-2.0.6/lib/rack/multipart/uploaded_file.rb +0 -33
  2047. data/vendor/bundle/gems/rack-2.0.6/lib/rack/null_logger.rb +0 -37
  2048. data/vendor/bundle/gems/rack-2.0.6/lib/rack/query_parser.rb +0 -192
  2049. data/vendor/bundle/gems/rack-2.0.6/lib/rack/recursive.rb +0 -62
  2050. data/vendor/bundle/gems/rack-2.0.6/lib/rack/reloader.rb +0 -110
  2051. data/vendor/bundle/gems/rack-2.0.6/lib/rack/request.rb +0 -500
  2052. data/vendor/bundle/gems/rack-2.0.6/lib/rack/response.rb +0 -235
  2053. data/vendor/bundle/gems/rack-2.0.6/lib/rack/rewindable_input.rb +0 -93
  2054. data/vendor/bundle/gems/rack-2.0.6/lib/rack/runtime.rb +0 -32
  2055. data/vendor/bundle/gems/rack-2.0.6/lib/rack/sendfile.rb +0 -158
  2056. data/vendor/bundle/gems/rack-2.0.6/lib/rack/server.rb +0 -395
  2057. data/vendor/bundle/gems/rack-2.0.6/lib/rack/session/abstract/id.rb +0 -445
  2058. data/vendor/bundle/gems/rack-2.0.6/lib/rack/session/cookie.rb +0 -195
  2059. data/vendor/bundle/gems/rack-2.0.6/lib/rack/session/memcache.rb +0 -93
  2060. data/vendor/bundle/gems/rack-2.0.6/lib/rack/session/pool.rb +0 -76
  2061. data/vendor/bundle/gems/rack-2.0.6/lib/rack/show_exceptions.rb +0 -386
  2062. data/vendor/bundle/gems/rack-2.0.6/lib/rack/show_status.rb +0 -113
  2063. data/vendor/bundle/gems/rack-2.0.6/lib/rack/static.rb +0 -175
  2064. data/vendor/bundle/gems/rack-2.0.6/lib/rack/tempfile_reaper.rb +0 -22
  2065. data/vendor/bundle/gems/rack-2.0.6/lib/rack/urlmap.rb +0 -91
  2066. data/vendor/bundle/gems/rack-2.0.6/lib/rack/utils.rb +0 -620
  2067. data/vendor/bundle/gems/rack-2.0.6/rack.gemspec +0 -34
  2068. data/vendor/bundle/gems/rack-2.0.6/test/builder/an_underscore_app.rb +0 -5
  2069. data/vendor/bundle/gems/rack-2.0.6/test/builder/anything.rb +0 -5
  2070. data/vendor/bundle/gems/rack-2.0.6/test/builder/comment.ru +0 -4
  2071. data/vendor/bundle/gems/rack-2.0.6/test/builder/end.ru +0 -5
  2072. data/vendor/bundle/gems/rack-2.0.6/test/builder/line.ru +0 -1
  2073. data/vendor/bundle/gems/rack-2.0.6/test/builder/options.ru +0 -2
  2074. data/vendor/bundle/gems/rack-2.0.6/test/cgi/assets/folder/test.js +0 -1
  2075. data/vendor/bundle/gems/rack-2.0.6/test/cgi/assets/fonts/font.eot +0 -1
  2076. data/vendor/bundle/gems/rack-2.0.6/test/cgi/assets/images/image.png +0 -1
  2077. data/vendor/bundle/gems/rack-2.0.6/test/cgi/assets/index.html +0 -1
  2078. data/vendor/bundle/gems/rack-2.0.6/test/cgi/assets/javascripts/app.js +0 -1
  2079. data/vendor/bundle/gems/rack-2.0.6/test/cgi/assets/stylesheets/app.css +0 -1
  2080. data/vendor/bundle/gems/rack-2.0.6/test/cgi/lighttpd.conf +0 -26
  2081. data/vendor/bundle/gems/rack-2.0.6/test/cgi/rackup_stub.rb +0 -6
  2082. data/vendor/bundle/gems/rack-2.0.6/test/cgi/sample_rackup.ru +0 -5
  2083. data/vendor/bundle/gems/rack-2.0.6/test/cgi/test +0 -9
  2084. data/vendor/bundle/gems/rack-2.0.6/test/cgi/test+directory/test+file +0 -1
  2085. data/vendor/bundle/gems/rack-2.0.6/test/cgi/test.fcgi +0 -9
  2086. data/vendor/bundle/gems/rack-2.0.6/test/cgi/test.gz +0 -0
  2087. data/vendor/bundle/gems/rack-2.0.6/test/cgi/test.ru +0 -5
  2088. data/vendor/bundle/gems/rack-2.0.6/test/gemloader.rb +0 -10
  2089. data/vendor/bundle/gems/rack-2.0.6/test/helper.rb +0 -34
  2090. data/vendor/bundle/gems/rack-2.0.6/test/multipart/bad_robots +0 -259
  2091. data/vendor/bundle/gems/rack-2.0.6/test/multipart/binary +0 -0
  2092. data/vendor/bundle/gems/rack-2.0.6/test/multipart/content_type_and_no_filename +0 -6
  2093. data/vendor/bundle/gems/rack-2.0.6/test/multipart/empty +0 -10
  2094. data/vendor/bundle/gems/rack-2.0.6/test/multipart/fail_16384_nofile +0 -814
  2095. data/vendor/bundle/gems/rack-2.0.6/test/multipart/file1.txt +0 -1
  2096. data/vendor/bundle/gems/rack-2.0.6/test/multipart/filename_and_modification_param +0 -7
  2097. data/vendor/bundle/gems/rack-2.0.6/test/multipart/filename_and_no_name +0 -6
  2098. data/vendor/bundle/gems/rack-2.0.6/test/multipart/filename_with_encoded_words +0 -7
  2099. data/vendor/bundle/gems/rack-2.0.6/test/multipart/filename_with_escaped_quotes +0 -6
  2100. data/vendor/bundle/gems/rack-2.0.6/test/multipart/filename_with_escaped_quotes_and_modification_param +0 -7
  2101. data/vendor/bundle/gems/rack-2.0.6/test/multipart/filename_with_null_byte +0 -7
  2102. data/vendor/bundle/gems/rack-2.0.6/test/multipart/filename_with_percent_escaped_quotes +0 -6
  2103. data/vendor/bundle/gems/rack-2.0.6/test/multipart/filename_with_single_quote +0 -7
  2104. data/vendor/bundle/gems/rack-2.0.6/test/multipart/filename_with_unescaped_percentages +0 -6
  2105. data/vendor/bundle/gems/rack-2.0.6/test/multipart/filename_with_unescaped_percentages2 +0 -6
  2106. data/vendor/bundle/gems/rack-2.0.6/test/multipart/filename_with_unescaped_percentages3 +0 -6
  2107. data/vendor/bundle/gems/rack-2.0.6/test/multipart/filename_with_unescaped_quotes +0 -6
  2108. data/vendor/bundle/gems/rack-2.0.6/test/multipart/ie +0 -6
  2109. data/vendor/bundle/gems/rack-2.0.6/test/multipart/invalid_character +0 -6
  2110. data/vendor/bundle/gems/rack-2.0.6/test/multipart/mixed_files +0 -21
  2111. data/vendor/bundle/gems/rack-2.0.6/test/multipart/nested +0 -10
  2112. data/vendor/bundle/gems/rack-2.0.6/test/multipart/none +0 -9
  2113. data/vendor/bundle/gems/rack-2.0.6/test/multipart/quoted +0 -15
  2114. data/vendor/bundle/gems/rack-2.0.6/test/multipart/rack-logo.png +0 -0
  2115. data/vendor/bundle/gems/rack-2.0.6/test/multipart/semicolon +0 -6
  2116. data/vendor/bundle/gems/rack-2.0.6/test/multipart/text +0 -15
  2117. data/vendor/bundle/gems/rack-2.0.6/test/multipart/three_files_three_fields +0 -31
  2118. data/vendor/bundle/gems/rack-2.0.6/test/multipart/unity3d_wwwform +0 -11
  2119. data/vendor/bundle/gems/rack-2.0.6/test/multipart/webkit +0 -32
  2120. data/vendor/bundle/gems/rack-2.0.6/test/rackup/config.ru +0 -31
  2121. data/vendor/bundle/gems/rack-2.0.6/test/registering_handler/rack/handler/registering_myself.rb +0 -8
  2122. data/vendor/bundle/gems/rack-2.0.6/test/spec_auth_basic.rb +0 -89
  2123. data/vendor/bundle/gems/rack-2.0.6/test/spec_auth_digest.rb +0 -260
  2124. data/vendor/bundle/gems/rack-2.0.6/test/spec_body_proxy.rb +0 -85
  2125. data/vendor/bundle/gems/rack-2.0.6/test/spec_builder.rb +0 -233
  2126. data/vendor/bundle/gems/rack-2.0.6/test/spec_cascade.rb +0 -63
  2127. data/vendor/bundle/gems/rack-2.0.6/test/spec_cgi.rb +0 -84
  2128. data/vendor/bundle/gems/rack-2.0.6/test/spec_chunked.rb +0 -103
  2129. data/vendor/bundle/gems/rack-2.0.6/test/spec_common_logger.rb +0 -95
  2130. data/vendor/bundle/gems/rack-2.0.6/test/spec_conditional_get.rb +0 -103
  2131. data/vendor/bundle/gems/rack-2.0.6/test/spec_config.rb +0 -23
  2132. data/vendor/bundle/gems/rack-2.0.6/test/spec_content_length.rb +0 -86
  2133. data/vendor/bundle/gems/rack-2.0.6/test/spec_content_type.rb +0 -46
  2134. data/vendor/bundle/gems/rack-2.0.6/test/spec_deflater.rb +0 -375
  2135. data/vendor/bundle/gems/rack-2.0.6/test/spec_directory.rb +0 -148
  2136. data/vendor/bundle/gems/rack-2.0.6/test/spec_etag.rb +0 -108
  2137. data/vendor/bundle/gems/rack-2.0.6/test/spec_events.rb +0 -133
  2138. data/vendor/bundle/gems/rack-2.0.6/test/spec_fastcgi.rb +0 -85
  2139. data/vendor/bundle/gems/rack-2.0.6/test/spec_file.rb +0 -264
  2140. data/vendor/bundle/gems/rack-2.0.6/test/spec_handler.rb +0 -57
  2141. data/vendor/bundle/gems/rack-2.0.6/test/spec_head.rb +0 -46
  2142. data/vendor/bundle/gems/rack-2.0.6/test/spec_lint.rb +0 -515
  2143. data/vendor/bundle/gems/rack-2.0.6/test/spec_lobster.rb +0 -59
  2144. data/vendor/bundle/gems/rack-2.0.6/test/spec_lock.rb +0 -204
  2145. data/vendor/bundle/gems/rack-2.0.6/test/spec_logger.rb +0 -24
  2146. data/vendor/bundle/gems/rack-2.0.6/test/spec_media_type.rb +0 -42
  2147. data/vendor/bundle/gems/rack-2.0.6/test/spec_method_override.rb +0 -110
  2148. data/vendor/bundle/gems/rack-2.0.6/test/spec_mime.rb +0 -51
  2149. data/vendor/bundle/gems/rack-2.0.6/test/spec_mock.rb +0 -359
  2150. data/vendor/bundle/gems/rack-2.0.6/test/spec_multipart.rb +0 -722
  2151. data/vendor/bundle/gems/rack-2.0.6/test/spec_null_logger.rb +0 -21
  2152. data/vendor/bundle/gems/rack-2.0.6/test/spec_recursive.rb +0 -75
  2153. data/vendor/bundle/gems/rack-2.0.6/test/spec_request.rb +0 -1398
  2154. data/vendor/bundle/gems/rack-2.0.6/test/spec_response.rb +0 -510
  2155. data/vendor/bundle/gems/rack-2.0.6/test/spec_rewindable_input.rb +0 -128
  2156. data/vendor/bundle/gems/rack-2.0.6/test/spec_runtime.rb +0 -50
  2157. data/vendor/bundle/gems/rack-2.0.6/test/spec_sendfile.rb +0 -125
  2158. data/vendor/bundle/gems/rack-2.0.6/test/spec_server.rb +0 -193
  2159. data/vendor/bundle/gems/rack-2.0.6/test/spec_session_abstract_id.rb +0 -31
  2160. data/vendor/bundle/gems/rack-2.0.6/test/spec_session_abstract_session_hash.rb +0 -45
  2161. data/vendor/bundle/gems/rack-2.0.6/test/spec_session_cookie.rb +0 -442
  2162. data/vendor/bundle/gems/rack-2.0.6/test/spec_session_memcache.rb +0 -320
  2163. data/vendor/bundle/gems/rack-2.0.6/test/spec_session_pool.rb +0 -210
  2164. data/vendor/bundle/gems/rack-2.0.6/test/spec_show_exceptions.rb +0 -93
  2165. data/vendor/bundle/gems/rack-2.0.6/test/spec_show_status.rb +0 -104
  2166. data/vendor/bundle/gems/rack-2.0.6/test/spec_static.rb +0 -184
  2167. data/vendor/bundle/gems/rack-2.0.6/test/spec_tempfile_reaper.rb +0 -64
  2168. data/vendor/bundle/gems/rack-2.0.6/test/spec_thin.rb +0 -96
  2169. data/vendor/bundle/gems/rack-2.0.6/test/spec_urlmap.rb +0 -237
  2170. data/vendor/bundle/gems/rack-2.0.6/test/spec_utils.rb +0 -742
  2171. data/vendor/bundle/gems/rack-2.0.6/test/spec_version.rb +0 -11
  2172. data/vendor/bundle/gems/rack-2.0.6/test/spec_webrick.rb +0 -206
  2173. data/vendor/bundle/gems/rack-2.0.6/test/static/another/index.html +0 -1
  2174. data/vendor/bundle/gems/rack-2.0.6/test/static/foo.html +0 -1
  2175. data/vendor/bundle/gems/rack-2.0.6/test/static/index.html +0 -1
  2176. data/vendor/bundle/gems/rack-2.0.6/test/testrequest.rb +0 -78
  2177. data/vendor/bundle/gems/rack-2.0.6/test/unregistered_handler/rack/handler/unregistered.rb +0 -7
  2178. data/vendor/bundle/gems/rack-2.0.6/test/unregistered_handler/rack/handler/unregistered_long_one.rb +0 -7
  2179. data/vendor/bundle/gems/rack-test-1.1.0/History.md +0 -256
  2180. data/vendor/bundle/gems/rack-test-1.1.0/MIT-LICENSE.txt +0 -19
  2181. data/vendor/bundle/gems/rack-test-1.1.0/README.md +0 -150
  2182. data/vendor/bundle/gems/rack-test-1.1.0/lib/rack/mock_session.rb +0 -63
  2183. data/vendor/bundle/gems/rack-test-1.1.0/lib/rack/test.rb +0 -334
  2184. data/vendor/bundle/gems/rack-test-1.1.0/lib/rack/test/cookie_jar.rb +0 -194
  2185. data/vendor/bundle/gems/rack-test-1.1.0/lib/rack/test/methods.rb +0 -83
  2186. data/vendor/bundle/gems/rack-test-1.1.0/lib/rack/test/mock_digest_request.rb +0 -25
  2187. data/vendor/bundle/gems/rack-test-1.1.0/lib/rack/test/uploaded_file.rb +0 -85
  2188. data/vendor/bundle/gems/rack-test-1.1.0/lib/rack/test/utils.rb +0 -144
  2189. data/vendor/bundle/gems/rack-test-1.1.0/lib/rack/test/version.rb +0 -5
  2190. data/vendor/bundle/gems/racksh-1.0.0/CHANGELOG.txt +0 -34
  2191. data/vendor/bundle/gems/racksh-1.0.0/README.markdown +0 -150
  2192. data/vendor/bundle/gems/racksh-1.0.0/bin/racksh +0 -25
  2193. data/vendor/bundle/gems/racksh-1.0.0/lib/racksh/init.rb +0 -53
  2194. data/vendor/bundle/gems/racksh-1.0.0/lib/racksh/irb.rb +0 -2
  2195. data/vendor/bundle/gems/racksh-1.0.0/lib/racksh/session.rb +0 -18
  2196. data/vendor/bundle/gems/racksh-1.0.0/lib/racksh/version.rb +0 -5
  2197. data/vendor/bundle/gems/rake-12.3.2/CONTRIBUTING.rdoc +0 -43
  2198. data/vendor/bundle/gems/rake-12.3.2/Gemfile +0 -3
  2199. data/vendor/bundle/gems/rake-12.3.2/History.rdoc +0 -2333
  2200. data/vendor/bundle/gems/rake-12.3.2/MIT-LICENSE +0 -21
  2201. data/vendor/bundle/gems/rake-12.3.2/README.rdoc +0 -156
  2202. data/vendor/bundle/gems/rake-12.3.2/Rakefile +0 -41
  2203. data/vendor/bundle/gems/rake-12.3.2/bin/bundle +0 -105
  2204. data/vendor/bundle/gems/rake-12.3.2/bin/console +0 -7
  2205. data/vendor/bundle/gems/rake-12.3.2/bin/rake +0 -29
  2206. data/vendor/bundle/gems/rake-12.3.2/bin/rdoc +0 -29
  2207. data/vendor/bundle/gems/rake-12.3.2/bin/rubocop +0 -29
  2208. data/vendor/bundle/gems/rake-12.3.2/bin/setup +0 -6
  2209. data/vendor/bundle/gems/rake-12.3.2/doc/command_line_usage.rdoc +0 -158
  2210. data/vendor/bundle/gems/rake-12.3.2/doc/example/Rakefile1 +0 -38
  2211. data/vendor/bundle/gems/rake-12.3.2/doc/example/Rakefile2 +0 -35
  2212. data/vendor/bundle/gems/rake-12.3.2/doc/example/a.c +0 -6
  2213. data/vendor/bundle/gems/rake-12.3.2/doc/example/b.c +0 -6
  2214. data/vendor/bundle/gems/rake-12.3.2/doc/example/main.c +0 -11
  2215. data/vendor/bundle/gems/rake-12.3.2/doc/glossary.rdoc +0 -42
  2216. data/vendor/bundle/gems/rake-12.3.2/doc/jamis.rb +0 -592
  2217. data/vendor/bundle/gems/rake-12.3.2/doc/proto_rake.rdoc +0 -127
  2218. data/vendor/bundle/gems/rake-12.3.2/doc/rake.1 +0 -156
  2219. data/vendor/bundle/gems/rake-12.3.2/doc/rakefile.rdoc +0 -622
  2220. data/vendor/bundle/gems/rake-12.3.2/doc/rational.rdoc +0 -151
  2221. data/vendor/bundle/gems/rake-12.3.2/exe/rake +0 -27
  2222. data/vendor/bundle/gems/rake-12.3.2/lib/rake.rb +0 -71
  2223. data/vendor/bundle/gems/rake-12.3.2/lib/rake/application.rb +0 -824
  2224. data/vendor/bundle/gems/rake-12.3.2/lib/rake/backtrace.rb +0 -24
  2225. data/vendor/bundle/gems/rake-12.3.2/lib/rake/clean.rb +0 -78
  2226. data/vendor/bundle/gems/rake-12.3.2/lib/rake/cloneable.rb +0 -17
  2227. data/vendor/bundle/gems/rake-12.3.2/lib/rake/cpu_counter.rb +0 -107
  2228. data/vendor/bundle/gems/rake-12.3.2/lib/rake/default_loader.rb +0 -15
  2229. data/vendor/bundle/gems/rake-12.3.2/lib/rake/dsl_definition.rb +0 -195
  2230. data/vendor/bundle/gems/rake-12.3.2/lib/rake/early_time.rb +0 -22
  2231. data/vendor/bundle/gems/rake-12.3.2/lib/rake/ext/core.rb +0 -26
  2232. data/vendor/bundle/gems/rake-12.3.2/lib/rake/ext/string.rb +0 -176
  2233. data/vendor/bundle/gems/rake-12.3.2/lib/rake/file_creation_task.rb +0 -25
  2234. data/vendor/bundle/gems/rake-12.3.2/lib/rake/file_list.rb +0 -435
  2235. data/vendor/bundle/gems/rake-12.3.2/lib/rake/file_task.rb +0 -54
  2236. data/vendor/bundle/gems/rake-12.3.2/lib/rake/file_utils.rb +0 -137
  2237. data/vendor/bundle/gems/rake-12.3.2/lib/rake/file_utils_ext.rb +0 -145
  2238. data/vendor/bundle/gems/rake-12.3.2/lib/rake/invocation_chain.rb +0 -57
  2239. data/vendor/bundle/gems/rake-12.3.2/lib/rake/invocation_exception_mixin.rb +0 -17
  2240. data/vendor/bundle/gems/rake-12.3.2/lib/rake/late_time.rb +0 -18
  2241. data/vendor/bundle/gems/rake-12.3.2/lib/rake/linked_list.rb +0 -112
  2242. data/vendor/bundle/gems/rake-12.3.2/lib/rake/loaders/makefile.rb +0 -54
  2243. data/vendor/bundle/gems/rake-12.3.2/lib/rake/multi_task.rb +0 -14
  2244. data/vendor/bundle/gems/rake-12.3.2/lib/rake/name_space.rb +0 -38
  2245. data/vendor/bundle/gems/rake-12.3.2/lib/rake/packagetask.rb +0 -207
  2246. data/vendor/bundle/gems/rake-12.3.2/lib/rake/phony.rb +0 -16
  2247. data/vendor/bundle/gems/rake-12.3.2/lib/rake/private_reader.rb +0 -21
  2248. data/vendor/bundle/gems/rake-12.3.2/lib/rake/promise.rb +0 -100
  2249. data/vendor/bundle/gems/rake-12.3.2/lib/rake/pseudo_status.rb +0 -30
  2250. data/vendor/bundle/gems/rake-12.3.2/lib/rake/rake_module.rb +0 -67
  2251. data/vendor/bundle/gems/rake-12.3.2/lib/rake/rake_test_loader.rb +0 -27
  2252. data/vendor/bundle/gems/rake-12.3.2/lib/rake/rule_recursion_overflow_error.rb +0 -20
  2253. data/vendor/bundle/gems/rake-12.3.2/lib/rake/scope.rb +0 -43
  2254. data/vendor/bundle/gems/rake-12.3.2/lib/rake/task.rb +0 -413
  2255. data/vendor/bundle/gems/rake-12.3.2/lib/rake/task_argument_error.rb +0 -8
  2256. data/vendor/bundle/gems/rake-12.3.2/lib/rake/task_arguments.rb +0 -109
  2257. data/vendor/bundle/gems/rake-12.3.2/lib/rake/task_manager.rb +0 -323
  2258. data/vendor/bundle/gems/rake-12.3.2/lib/rake/tasklib.rb +0 -12
  2259. data/vendor/bundle/gems/rake-12.3.2/lib/rake/testtask.rb +0 -224
  2260. data/vendor/bundle/gems/rake-12.3.2/lib/rake/thread_history_display.rb +0 -49
  2261. data/vendor/bundle/gems/rake-12.3.2/lib/rake/thread_pool.rb +0 -163
  2262. data/vendor/bundle/gems/rake-12.3.2/lib/rake/trace_output.rb +0 -23
  2263. data/vendor/bundle/gems/rake-12.3.2/lib/rake/version.rb +0 -10
  2264. data/vendor/bundle/gems/rake-12.3.2/lib/rake/win32.rb +0 -51
  2265. data/vendor/bundle/gems/rake-12.3.2/rake.gemspec +0 -42
  2266. data/vendor/bundle/gems/redcarpet-3.4.0/COPYING +0 -20
  2267. data/vendor/bundle/gems/redcarpet-3.4.0/Gemfile +0 -9
  2268. data/vendor/bundle/gems/redcarpet-3.4.0/README.markdown +0 -404
  2269. data/vendor/bundle/gems/redcarpet-3.4.0/Rakefile +0 -60
  2270. data/vendor/bundle/gems/redcarpet-3.4.0/bin/redcarpet +0 -7
  2271. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/Makefile +0 -265
  2272. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/autolink.c +0 -309
  2273. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/autolink.h +0 -55
  2274. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/autolink.o +0 -0
  2275. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/buffer.c +0 -203
  2276. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/buffer.h +0 -89
  2277. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/buffer.o +0 -0
  2278. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/extconf.rb +0 -6
  2279. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/houdini.h +0 -51
  2280. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/houdini_href_e.c +0 -124
  2281. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/houdini_href_e.o +0 -0
  2282. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/houdini_html_e.c +0 -105
  2283. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/houdini_html_e.o +0 -0
  2284. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/html.c +0 -842
  2285. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/html.h +0 -84
  2286. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/html.o +0 -0
  2287. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/html_blocks.h +0 -227
  2288. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/html_smartypants.c +0 -457
  2289. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/html_smartypants.o +0 -0
  2290. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/markdown.c +0 -2915
  2291. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/markdown.h +0 -143
  2292. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/markdown.o +0 -0
  2293. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/rc_markdown.c +0 -174
  2294. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/rc_markdown.o +0 -0
  2295. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/rc_render.c +0 -554
  2296. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/rc_render.o +0 -0
  2297. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/redcarpet.h +0 -52
  2298. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/redcarpet.so +0 -0
  2299. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/stack.c +0 -84
  2300. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/stack.h +0 -48
  2301. data/vendor/bundle/gems/redcarpet-3.4.0/ext/redcarpet/stack.o +0 -0
  2302. data/vendor/bundle/gems/redcarpet-3.4.0/lib/redcarpet.rb +0 -92
  2303. data/vendor/bundle/gems/redcarpet-3.4.0/lib/redcarpet.so +0 -0
  2304. data/vendor/bundle/gems/redcarpet-3.4.0/lib/redcarpet/cli.rb +0 -86
  2305. data/vendor/bundle/gems/redcarpet-3.4.0/lib/redcarpet/compat.rb +0 -73
  2306. data/vendor/bundle/gems/redcarpet-3.4.0/lib/redcarpet/render_man.rb +0 -65
  2307. data/vendor/bundle/gems/redcarpet-3.4.0/lib/redcarpet/render_strip.rb +0 -60
  2308. data/vendor/bundle/gems/redcarpet-3.4.0/redcarpet.gemspec +0 -71
  2309. data/vendor/bundle/gems/redcarpet-3.4.0/test/benchmark.rb +0 -24
  2310. data/vendor/bundle/gems/redcarpet-3.4.0/test/custom_render_test.rb +0 -57
  2311. data/vendor/bundle/gems/redcarpet-3.4.0/test/fixtures/benchmark.md +0 -232
  2312. data/vendor/bundle/gems/redcarpet-3.4.0/test/html5_test.rb +0 -82
  2313. data/vendor/bundle/gems/redcarpet-3.4.0/test/html_render_test.rb +0 -268
  2314. data/vendor/bundle/gems/redcarpet-3.4.0/test/html_toc_render_test.rb +0 -82
  2315. data/vendor/bundle/gems/redcarpet-3.4.0/test/markdown_test.rb +0 -406
  2316. data/vendor/bundle/gems/redcarpet-3.4.0/test/pathological_inputs_test.rb +0 -34
  2317. data/vendor/bundle/gems/redcarpet-3.4.0/test/redcarpet_bin_test.rb +0 -80
  2318. data/vendor/bundle/gems/redcarpet-3.4.0/test/redcarpet_compat_test.rb +0 -38
  2319. data/vendor/bundle/gems/redcarpet-3.4.0/test/safe_render_test.rb +0 -35
  2320. data/vendor/bundle/gems/redcarpet-3.4.0/test/smarty_html_test.rb +0 -45
  2321. data/vendor/bundle/gems/redcarpet-3.4.0/test/smarty_pants_test.rb +0 -58
  2322. data/vendor/bundle/gems/redcarpet-3.4.0/test/stripdown_render_test.rb +0 -61
  2323. data/vendor/bundle/gems/redcarpet-3.4.0/test/test_helper.rb +0 -47
  2324. data/vendor/bundle/gems/regexp_parser-1.3.0/CHANGELOG.md +0 -285
  2325. data/vendor/bundle/gems/regexp_parser-1.3.0/Gemfile +0 -9
  2326. data/vendor/bundle/gems/regexp_parser-1.3.0/LICENSE +0 -22
  2327. data/vendor/bundle/gems/regexp_parser-1.3.0/README.md +0 -474
  2328. data/vendor/bundle/gems/regexp_parser-1.3.0/Rakefile +0 -88
  2329. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser.rb +0 -8
  2330. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression.rb +0 -188
  2331. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/classes/alternation.rb +0 -10
  2332. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/classes/anchor.rb +0 -26
  2333. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/classes/backref.rb +0 -47
  2334. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/classes/conditional.rb +0 -53
  2335. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/classes/escape.rb +0 -98
  2336. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/classes/free_space.rb +0 -17
  2337. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/classes/group.rb +0 -58
  2338. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/classes/keep.rb +0 -7
  2339. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/classes/literal.rb +0 -7
  2340. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/classes/posix_class.rb +0 -11
  2341. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/classes/property.rb +0 -120
  2342. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/classes/root.rb +0 -24
  2343. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/classes/set.rb +0 -27
  2344. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/classes/set/intersection.rb +0 -9
  2345. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/classes/set/range.rb +0 -23
  2346. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/classes/type.rb +0 -19
  2347. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/methods/strfregexp.rb +0 -115
  2348. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/methods/tests.rb +0 -106
  2349. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/methods/traverse.rb +0 -62
  2350. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/quantifier.rb +0 -44
  2351. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/sequence.rb +0 -70
  2352. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/sequence_operation.rb +0 -29
  2353. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/expression/subexpression.rb +0 -61
  2354. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/lexer.rb +0 -141
  2355. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/parser.rb +0 -630
  2356. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/scanner.rb +0 -2935
  2357. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/scanner/char_type.rl +0 -31
  2358. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/scanner/properties/long.yml +0 -561
  2359. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/scanner/properties/short.yml +0 -225
  2360. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/scanner/property.rl +0 -30
  2361. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/scanner/scanner.rl +0 -1001
  2362. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax.rb +0 -9
  2363. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/any.rb +0 -15
  2364. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/base.rb +0 -95
  2365. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/tokens.rb +0 -53
  2366. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/tokens/anchor.rb +0 -15
  2367. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/tokens/assertion.rb +0 -13
  2368. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/tokens/backref.rb +0 -24
  2369. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/tokens/character_set.rb +0 -13
  2370. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/tokens/character_type.rb +0 -16
  2371. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/tokens/conditional.rb +0 -16
  2372. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/tokens/escape.rb +0 -30
  2373. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/tokens/group.rb +0 -23
  2374. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/tokens/keep.rb +0 -12
  2375. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/tokens/meta.rb +0 -13
  2376. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/tokens/posix_class.rb +0 -17
  2377. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/tokens/quantifier.rb +0 -35
  2378. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/tokens/unicode_property.rb +0 -624
  2379. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/version_lookup.rb +0 -82
  2380. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/versions.rb +0 -6
  2381. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/versions/1.8.6.rb +0 -21
  2382. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/versions/1.9.1.rb +0 -18
  2383. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/versions/1.9.3.rb +0 -11
  2384. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/versions/2.0.0.rb +0 -17
  2385. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/versions/2.2.0.rb +0 -10
  2386. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/versions/2.3.0.rb +0 -10
  2387. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/versions/2.4.0.rb +0 -10
  2388. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/versions/2.4.1.rb +0 -9
  2389. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/syntax/versions/2.5.0.rb +0 -10
  2390. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/token.rb +0 -35
  2391. data/vendor/bundle/gems/regexp_parser-1.3.0/lib/regexp_parser/version.rb +0 -5
  2392. data/vendor/bundle/gems/regexp_parser-1.3.0/regexp_parser.gemspec +0 -36
  2393. data/vendor/bundle/gems/regexp_parser-1.3.0/test/expression/test_all.rb +0 -12
  2394. data/vendor/bundle/gems/regexp_parser-1.3.0/test/expression/test_base.rb +0 -90
  2395. data/vendor/bundle/gems/regexp_parser-1.3.0/test/expression/test_clone.rb +0 -89
  2396. data/vendor/bundle/gems/regexp_parser-1.3.0/test/expression/test_conditionals.rb +0 -113
  2397. data/vendor/bundle/gems/regexp_parser-1.3.0/test/expression/test_free_space.rb +0 -35
  2398. data/vendor/bundle/gems/regexp_parser-1.3.0/test/expression/test_set.rb +0 -84
  2399. data/vendor/bundle/gems/regexp_parser-1.3.0/test/expression/test_strfregexp.rb +0 -230
  2400. data/vendor/bundle/gems/regexp_parser-1.3.0/test/expression/test_subexpression.rb +0 -58
  2401. data/vendor/bundle/gems/regexp_parser-1.3.0/test/expression/test_tests.rb +0 -99
  2402. data/vendor/bundle/gems/regexp_parser-1.3.0/test/expression/test_to_h.rb +0 -59
  2403. data/vendor/bundle/gems/regexp_parser-1.3.0/test/expression/test_to_s.rb +0 -104
  2404. data/vendor/bundle/gems/regexp_parser-1.3.0/test/expression/test_traverse.rb +0 -161
  2405. data/vendor/bundle/gems/regexp_parser-1.3.0/test/helpers.rb +0 -10
  2406. data/vendor/bundle/gems/regexp_parser-1.3.0/test/lexer/test_all.rb +0 -41
  2407. data/vendor/bundle/gems/regexp_parser-1.3.0/test/lexer/test_conditionals.rb +0 -127
  2408. data/vendor/bundle/gems/regexp_parser-1.3.0/test/lexer/test_keep.rb +0 -24
  2409. data/vendor/bundle/gems/regexp_parser-1.3.0/test/lexer/test_literals.rb +0 -130
  2410. data/vendor/bundle/gems/regexp_parser-1.3.0/test/lexer/test_nesting.rb +0 -132
  2411. data/vendor/bundle/gems/regexp_parser-1.3.0/test/lexer/test_refcalls.rb +0 -56
  2412. data/vendor/bundle/gems/regexp_parser-1.3.0/test/parser/set/test_intersections.rb +0 -127
  2413. data/vendor/bundle/gems/regexp_parser-1.3.0/test/parser/set/test_ranges.rb +0 -111
  2414. data/vendor/bundle/gems/regexp_parser-1.3.0/test/parser/test_all.rb +0 -64
  2415. data/vendor/bundle/gems/regexp_parser-1.3.0/test/parser/test_alternation.rb +0 -92
  2416. data/vendor/bundle/gems/regexp_parser-1.3.0/test/parser/test_anchors.rb +0 -34
  2417. data/vendor/bundle/gems/regexp_parser-1.3.0/test/parser/test_conditionals.rb +0 -187
  2418. data/vendor/bundle/gems/regexp_parser-1.3.0/test/parser/test_errors.rb +0 -63
  2419. data/vendor/bundle/gems/regexp_parser-1.3.0/test/parser/test_escapes.rb +0 -134
  2420. data/vendor/bundle/gems/regexp_parser-1.3.0/test/parser/test_free_space.rb +0 -139
  2421. data/vendor/bundle/gems/regexp_parser-1.3.0/test/parser/test_groups.rb +0 -289
  2422. data/vendor/bundle/gems/regexp_parser-1.3.0/test/parser/test_keep.rb +0 -21
  2423. data/vendor/bundle/gems/regexp_parser-1.3.0/test/parser/test_posix_classes.rb +0 -27
  2424. data/vendor/bundle/gems/regexp_parser-1.3.0/test/parser/test_properties.rb +0 -133
  2425. data/vendor/bundle/gems/regexp_parser-1.3.0/test/parser/test_quantifiers.rb +0 -301
  2426. data/vendor/bundle/gems/regexp_parser-1.3.0/test/parser/test_refcalls.rb +0 -186
  2427. data/vendor/bundle/gems/regexp_parser-1.3.0/test/parser/test_sets.rb +0 -179
  2428. data/vendor/bundle/gems/regexp_parser-1.3.0/test/parser/test_types.rb +0 -50
  2429. data/vendor/bundle/gems/regexp_parser-1.3.0/test/scanner/test_all.rb +0 -38
  2430. data/vendor/bundle/gems/regexp_parser-1.3.0/test/scanner/test_anchors.rb +0 -38
  2431. data/vendor/bundle/gems/regexp_parser-1.3.0/test/scanner/test_conditionals.rb +0 -184
  2432. data/vendor/bundle/gems/regexp_parser-1.3.0/test/scanner/test_errors.rb +0 -91
  2433. data/vendor/bundle/gems/regexp_parser-1.3.0/test/scanner/test_escapes.rb +0 -56
  2434. data/vendor/bundle/gems/regexp_parser-1.3.0/test/scanner/test_free_space.rb +0 -200
  2435. data/vendor/bundle/gems/regexp_parser-1.3.0/test/scanner/test_groups.rb +0 -79
  2436. data/vendor/bundle/gems/regexp_parser-1.3.0/test/scanner/test_keep.rb +0 -35
  2437. data/vendor/bundle/gems/regexp_parser-1.3.0/test/scanner/test_literals.rb +0 -89
  2438. data/vendor/bundle/gems/regexp_parser-1.3.0/test/scanner/test_meta.rb +0 -40
  2439. data/vendor/bundle/gems/regexp_parser-1.3.0/test/scanner/test_properties.rb +0 -312
  2440. data/vendor/bundle/gems/regexp_parser-1.3.0/test/scanner/test_quantifiers.rb +0 -37
  2441. data/vendor/bundle/gems/regexp_parser-1.3.0/test/scanner/test_refcalls.rb +0 -52
  2442. data/vendor/bundle/gems/regexp_parser-1.3.0/test/scanner/test_scripts.rb +0 -53
  2443. data/vendor/bundle/gems/regexp_parser-1.3.0/test/scanner/test_sets.rb +0 -119
  2444. data/vendor/bundle/gems/regexp_parser-1.3.0/test/scanner/test_types.rb +0 -35
  2445. data/vendor/bundle/gems/regexp_parser-1.3.0/test/scanner/test_unicode_blocks.rb +0 -30
  2446. data/vendor/bundle/gems/regexp_parser-1.3.0/test/support/disable_autotest.rb +0 -8
  2447. data/vendor/bundle/gems/regexp_parser-1.3.0/test/support/runner.rb +0 -41
  2448. data/vendor/bundle/gems/regexp_parser-1.3.0/test/support/warning_extractor.rb +0 -62
  2449. data/vendor/bundle/gems/regexp_parser-1.3.0/test/syntax/test_all.rb +0 -6
  2450. data/vendor/bundle/gems/regexp_parser-1.3.0/test/syntax/test_syntax.rb +0 -61
  2451. data/vendor/bundle/gems/regexp_parser-1.3.0/test/syntax/test_syntax_token_map.rb +0 -25
  2452. data/vendor/bundle/gems/regexp_parser-1.3.0/test/syntax/versions/test_1.8.rb +0 -55
  2453. data/vendor/bundle/gems/regexp_parser-1.3.0/test/syntax/versions/test_1.9.1.rb +0 -36
  2454. data/vendor/bundle/gems/regexp_parser-1.3.0/test/syntax/versions/test_1.9.3.rb +0 -32
  2455. data/vendor/bundle/gems/regexp_parser-1.3.0/test/syntax/versions/test_2.0.0.rb +0 -37
  2456. data/vendor/bundle/gems/regexp_parser-1.3.0/test/syntax/versions/test_2.2.0.rb +0 -32
  2457. data/vendor/bundle/gems/regexp_parser-1.3.0/test/syntax/versions/test_aliases.rb +0 -129
  2458. data/vendor/bundle/gems/regexp_parser-1.3.0/test/syntax/versions/test_all.rb +0 -5
  2459. data/vendor/bundle/gems/regexp_parser-1.3.0/test/test_all.rb +0 -5
  2460. data/vendor/bundle/gems/regexp_parser-1.3.0/test/token/test_all.rb +0 -2
  2461. data/vendor/bundle/gems/regexp_parser-1.3.0/test/token/test_token.rb +0 -107
  2462. data/vendor/bundle/gems/rspec-3.8.0/LICENSE.md +0 -27
  2463. data/vendor/bundle/gems/rspec-3.8.0/README.md +0 -43
  2464. data/vendor/bundle/gems/rspec-3.8.0/lib/rspec.rb +0 -3
  2465. data/vendor/bundle/gems/rspec-3.8.0/lib/rspec/version.rb +0 -5
  2466. data/vendor/bundle/gems/rspec-core-3.8.0/Changelog.md +0 -2221
  2467. data/vendor/bundle/gems/rspec-core-3.8.0/LICENSE.md +0 -26
  2468. data/vendor/bundle/gems/rspec-core-3.8.0/README.md +0 -384
  2469. data/vendor/bundle/gems/rspec-core-3.8.0/exe/rspec +0 -4
  2470. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/autorun.rb +0 -3
  2471. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core.rb +0 -185
  2472. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/backtrace_formatter.rb +0 -65
  2473. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/bisect/coordinator.rb +0 -62
  2474. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/bisect/example_minimizer.rb +0 -173
  2475. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/bisect/fork_runner.rb +0 -134
  2476. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/bisect/server.rb +0 -61
  2477. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/bisect/shell_command.rb +0 -126
  2478. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/bisect/shell_runner.rb +0 -73
  2479. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/bisect/utilities.rb +0 -58
  2480. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/configuration.rb +0 -2289
  2481. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/configuration_options.rb +0 -233
  2482. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/drb.rb +0 -113
  2483. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/dsl.rb +0 -98
  2484. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/example.rb +0 -653
  2485. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/example_group.rb +0 -885
  2486. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/example_status_persister.rb +0 -235
  2487. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/filter_manager.rb +0 -231
  2488. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/flat_map.rb +0 -20
  2489. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters.rb +0 -269
  2490. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters/base_bisect_formatter.rb +0 -45
  2491. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters/base_formatter.rb +0 -70
  2492. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters/base_text_formatter.rb +0 -75
  2493. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters/bisect_drb_formatter.rb +0 -29
  2494. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters/bisect_progress_formatter.rb +0 -157
  2495. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters/console_codes.rb +0 -68
  2496. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters/deprecation_formatter.rb +0 -223
  2497. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters/documentation_formatter.rb +0 -70
  2498. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters/exception_presenter.rb +0 -497
  2499. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters/fallback_message_formatter.rb +0 -28
  2500. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters/helpers.rb +0 -110
  2501. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters/html_formatter.rb +0 -153
  2502. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters/html_printer.rb +0 -414
  2503. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters/html_snippet_extractor.rb +0 -120
  2504. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters/json_formatter.rb +0 -102
  2505. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters/profile_formatter.rb +0 -68
  2506. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters/progress_formatter.rb +0 -29
  2507. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters/protocol.rb +0 -182
  2508. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters/snippet_extractor.rb +0 -134
  2509. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/formatters/syntax_highlighter.rb +0 -91
  2510. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/hooks.rb +0 -624
  2511. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/invocations.rb +0 -87
  2512. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/memoized_helpers.rb +0 -535
  2513. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/metadata.rb +0 -499
  2514. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/metadata_filter.rb +0 -255
  2515. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/minitest_assertions_adapter.rb +0 -31
  2516. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/mocking_adapters/flexmock.rb +0 -31
  2517. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/mocking_adapters/mocha.rb +0 -57
  2518. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/mocking_adapters/null.rb +0 -14
  2519. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/mocking_adapters/rr.rb +0 -31
  2520. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/mocking_adapters/rspec.rb +0 -32
  2521. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/notifications.rb +0 -521
  2522. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/option_parser.rb +0 -309
  2523. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/ordering.rb +0 -158
  2524. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/output_wrapper.rb +0 -29
  2525. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/pending.rb +0 -165
  2526. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/profiler.rb +0 -34
  2527. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/project_initializer.rb +0 -48
  2528. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/project_initializer/spec/spec_helper.rb +0 -100
  2529. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/rake_task.rb +0 -168
  2530. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/reporter.rb +0 -257
  2531. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/ruby_project.rb +0 -53
  2532. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/runner.rb +0 -199
  2533. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/sandbox.rb +0 -37
  2534. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/set.rb +0 -54
  2535. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/shared_context.rb +0 -55
  2536. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/shared_example_group.rb +0 -269
  2537. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/shell_escape.rb +0 -49
  2538. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/test_unit_assertions_adapter.rb +0 -30
  2539. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/version.rb +0 -9
  2540. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/warnings.rb +0 -40
  2541. data/vendor/bundle/gems/rspec-core-3.8.0/lib/rspec/core/world.rb +0 -275
  2542. data/vendor/bundle/gems/rspec-expectations-3.8.2/Changelog.md +0 -1120
  2543. data/vendor/bundle/gems/rspec-expectations-3.8.2/LICENSE.md +0 -25
  2544. data/vendor/bundle/gems/rspec-expectations-3.8.2/README.md +0 -305
  2545. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/expectations.rb +0 -82
  2546. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/expectations/block_snippet_extractor.rb +0 -253
  2547. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/expectations/configuration.rb +0 -215
  2548. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/expectations/expectation_target.rb +0 -127
  2549. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/expectations/fail_with.rb +0 -39
  2550. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/expectations/failure_aggregator.rb +0 -194
  2551. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/expectations/handler.rb +0 -170
  2552. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/expectations/minitest_integration.rb +0 -58
  2553. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/expectations/syntax.rb +0 -132
  2554. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/expectations/version.rb +0 -8
  2555. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers.rb +0 -1034
  2556. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/aliased_matcher.rb +0 -116
  2557. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in.rb +0 -52
  2558. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/all.rb +0 -85
  2559. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/base_matcher.rb +0 -193
  2560. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/be.rb +0 -288
  2561. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/be_between.rb +0 -77
  2562. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/be_instance_of.rb +0 -22
  2563. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/be_kind_of.rb +0 -16
  2564. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/be_within.rb +0 -72
  2565. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/change.rb +0 -426
  2566. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/compound.rb +0 -271
  2567. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/contain_exactly.rb +0 -302
  2568. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/cover.rb +0 -24
  2569. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/eq.rb +0 -40
  2570. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/eql.rb +0 -34
  2571. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/equal.rb +0 -81
  2572. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/exist.rb +0 -90
  2573. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/has.rb +0 -103
  2574. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/have_attributes.rb +0 -114
  2575. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/include.rb +0 -149
  2576. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/match.rb +0 -106
  2577. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/operators.rb +0 -128
  2578. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/output.rb +0 -200
  2579. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/raise_error.rb +0 -230
  2580. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/respond_to.rb +0 -165
  2581. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/satisfy.rb +0 -60
  2582. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/start_or_end_with.rb +0 -94
  2583. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/throw_symbol.rb +0 -132
  2584. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/built_in/yield.rb +0 -432
  2585. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/composable.rb +0 -171
  2586. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/dsl.rb +0 -527
  2587. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/english_phrasing.rb +0 -58
  2588. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/expecteds_for_multiple_diffs.rb +0 -73
  2589. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/fail_matchers.rb +0 -42
  2590. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/generated_descriptions.rb +0 -41
  2591. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/matcher_delegator.rb +0 -35
  2592. data/vendor/bundle/gems/rspec-expectations-3.8.2/lib/rspec/matchers/matcher_protocol.rb +0 -99
  2593. data/vendor/bundle/gems/rspec-mocks-3.8.0/Changelog.md +0 -1100
  2594. data/vendor/bundle/gems/rspec-mocks-3.8.0/LICENSE.md +0 -25
  2595. data/vendor/bundle/gems/rspec-mocks-3.8.0/README.md +0 -460
  2596. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks.rb +0 -130
  2597. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/any_instance.rb +0 -11
  2598. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/any_instance/chain.rb +0 -110
  2599. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/any_instance/error_generator.rb +0 -31
  2600. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/any_instance/expect_chain_chain.rb +0 -31
  2601. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/any_instance/expectation_chain.rb +0 -50
  2602. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/any_instance/message_chains.rb +0 -83
  2603. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/any_instance/proxy.rb +0 -116
  2604. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/any_instance/recorder.rb +0 -289
  2605. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/any_instance/stub_chain.rb +0 -51
  2606. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/any_instance/stub_chain_chain.rb +0 -23
  2607. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/argument_list_matcher.rb +0 -100
  2608. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/argument_matchers.rb +0 -320
  2609. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/configuration.rb +0 -212
  2610. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/error_generator.rb +0 -369
  2611. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/example_methods.rb +0 -434
  2612. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/instance_method_stasher.rb +0 -146
  2613. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/marshal_extension.rb +0 -41
  2614. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/matchers/expectation_customization.rb +0 -20
  2615. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/matchers/have_received.rb +0 -134
  2616. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/matchers/receive.rb +0 -132
  2617. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/matchers/receive_message_chain.rb +0 -82
  2618. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/matchers/receive_messages.rb +0 -77
  2619. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/message_chain.rb +0 -87
  2620. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/message_expectation.rb +0 -741
  2621. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/method_double.rb +0 -287
  2622. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/method_reference.rb +0 -202
  2623. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/minitest_integration.rb +0 -68
  2624. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/mutate_const.rb +0 -339
  2625. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/object_reference.rb +0 -149
  2626. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/order_group.rb +0 -81
  2627. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/proxy.rb +0 -485
  2628. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/space.rb +0 -238
  2629. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/standalone.rb +0 -3
  2630. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/syntax.rb +0 -325
  2631. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/targets.rb +0 -124
  2632. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/test_double.rb +0 -171
  2633. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/verifying_double.rb +0 -129
  2634. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/verifying_message_expectation.rb +0 -54
  2635. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/verifying_proxy.rb +0 -220
  2636. data/vendor/bundle/gems/rspec-mocks-3.8.0/lib/rspec/mocks/version.rb +0 -9
  2637. data/vendor/bundle/gems/rspec-support-3.8.0/Changelog.md +0 -242
  2638. data/vendor/bundle/gems/rspec-support-3.8.0/LICENSE.md +0 -23
  2639. data/vendor/bundle/gems/rspec-support-3.8.0/README.md +0 -40
  2640. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support.rb +0 -149
  2641. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/caller_filter.rb +0 -83
  2642. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/comparable_version.rb +0 -46
  2643. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/differ.rb +0 -215
  2644. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/directory_maker.rb +0 -63
  2645. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/encoded_string.rb +0 -165
  2646. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/fuzzy_matcher.rb +0 -48
  2647. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/hunk_generator.rb +0 -47
  2648. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/matcher_definition.rb +0 -42
  2649. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/method_signature_verifier.rb +0 -426
  2650. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/mutex.rb +0 -73
  2651. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/object_formatter.rb +0 -275
  2652. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/recursive_const_methods.rb +0 -76
  2653. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/reentrant_mutex.rb +0 -53
  2654. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/ruby_features.rb +0 -176
  2655. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/source.rb +0 -75
  2656. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/source/location.rb +0 -21
  2657. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/source/node.rb +0 -110
  2658. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/source/token.rb +0 -87
  2659. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/spec.rb +0 -81
  2660. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/spec/deprecation_helpers.rb +0 -64
  2661. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/spec/formatting_support.rb +0 -9
  2662. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/spec/in_sub_process.rb +0 -69
  2663. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/spec/library_wide_checks.rb +0 -150
  2664. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/spec/shell_out.rb +0 -84
  2665. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/spec/stderr_splitter.rb +0 -63
  2666. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/spec/string_matcher.rb +0 -46
  2667. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/spec/with_isolated_directory.rb +0 -13
  2668. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/spec/with_isolated_stderr.rb +0 -13
  2669. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/version.rb +0 -7
  2670. data/vendor/bundle/gems/rspec-support-3.8.0/lib/rspec/support/warnings.rb +0 -39
  2671. data/vendor/bundle/gems/rubyzip-1.2.2/README.md +0 -313
  2672. data/vendor/bundle/gems/rubyzip-1.2.2/Rakefile +0 -18
  2673. data/vendor/bundle/gems/rubyzip-1.2.2/TODO +0 -15
  2674. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip.rb +0 -69
  2675. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/central_directory.rb +0 -208
  2676. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/compressor.rb +0 -9
  2677. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/constants.rb +0 -63
  2678. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/crypto/encryption.rb +0 -11
  2679. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/crypto/null_encryption.rb +0 -43
  2680. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/crypto/traditional_encryption.rb +0 -99
  2681. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/decompressor.rb +0 -13
  2682. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/deflater.rb +0 -34
  2683. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/dos_time.rb +0 -48
  2684. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/entry.rb +0 -687
  2685. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/entry_set.rb +0 -86
  2686. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/errors.rb +0 -17
  2687. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/extra_field.rb +0 -101
  2688. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/extra_field/generic.rb +0 -43
  2689. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/extra_field/ntfs.rb +0 -90
  2690. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/extra_field/old_unix.rb +0 -44
  2691. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/extra_field/universal_time.rb +0 -47
  2692. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/extra_field/unix.rb +0 -37
  2693. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/extra_field/zip64.rb +0 -68
  2694. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/extra_field/zip64_placeholder.rb +0 -15
  2695. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/file.rb +0 -423
  2696. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/filesystem.rb +0 -627
  2697. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/inflater.rb +0 -66
  2698. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/input_stream.rb +0 -173
  2699. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/ioextras.rb +0 -36
  2700. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/ioextras/abstract_input_stream.rb +0 -111
  2701. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/ioextras/abstract_output_stream.rb +0 -43
  2702. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/null_compressor.rb +0 -15
  2703. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/null_decompressor.rb +0 -27
  2704. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/null_input_stream.rb +0 -10
  2705. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/output_stream.rb +0 -189
  2706. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/pass_thru_compressor.rb +0 -23
  2707. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/pass_thru_decompressor.rb +0 -40
  2708. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/streamable_directory.rb +0 -15
  2709. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/streamable_stream.rb +0 -56
  2710. data/vendor/bundle/gems/rubyzip-1.2.2/lib/zip/version.rb +0 -3
  2711. data/vendor/bundle/gems/rubyzip-1.2.2/samples/example.rb +0 -81
  2712. data/vendor/bundle/gems/rubyzip-1.2.2/samples/example_filesystem.rb +0 -31
  2713. data/vendor/bundle/gems/rubyzip-1.2.2/samples/example_recursive.rb +0 -54
  2714. data/vendor/bundle/gems/rubyzip-1.2.2/samples/gtk_ruby_zip.rb +0 -84
  2715. data/vendor/bundle/gems/rubyzip-1.2.2/samples/qtzip.rb +0 -92
  2716. data/vendor/bundle/gems/rubyzip-1.2.2/samples/write_simple.rb +0 -12
  2717. data/vendor/bundle/gems/rubyzip-1.2.2/samples/zipfind.rb +0 -66
  2718. data/vendor/bundle/gems/rubyzip-1.2.2/test/basic_zip_file_test.rb +0 -60
  2719. data/vendor/bundle/gems/rubyzip-1.2.2/test/case_sensitivity_test.rb +0 -69
  2720. data/vendor/bundle/gems/rubyzip-1.2.2/test/central_directory_entry_test.rb +0 -69
  2721. data/vendor/bundle/gems/rubyzip-1.2.2/test/central_directory_test.rb +0 -100
  2722. data/vendor/bundle/gems/rubyzip-1.2.2/test/crypto/null_encryption_test.rb +0 -57
  2723. data/vendor/bundle/gems/rubyzip-1.2.2/test/crypto/traditional_encryption_test.rb +0 -80
  2724. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/WarnInvalidDate.zip +0 -0
  2725. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/file1.txt +0 -46
  2726. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/file1.txt.deflatedData +0 -0
  2727. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/file2.txt +0 -1504
  2728. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/globTest.zip +0 -0
  2729. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/globTest/foo.txt +0 -0
  2730. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/globTest/foo/bar/baz/foo.txt +0 -0
  2731. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/globTest/food.txt +0 -0
  2732. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/gpbit3stored.zip +0 -0
  2733. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/mimetype +0 -1
  2734. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/notzippedruby.rb +0 -7
  2735. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/ntfs.zip +0 -0
  2736. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/oddExtraField.zip +0 -0
  2737. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/path_traversal/Makefile +0 -10
  2738. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/path_traversal/jwilk/README.md +0 -5
  2739. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/path_traversal/jwilk/absolute1.zip +0 -0
  2740. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/path_traversal/jwilk/absolute2.zip +0 -0
  2741. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/path_traversal/jwilk/dirsymlink.zip +0 -0
  2742. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/path_traversal/jwilk/dirsymlink2a.zip +0 -0
  2743. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/path_traversal/jwilk/dirsymlink2b.zip +0 -0
  2744. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/path_traversal/jwilk/relative0.zip +0 -0
  2745. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/path_traversal/jwilk/relative2.zip +0 -0
  2746. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/path_traversal/jwilk/symlink.zip +0 -0
  2747. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/path_traversal/relative1.zip +0 -0
  2748. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/path_traversal/tuzovakaoff/README.md +0 -3
  2749. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/path_traversal/tuzovakaoff/absolutepath.zip +0 -0
  2750. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/path_traversal/tuzovakaoff/symlink.zip +0 -0
  2751. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/rubycode.zip +0 -0
  2752. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/rubycode2.zip +0 -0
  2753. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/test.xls +0 -0
  2754. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/testDirectory.bin +0 -0
  2755. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/zip64-sample.zip +0 -0
  2756. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/zipWithDirs.zip +0 -0
  2757. data/vendor/bundle/gems/rubyzip-1.2.2/test/data/zipWithEncryption.zip +0 -0
  2758. data/vendor/bundle/gems/rubyzip-1.2.2/test/deflater_test.rb +0 -65
  2759. data/vendor/bundle/gems/rubyzip-1.2.2/test/encryption_test.rb +0 -42
  2760. data/vendor/bundle/gems/rubyzip-1.2.2/test/entry_set_test.rb +0 -163
  2761. data/vendor/bundle/gems/rubyzip-1.2.2/test/entry_test.rb +0 -154
  2762. data/vendor/bundle/gems/rubyzip-1.2.2/test/errors_test.rb +0 -35
  2763. data/vendor/bundle/gems/rubyzip-1.2.2/test/extra_field_test.rb +0 -76
  2764. data/vendor/bundle/gems/rubyzip-1.2.2/test/file_extract_directory_test.rb +0 -54
  2765. data/vendor/bundle/gems/rubyzip-1.2.2/test/file_extract_test.rb +0 -83
  2766. data/vendor/bundle/gems/rubyzip-1.2.2/test/file_permissions_test.rb +0 -65
  2767. data/vendor/bundle/gems/rubyzip-1.2.2/test/file_split_test.rb +0 -57
  2768. data/vendor/bundle/gems/rubyzip-1.2.2/test/file_test.rb +0 -601
  2769. data/vendor/bundle/gems/rubyzip-1.2.2/test/filesystem/dir_iterator_test.rb +0 -58
  2770. data/vendor/bundle/gems/rubyzip-1.2.2/test/filesystem/directory_test.rb +0 -139
  2771. data/vendor/bundle/gems/rubyzip-1.2.2/test/filesystem/file_mutating_test.rb +0 -87
  2772. data/vendor/bundle/gems/rubyzip-1.2.2/test/filesystem/file_nonmutating_test.rb +0 -508
  2773. data/vendor/bundle/gems/rubyzip-1.2.2/test/filesystem/file_stat_test.rb +0 -64
  2774. data/vendor/bundle/gems/rubyzip-1.2.2/test/gentestfiles.rb +0 -126
  2775. data/vendor/bundle/gems/rubyzip-1.2.2/test/inflater_test.rb +0 -14
  2776. data/vendor/bundle/gems/rubyzip-1.2.2/test/input_stream_test.rb +0 -182
  2777. data/vendor/bundle/gems/rubyzip-1.2.2/test/ioextras/abstract_input_stream_test.rb +0 -102
  2778. data/vendor/bundle/gems/rubyzip-1.2.2/test/ioextras/abstract_output_stream_test.rb +0 -106
  2779. data/vendor/bundle/gems/rubyzip-1.2.2/test/ioextras/fake_io_test.rb +0 -18
  2780. data/vendor/bundle/gems/rubyzip-1.2.2/test/local_entry_test.rb +0 -154
  2781. data/vendor/bundle/gems/rubyzip-1.2.2/test/output_stream_test.rb +0 -128
  2782. data/vendor/bundle/gems/rubyzip-1.2.2/test/pass_thru_compressor_test.rb +0 -30
  2783. data/vendor/bundle/gems/rubyzip-1.2.2/test/pass_thru_decompressor_test.rb +0 -14
  2784. data/vendor/bundle/gems/rubyzip-1.2.2/test/path_traversal_test.rb +0 -134
  2785. data/vendor/bundle/gems/rubyzip-1.2.2/test/samples/example_recursive_test.rb +0 -37
  2786. data/vendor/bundle/gems/rubyzip-1.2.2/test/settings_test.rb +0 -95
  2787. data/vendor/bundle/gems/rubyzip-1.2.2/test/test_helper.rb +0 -234
  2788. data/vendor/bundle/gems/rubyzip-1.2.2/test/unicode_file_names_and_comments_test.rb +0 -62
  2789. data/vendor/bundle/gems/rubyzip-1.2.2/test/zip64_full_test.rb +0 -51
  2790. data/vendor/bundle/gems/rubyzip-1.2.2/test/zip64_support_test.rb +0 -14
  2791. data/vendor/bundle/gems/sawyer-0.8.1/Gemfile +0 -8
  2792. data/vendor/bundle/gems/sawyer-0.8.1/LICENSE.md +0 -20
  2793. data/vendor/bundle/gems/sawyer-0.8.1/README.md +0 -19
  2794. data/vendor/bundle/gems/sawyer-0.8.1/Rakefile +0 -12
  2795. data/vendor/bundle/gems/sawyer-0.8.1/lib/sawyer.rb +0 -17
  2796. data/vendor/bundle/gems/sawyer-0.8.1/lib/sawyer/agent.rb +0 -158
  2797. data/vendor/bundle/gems/sawyer-0.8.1/lib/sawyer/link_parsers/hal.rb +0 -15
  2798. data/vendor/bundle/gems/sawyer-0.8.1/lib/sawyer/link_parsers/simple.rb +0 -29
  2799. data/vendor/bundle/gems/sawyer-0.8.1/lib/sawyer/relation.rb +0 -271
  2800. data/vendor/bundle/gems/sawyer-0.8.1/lib/sawyer/resource.rb +0 -155
  2801. data/vendor/bundle/gems/sawyer-0.8.1/lib/sawyer/response.rb +0 -64
  2802. data/vendor/bundle/gems/sawyer-0.8.1/lib/sawyer/serializer.rb +0 -127
  2803. data/vendor/bundle/gems/sawyer-0.8.1/sawyer.gemspec +0 -32
  2804. data/vendor/bundle/gems/sawyer-0.8.1/script/bootstrap +0 -5
  2805. data/vendor/bundle/gems/sawyer-0.8.1/script/console +0 -8
  2806. data/vendor/bundle/gems/sawyer-0.8.1/script/package +0 -8
  2807. data/vendor/bundle/gems/sawyer-0.8.1/script/release +0 -16
  2808. data/vendor/bundle/gems/sawyer-0.8.1/script/test +0 -6
  2809. data/vendor/bundle/gems/sawyer-0.8.1/test/agent_test.rb +0 -195
  2810. data/vendor/bundle/gems/sawyer-0.8.1/test/helper.rb +0 -7
  2811. data/vendor/bundle/gems/sawyer-0.8.1/test/relation_test.rb +0 -174
  2812. data/vendor/bundle/gems/sawyer-0.8.1/test/resource_test.rb +0 -199
  2813. data/vendor/bundle/gems/sawyer-0.8.1/test/response_test.rb +0 -77
  2814. data/vendor/bundle/gems/selenium-webdriver-3.141.0/CHANGES +0 -1497
  2815. data/vendor/bundle/gems/selenium-webdriver-3.141.0/Gemfile +0 -2
  2816. data/vendor/bundle/gems/selenium-webdriver-3.141.0/LICENSE +0 -202
  2817. data/vendor/bundle/gems/selenium-webdriver-3.141.0/README.md +0 -35
  2818. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium-webdriver.rb +0 -18
  2819. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/server.rb +0 -270
  2820. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver.rb +0 -99
  2821. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/atoms.rb +0 -18
  2822. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/atoms/getAttribute.js +0 -8
  2823. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/atoms/isDisplayed.js +0 -101
  2824. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/chrome.rb +0 -48
  2825. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/chrome/bridge.rb +0 -48
  2826. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/chrome/driver.rb +0 -117
  2827. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/chrome/options.rb +0 -186
  2828. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/chrome/profile.rb +0 -109
  2829. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/chrome/service.rb +0 -59
  2830. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common.rb +0 -74
  2831. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/action_builder.rb +0 -363
  2832. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/alert.rb +0 -45
  2833. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/bridge_helper.rb +0 -79
  2834. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/driver.rb +0 -293
  2835. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/driver_extensions/downloads_files.rb +0 -43
  2836. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/driver_extensions/has_addons.rb +0 -48
  2837. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/driver_extensions/has_debugger.rb +0 -40
  2838. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/driver_extensions/has_location.rb +0 -40
  2839. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/driver_extensions/has_network_conditions.rb +0 -49
  2840. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/driver_extensions/has_network_connection.rb +0 -56
  2841. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/driver_extensions/has_permissions.rb +0 -49
  2842. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/driver_extensions/has_remote_status.rb +0 -28
  2843. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/driver_extensions/has_session_id.rb +0 -37
  2844. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/driver_extensions/has_touch_screen.rb +0 -34
  2845. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/driver_extensions/has_web_storage.rb +0 -36
  2846. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/driver_extensions/rotatable.rb +0 -59
  2847. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/driver_extensions/takes_screenshot.rb +0 -62
  2848. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/driver_extensions/uploads_files.rb +0 -60
  2849. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/element.rb +0 -333
  2850. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/error.rb +0 -327
  2851. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/file_reaper.rb +0 -65
  2852. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/html5/local_storage.rb +0 -57
  2853. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/html5/session_storage.rb +0 -59
  2854. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/html5/shared_web_storage.rb +0 -50
  2855. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/interactions/input_device.rb +0 -51
  2856. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/interactions/interaction.rb +0 -50
  2857. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/interactions/interactions.rb +0 -41
  2858. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/interactions/key_actions.rb +0 -143
  2859. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/interactions/key_input.rb +0 -62
  2860. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/interactions/none_input.rb +0 -33
  2861. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/interactions/pointer_actions.rb +0 -361
  2862. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/interactions/pointer_input.rb +0 -132
  2863. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/keyboard.rb +0 -67
  2864. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/keys.rb +0 -143
  2865. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/log_entry.rb +0 -46
  2866. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/logger.rb +0 -140
  2867. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/logs.rb +0 -38
  2868. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/mouse.rb +0 -86
  2869. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/navigation.rb +0 -58
  2870. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/options.rb +0 -151
  2871. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/platform.rb +0 -226
  2872. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/port_prober.rb +0 -62
  2873. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/profile_helper.rb +0 -81
  2874. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/proxy.rb +0 -154
  2875. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/search_context.rb +0 -110
  2876. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/service.rb +0 -161
  2877. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/socket_lock.rb +0 -75
  2878. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/socket_poller.rb +0 -118
  2879. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/target_locator.rb +0 -109
  2880. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/timeouts.rb +0 -53
  2881. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/touch_action_builder.rb +0 -79
  2882. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/touch_screen.rb +0 -120
  2883. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/w3c_action_builder.rb +0 -209
  2884. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/w3c_options.rb +0 -43
  2885. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/wait.rb +0 -75
  2886. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/window.rb +0 -161
  2887. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/common/zipper.rb +0 -97
  2888. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/edge.rb +0 -38
  2889. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/edge/bridge.rb +0 -74
  2890. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/edge/driver.rb +0 -73
  2891. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/edge/options.rb +0 -77
  2892. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/edge/service.rb +0 -56
  2893. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/firefox.rb +0 -60
  2894. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/firefox/binary.rb +0 -186
  2895. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/firefox/driver.rb +0 -48
  2896. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/firefox/extension.rb +0 -95
  2897. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/firefox/extension/prefs.json +0 -69
  2898. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/firefox/extension/webdriver.xpi +0 -0
  2899. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/firefox/launcher.rb +0 -108
  2900. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/firefox/legacy/driver.rb +0 -79
  2901. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/firefox/marionette/bridge.rb +0 -47
  2902. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/firefox/marionette/driver.rb +0 -96
  2903. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/firefox/native/linux/amd64/x_ignore_nofocus.so +0 -0
  2904. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/firefox/native/linux/x86/x_ignore_nofocus.so +0 -0
  2905. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/firefox/options.rb +0 -149
  2906. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/firefox/profile.rb +0 -282
  2907. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/firefox/profiles_ini.rb +0 -71
  2908. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/firefox/service.rb +0 -63
  2909. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/firefox/util.rb +0 -44
  2910. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/ie.rb +0 -35
  2911. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/ie/driver.rb +0 -91
  2912. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/ie/options.rb +0 -136
  2913. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/ie/service.rb +0 -58
  2914. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/remote.rb +0 -33
  2915. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/remote/bridge.rb +0 -193
  2916. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/remote/capabilities.rb +0 -272
  2917. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/remote/driver.rb +0 -49
  2918. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/remote/http/common.rb +0 -98
  2919. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/remote/http/curb.rb +0 -95
  2920. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/remote/http/default.rb +0 -176
  2921. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/remote/http/persistent.rb +0 -58
  2922. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/remote/oss/bridge.rb +0 -591
  2923. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/remote/oss/commands.rb +0 -221
  2924. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/remote/response.rb +0 -128
  2925. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/remote/server_error.rb +0 -32
  2926. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/remote/w3c/bridge.rb +0 -590
  2927. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/remote/w3c/capabilities.rb +0 -294
  2928. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/remote/w3c/commands.rb +0 -154
  2929. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/safari.rb +0 -58
  2930. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/safari/bridge.rb +0 -49
  2931. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/safari/driver.rb +0 -70
  2932. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/safari/options.rb +0 -58
  2933. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/safari/service.rb +0 -57
  2934. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/support.rb +0 -23
  2935. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/support/abstract_event_listener.rb +0 -85
  2936. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/support/block_event_listener.rb +0 -32
  2937. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/support/color.rb +0 -144
  2938. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/support/escaper.rb +0 -41
  2939. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/support/event_firing_bridge.rb +0 -127
  2940. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/support/select.rb +0 -269
  2941. data/vendor/bundle/gems/selenium-webdriver-3.141.0/lib/selenium/webdriver/version.rb +0 -22
  2942. data/vendor/bundle/gems/selenium-webdriver-3.141.0/selenium-webdriver.gemspec +0 -40
  2943. data/vendor/bundle/gems/sequel-5.18.0/CHANGELOG +0 -2427
  2944. data/vendor/bundle/gems/sequel-5.18.0/MIT-LICENSE +0 -19
  2945. data/vendor/bundle/gems/sequel-5.18.0/README.rdoc +0 -902
  2946. data/vendor/bundle/gems/sequel-5.18.0/Rakefile +0 -151
  2947. data/vendor/bundle/gems/sequel-5.18.0/bin/sequel +0 -267
  2948. data/vendor/bundle/gems/sequel-5.18.0/doc/advanced_associations.rdoc +0 -882
  2949. data/vendor/bundle/gems/sequel-5.18.0/doc/association_basics.rdoc +0 -1759
  2950. data/vendor/bundle/gems/sequel-5.18.0/doc/bin_sequel.rdoc +0 -146
  2951. data/vendor/bundle/gems/sequel-5.18.0/doc/cheat_sheet.rdoc +0 -246
  2952. data/vendor/bundle/gems/sequel-5.18.0/doc/code_order.rdoc +0 -104
  2953. data/vendor/bundle/gems/sequel-5.18.0/doc/core_extensions.rdoc +0 -405
  2954. data/vendor/bundle/gems/sequel-5.18.0/doc/dataset_basics.rdoc +0 -96
  2955. data/vendor/bundle/gems/sequel-5.18.0/doc/dataset_filtering.rdoc +0 -207
  2956. data/vendor/bundle/gems/sequel-5.18.0/doc/extensions.rdoc +0 -77
  2957. data/vendor/bundle/gems/sequel-5.18.0/doc/mass_assignment.rdoc +0 -98
  2958. data/vendor/bundle/gems/sequel-5.18.0/doc/migration.rdoc +0 -639
  2959. data/vendor/bundle/gems/sequel-5.18.0/doc/model_dataset_method_design.rdoc +0 -129
  2960. data/vendor/bundle/gems/sequel-5.18.0/doc/model_hooks.rdoc +0 -254
  2961. data/vendor/bundle/gems/sequel-5.18.0/doc/model_plugins.rdoc +0 -270
  2962. data/vendor/bundle/gems/sequel-5.18.0/doc/mssql_stored_procedures.rdoc +0 -43
  2963. data/vendor/bundle/gems/sequel-5.18.0/doc/object_model.rdoc +0 -563
  2964. data/vendor/bundle/gems/sequel-5.18.0/doc/opening_databases.rdoc +0 -407
  2965. data/vendor/bundle/gems/sequel-5.18.0/doc/postgresql.rdoc +0 -532
  2966. data/vendor/bundle/gems/sequel-5.18.0/doc/prepared_statements.rdoc +0 -144
  2967. data/vendor/bundle/gems/sequel-5.18.0/doc/querying.rdoc +0 -1063
  2968. data/vendor/bundle/gems/sequel-5.18.0/doc/reflection.rdoc +0 -120
  2969. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.0.0.txt +0 -262
  2970. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.1.0.txt +0 -85
  2971. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.10.0.txt +0 -226
  2972. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.11.0.txt +0 -147
  2973. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.12.0.txt +0 -105
  2974. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.13.0.txt +0 -169
  2975. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.14.0.txt +0 -68
  2976. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.15.0.txt +0 -56
  2977. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.16.0.txt +0 -36
  2978. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.17.0.txt +0 -38
  2979. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.18.0.txt +0 -36
  2980. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.19.0.txt +0 -45
  2981. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.2.0.txt +0 -129
  2982. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.20.0.txt +0 -79
  2983. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.21.0.txt +0 -94
  2984. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.22.0.txt +0 -72
  2985. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.23.0.txt +0 -65
  2986. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.24.0.txt +0 -99
  2987. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.25.0.txt +0 -181
  2988. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.26.0.txt +0 -44
  2989. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.27.0.txt +0 -78
  2990. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.28.0.txt +0 -57
  2991. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.29.0.txt +0 -41
  2992. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.3.0.txt +0 -40
  2993. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.30.0.txt +0 -37
  2994. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.31.0.txt +0 -57
  2995. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.32.0.txt +0 -132
  2996. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.33.0.txt +0 -88
  2997. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.34.0.txt +0 -86
  2998. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.35.0.txt +0 -130
  2999. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.36.0.txt +0 -116
  3000. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.37.0.txt +0 -50
  3001. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.38.0.txt +0 -67
  3002. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.39.0.txt +0 -127
  3003. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.4.0.txt +0 -92
  3004. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.40.0.txt +0 -179
  3005. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.41.0.txt +0 -77
  3006. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.42.0.txt +0 -221
  3007. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.43.0.txt +0 -87
  3008. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.44.0.txt +0 -125
  3009. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.45.0.txt +0 -370
  3010. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.46.0.txt +0 -404
  3011. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.47.0.txt +0 -56
  3012. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.48.0.txt +0 -293
  3013. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.49.0.txt +0 -222
  3014. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.5.0.txt +0 -34
  3015. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.6.0.txt +0 -30
  3016. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.7.0.txt +0 -103
  3017. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.8.0.txt +0 -175
  3018. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/4.9.0.txt +0 -190
  3019. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/5.0.0.txt +0 -159
  3020. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/5.1.0.txt +0 -31
  3021. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/5.10.0.txt +0 -84
  3022. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/5.11.0.txt +0 -83
  3023. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/5.12.0.txt +0 -141
  3024. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/5.13.0.txt +0 -27
  3025. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/5.14.0.txt +0 -63
  3026. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/5.15.0.txt +0 -39
  3027. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/5.16.0.txt +0 -110
  3028. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/5.17.0.txt +0 -31
  3029. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/5.18.0.txt +0 -69
  3030. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/5.2.0.txt +0 -33
  3031. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/5.3.0.txt +0 -121
  3032. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/5.4.0.txt +0 -80
  3033. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/5.5.0.txt +0 -61
  3034. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/5.6.0.txt +0 -31
  3035. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/5.7.0.txt +0 -108
  3036. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/5.8.0.txt +0 -170
  3037. data/vendor/bundle/gems/sequel-5.18.0/doc/release_notes/5.9.0.txt +0 -99
  3038. data/vendor/bundle/gems/sequel-5.18.0/doc/schema_modification.rdoc +0 -679
  3039. data/vendor/bundle/gems/sequel-5.18.0/doc/security.rdoc +0 -443
  3040. data/vendor/bundle/gems/sequel-5.18.0/doc/sharding.rdoc +0 -270
  3041. data/vendor/bundle/gems/sequel-5.18.0/doc/sql.rdoc +0 -636
  3042. data/vendor/bundle/gems/sequel-5.18.0/doc/testing.rdoc +0 -171
  3043. data/vendor/bundle/gems/sequel-5.18.0/doc/thread_safety.rdoc +0 -15
  3044. data/vendor/bundle/gems/sequel-5.18.0/doc/transactions.rdoc +0 -220
  3045. data/vendor/bundle/gems/sequel-5.18.0/doc/validations.rdoc +0 -558
  3046. data/vendor/bundle/gems/sequel-5.18.0/doc/virtual_rows.rdoc +0 -265
  3047. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel.rb +0 -3
  3048. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/ado.rb +0 -275
  3049. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/ado/access.rb +0 -335
  3050. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/ado/mssql.rb +0 -62
  3051. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/amalgalite.rb +0 -171
  3052. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/ibmdb.rb +0 -422
  3053. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/jdbc.rb +0 -811
  3054. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/jdbc/db2.rb +0 -83
  3055. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/jdbc/derby.rb +0 -310
  3056. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/jdbc/h2.rb +0 -237
  3057. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/jdbc/hsqldb.rb +0 -220
  3058. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/jdbc/jtds.rb +0 -39
  3059. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/jdbc/mssql.rb +0 -30
  3060. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/jdbc/mysql.rb +0 -89
  3061. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/jdbc/oracle.rb +0 -146
  3062. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/jdbc/postgresql.rb +0 -242
  3063. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/jdbc/sqlanywhere.rb +0 -72
  3064. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/jdbc/sqlite.rb +0 -104
  3065. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/jdbc/sqlserver.rb +0 -88
  3066. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/jdbc/transactions.rb +0 -95
  3067. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/mock.rb +0 -381
  3068. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/mysql.rb +0 -355
  3069. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/mysql2.rb +0 -296
  3070. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/odbc.rb +0 -148
  3071. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/odbc/db2.rb +0 -11
  3072. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/odbc/mssql.rb +0 -57
  3073. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/odbc/oracle.rb +0 -11
  3074. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/oracle.rb +0 -409
  3075. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/postgres.rb +0 -814
  3076. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/postgresql.rb +0 -3
  3077. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/shared/access.rb +0 -290
  3078. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/shared/db2.rb +0 -462
  3079. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/shared/mssql.rb +0 -1084
  3080. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/shared/mysql.rb +0 -1061
  3081. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/shared/oracle.rb +0 -646
  3082. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/shared/postgres.rb +0 -1961
  3083. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/shared/sqlanywhere.rb +0 -454
  3084. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/shared/sqlite.rb +0 -885
  3085. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/sqlanywhere.rb +0 -176
  3086. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/sqlite.rb +0 -369
  3087. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/tinytds.rb +0 -246
  3088. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/utils/emulate_offset_with_reverse_and_count.rb +0 -74
  3089. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/utils/emulate_offset_with_row_number.rb +0 -93
  3090. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/utils/mysql_mysql2.rb +0 -84
  3091. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/utils/mysql_prepared_statements.rb +0 -56
  3092. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/utils/replace.rb +0 -35
  3093. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/utils/split_alter_table.rb +0 -46
  3094. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/utils/stored_procedures.rb +0 -61
  3095. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/adapters/utils/unmodified_identifiers.rb +0 -28
  3096. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/ast_transformer.rb +0 -124
  3097. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/connection_pool.rb +0 -148
  3098. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/connection_pool/sharded_single.rb +0 -112
  3099. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/connection_pool/sharded_threaded.rb +0 -371
  3100. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/connection_pool/single.rb +0 -59
  3101. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/connection_pool/threaded.rb +0 -285
  3102. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/core.rb +0 -434
  3103. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/database.rb +0 -37
  3104. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/database/connecting.rb +0 -332
  3105. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/database/dataset.rb +0 -79
  3106. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/database/dataset_defaults.rb +0 -93
  3107. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/database/features.rb +0 -150
  3108. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/database/logging.rb +0 -85
  3109. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/database/misc.rb +0 -550
  3110. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/database/query.rb +0 -363
  3111. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/database/schema_generator.rb +0 -643
  3112. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/database/schema_methods.rb +0 -1054
  3113. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/database/transactions.rb +0 -495
  3114. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/dataset.rb +0 -54
  3115. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/dataset/actions.rb +0 -1238
  3116. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/dataset/dataset_module.rb +0 -46
  3117. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/dataset/features.rb +0 -249
  3118. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/dataset/graph.rb +0 -296
  3119. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/dataset/misc.rb +0 -371
  3120. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/dataset/placeholder_literalizer.rb +0 -220
  3121. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/dataset/prepared_statements.rb +0 -427
  3122. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/dataset/query.rb +0 -1365
  3123. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/dataset/sql.rb +0 -1668
  3124. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/deprecated.rb +0 -68
  3125. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/exceptions.rb +0 -123
  3126. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/_model_constraint_validations.rb +0 -16
  3127. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/_model_pg_row.rb +0 -43
  3128. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/_pretty_table.rb +0 -86
  3129. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/arbitrary_servers.rb +0 -114
  3130. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/auto_literal_strings.rb +0 -74
  3131. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/blank.rb +0 -49
  3132. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/caller_logging.rb +0 -79
  3133. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/columns_introspection.rb +0 -89
  3134. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/connection_expiration.rb +0 -99
  3135. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/connection_validator.rb +0 -123
  3136. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/constant_sql_override.rb +0 -65
  3137. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/constraint_validations.rb +0 -496
  3138. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/core_extensions.rb +0 -222
  3139. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/core_refinements.rb +0 -217
  3140. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/current_datetime_timestamp.rb +0 -59
  3141. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/dataset_source_alias.rb +0 -95
  3142. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/date_arithmetic.rb +0 -214
  3143. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/datetime_parse_to_time.rb +0 -37
  3144. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/duplicate_columns_handler.rb +0 -92
  3145. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/empty_array_consider_nulls.rb +0 -39
  3146. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/error_sql.rb +0 -76
  3147. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/escaped_like.rb +0 -100
  3148. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/eval_inspect.rb +0 -181
  3149. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/freeze_datasets.rb +0 -3
  3150. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/from_block.rb +0 -3
  3151. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/graph_each.rb +0 -88
  3152. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/identifier_mangling.rb +0 -180
  3153. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/implicit_subquery.rb +0 -48
  3154. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/index_caching.rb +0 -107
  3155. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/inflector.rb +0 -250
  3156. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/integer64.rb +0 -30
  3157. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/looser_typecasting.rb +0 -54
  3158. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/migration.rb +0 -786
  3159. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/mssql_emulate_lateral_with_apply.rb +0 -84
  3160. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/named_timezones.rb +0 -120
  3161. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/no_auto_literal_strings.rb +0 -4
  3162. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/null_dataset.rb +0 -109
  3163. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/pagination.rb +0 -140
  3164. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/pg_array.rb +0 -522
  3165. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/pg_array_ops.rb +0 -328
  3166. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/pg_enum.rb +0 -184
  3167. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/pg_extended_date_support.rb +0 -250
  3168. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/pg_hstore.rb +0 -342
  3169. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/pg_hstore_ops.rb +0 -361
  3170. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/pg_inet.rb +0 -127
  3171. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/pg_inet_ops.rb +0 -204
  3172. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/pg_interval.rb +0 -196
  3173. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/pg_json.rb +0 -382
  3174. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/pg_json_ops.rb +0 -513
  3175. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/pg_loose_count.rb +0 -37
  3176. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/pg_range.rb +0 -565
  3177. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/pg_range_ops.rb +0 -165
  3178. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/pg_row.rb +0 -580
  3179. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/pg_row_ops.rb +0 -193
  3180. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/pg_static_cache_updater.rb +0 -144
  3181. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/pg_timestamptz.rb +0 -26
  3182. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/pretty_table.rb +0 -40
  3183. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/query.rb +0 -82
  3184. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/round_timestamps.rb +0 -49
  3185. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/s.rb +0 -57
  3186. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/schema_caching.rb +0 -88
  3187. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/schema_dumper.rb +0 -498
  3188. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/select_remove.rb +0 -52
  3189. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/sequel_4_dataset_methods.rb +0 -85
  3190. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/server_block.rb +0 -171
  3191. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/server_logging.rb +0 -61
  3192. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/split_array_nil.rb +0 -70
  3193. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/sql_comments.rb +0 -96
  3194. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/sql_expr.rb +0 -23
  3195. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/string_agg.rb +0 -181
  3196. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/string_date_time.rb +0 -52
  3197. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/symbol_aref.rb +0 -53
  3198. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/symbol_aref_refinement.rb +0 -41
  3199. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/symbol_as.rb +0 -23
  3200. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/symbol_as_refinement.rb +0 -35
  3201. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/synchronize_sql.rb +0 -45
  3202. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/thread_local_timezones.rb +0 -59
  3203. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/to_dot.rb +0 -158
  3204. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/extensions/virtual_row_method_block.rb +0 -44
  3205. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/model.rb +0 -83
  3206. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/model/associations.rb +0 -3735
  3207. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/model/base.rb +0 -2225
  3208. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/model/dataset_module.rb +0 -33
  3209. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/model/default_inflections.rb +0 -47
  3210. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/model/errors.rb +0 -58
  3211. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/model/exceptions.rb +0 -55
  3212. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/model/inflections.rb +0 -151
  3213. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/model/plugins.rb +0 -55
  3214. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/accessed_columns.rb +0 -63
  3215. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/active_model.rb +0 -124
  3216. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/after_initialize.rb +0 -39
  3217. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/association_dependencies.rb +0 -106
  3218. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/association_pks.rb +0 -264
  3219. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/association_proxies.rb +0 -125
  3220. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/auto_validations.rb +0 -230
  3221. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/before_after_save.rb +0 -8
  3222. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/blacklist_security.rb +0 -105
  3223. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/boolean_readers.rb +0 -59
  3224. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/boolean_subsets.rb +0 -61
  3225. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/caching.rb +0 -161
  3226. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/class_table_inheritance.rb +0 -433
  3227. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/column_conflicts.rb +0 -108
  3228. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/column_select.rb +0 -61
  3229. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/columns_updated.rb +0 -42
  3230. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/composition.rb +0 -195
  3231. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/constraint_validations.rb +0 -250
  3232. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/csv_serializer.rb +0 -177
  3233. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/dataset_associations.rb +0 -149
  3234. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/def_dataset_method.rb +0 -90
  3235. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/defaults_setter.rb +0 -130
  3236. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/delay_add_association.rb +0 -53
  3237. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/dirty.rb +0 -238
  3238. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/eager_each.rb +0 -88
  3239. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/eager_graph_eager.rb +0 -139
  3240. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/error_splitter.rb +0 -61
  3241. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/finder.rb +0 -246
  3242. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/force_encoding.rb +0 -78
  3243. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/hook_class_methods.rb +0 -98
  3244. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/input_transformer.rb +0 -89
  3245. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/insert_returning_select.rb +0 -72
  3246. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/instance_filters.rb +0 -135
  3247. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/instance_hooks.rb +0 -115
  3248. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/inverted_subsets.rb +0 -59
  3249. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/json_serializer.rb +0 -429
  3250. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/lazy_attributes.rb +0 -123
  3251. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/list.rb +0 -203
  3252. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/many_through_many.rb +0 -338
  3253. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/modification_detection.rb +0 -102
  3254. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/mssql_optimistic_locking.rb +0 -95
  3255. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/nested_attributes.rb +0 -323
  3256. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/optimistic_locking.rb +0 -85
  3257. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/pg_array_associations.rb +0 -559
  3258. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/pg_auto_constraint_validations.rb +0 -260
  3259. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/pg_row.rb +0 -79
  3260. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/prepared_statements.rb +0 -192
  3261. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/prepared_statements_safe.rb +0 -83
  3262. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/rcte_tree.rb +0 -332
  3263. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/serialization.rb +0 -230
  3264. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/serialization_modification_detection.rb +0 -86
  3265. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/sharding.rb +0 -120
  3266. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/single_table_inheritance.rb +0 -256
  3267. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/singular_table_names.rb +0 -33
  3268. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/skip_create_refresh.rb +0 -37
  3269. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/split_values.rb +0 -71
  3270. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/static_cache.rb +0 -259
  3271. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/string_stripper.rb +0 -59
  3272. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/subclasses.rb +0 -77
  3273. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/subset_conditions.rb +0 -48
  3274. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/table_select.rb +0 -43
  3275. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/tactical_eager_loading.rb +0 -199
  3276. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/throw_failures.rb +0 -110
  3277. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/timestamps.rb +0 -109
  3278. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/touch.rb +0 -153
  3279. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/tree.rb +0 -183
  3280. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/typecast_on_load.rb +0 -89
  3281. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/unlimited_update.rb +0 -27
  3282. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/update_or_create.rb +0 -64
  3283. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/update_primary_key.rb +0 -72
  3284. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/update_refresh.rb +0 -88
  3285. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/uuid.rb +0 -70
  3286. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/validate_associated.rb +0 -75
  3287. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/validation_class_methods.rb +0 -454
  3288. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/validation_contexts.rb +0 -49
  3289. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/validation_helpers.rb +0 -317
  3290. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/whitelist_security.rb +0 -122
  3291. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/plugins/xml_serializer.rb +0 -411
  3292. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/sql.rb +0 -2034
  3293. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/timezones.rb +0 -210
  3294. data/vendor/bundle/gems/sequel-5.18.0/lib/sequel/version.rb +0 -25
  3295. data/vendor/bundle/gems/sequel-5.18.0/spec/adapter_spec.rb +0 -4
  3296. data/vendor/bundle/gems/sequel-5.18.0/spec/adapters/db2_spec.rb +0 -170
  3297. data/vendor/bundle/gems/sequel-5.18.0/spec/adapters/mssql_spec.rb +0 -804
  3298. data/vendor/bundle/gems/sequel-5.18.0/spec/adapters/mysql_spec.rb +0 -1065
  3299. data/vendor/bundle/gems/sequel-5.18.0/spec/adapters/oracle_spec.rb +0 -371
  3300. data/vendor/bundle/gems/sequel-5.18.0/spec/adapters/postgres_spec.rb +0 -4085
  3301. data/vendor/bundle/gems/sequel-5.18.0/spec/adapters/spec_helper.rb +0 -44
  3302. data/vendor/bundle/gems/sequel-5.18.0/spec/adapters/sqlanywhere_spec.rb +0 -97
  3303. data/vendor/bundle/gems/sequel-5.18.0/spec/adapters/sqlite_spec.rb +0 -652
  3304. data/vendor/bundle/gems/sequel-5.18.0/spec/bin_spec.rb +0 -278
  3305. data/vendor/bundle/gems/sequel-5.18.0/spec/core/connection_pool_spec.rb +0 -1250
  3306. data/vendor/bundle/gems/sequel-5.18.0/spec/core/database_spec.rb +0 -2794
  3307. data/vendor/bundle/gems/sequel-5.18.0/spec/core/dataset_spec.rb +0 -5515
  3308. data/vendor/bundle/gems/sequel-5.18.0/spec/core/deprecated_spec.rb +0 -70
  3309. data/vendor/bundle/gems/sequel-5.18.0/spec/core/expression_filters_spec.rb +0 -1455
  3310. data/vendor/bundle/gems/sequel-5.18.0/spec/core/mock_adapter_spec.rb +0 -722
  3311. data/vendor/bundle/gems/sequel-5.18.0/spec/core/object_graph_spec.rb +0 -336
  3312. data/vendor/bundle/gems/sequel-5.18.0/spec/core/placeholder_literalizer_spec.rb +0 -166
  3313. data/vendor/bundle/gems/sequel-5.18.0/spec/core/schema_generator_spec.rb +0 -214
  3314. data/vendor/bundle/gems/sequel-5.18.0/spec/core/schema_spec.rb +0 -1820
  3315. data/vendor/bundle/gems/sequel-5.18.0/spec/core/spec_helper.rb +0 -24
  3316. data/vendor/bundle/gems/sequel-5.18.0/spec/core/version_spec.rb +0 -14
  3317. data/vendor/bundle/gems/sequel-5.18.0/spec/core_extensions_spec.rb +0 -763
  3318. data/vendor/bundle/gems/sequel-5.18.0/spec/core_model_spec.rb +0 -2
  3319. data/vendor/bundle/gems/sequel-5.18.0/spec/core_spec.rb +0 -1
  3320. data/vendor/bundle/gems/sequel-5.18.0/spec/deprecation_helper.rb +0 -30
  3321. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/accessed_columns_spec.rb +0 -51
  3322. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/active_model_spec.rb +0 -99
  3323. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/after_initialize_spec.rb +0 -28
  3324. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/arbitrary_servers_spec.rb +0 -109
  3325. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/association_dependencies_spec.rb +0 -125
  3326. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/association_pks_spec.rb +0 -423
  3327. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/association_proxies_spec.rb +0 -100
  3328. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/auto_literal_strings_spec.rb +0 -205
  3329. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/auto_validations_spec.rb +0 -229
  3330. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/blacklist_security_spec.rb +0 -95
  3331. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/blank_spec.rb +0 -69
  3332. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/boolean_readers_spec.rb +0 -93
  3333. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/boolean_subsets_spec.rb +0 -47
  3334. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/caching_spec.rb +0 -273
  3335. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/caller_logging_spec.rb +0 -52
  3336. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/class_table_inheritance_spec.rb +0 -728
  3337. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/column_conflicts_spec.rb +0 -75
  3338. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/column_select_spec.rb +0 -129
  3339. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/columns_introspection_spec.rb +0 -90
  3340. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/columns_updated_spec.rb +0 -35
  3341. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/composition_spec.rb +0 -248
  3342. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/connection_expiration_spec.rb +0 -151
  3343. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/connection_validator_spec.rb +0 -144
  3344. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/constant_sql_override_spec.rb +0 -24
  3345. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/constraint_validations_plugin_spec.rb +0 -300
  3346. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/constraint_validations_spec.rb +0 -421
  3347. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/core_refinements_spec.rb +0 -528
  3348. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/csv_serializer_spec.rb +0 -183
  3349. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/current_datetime_timestamp_spec.rb +0 -27
  3350. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/dataset_associations_spec.rb +0 -365
  3351. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/dataset_source_alias_spec.rb +0 -51
  3352. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/date_arithmetic_spec.rb +0 -181
  3353. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/datetime_parse_to_time_spec.rb +0 -169
  3354. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/def_dataset_method_spec.rb +0 -100
  3355. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/defaults_setter_spec.rb +0 -150
  3356. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/delay_add_association_spec.rb +0 -73
  3357. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/dirty_spec.rb +0 -189
  3358. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/duplicate_columns_handler_spec.rb +0 -104
  3359. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/eager_each_spec.rb +0 -62
  3360. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/eager_graph_eager_spec.rb +0 -100
  3361. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/empty_array_consider_nulls_spec.rb +0 -24
  3362. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/error_splitter_spec.rb +0 -18
  3363. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/error_sql_spec.rb +0 -20
  3364. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/escaped_like_spec.rb +0 -40
  3365. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/eval_inspect_spec.rb +0 -81
  3366. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/finder_spec.rb +0 -260
  3367. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/force_encoding_spec.rb +0 -126
  3368. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/freeze_datasets_spec.rb +0 -31
  3369. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/graph_each_spec.rb +0 -113
  3370. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/hook_class_methods_spec.rb +0 -380
  3371. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/identifier_mangling_spec.rb +0 -201
  3372. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/implicit_subquery_spec.rb +0 -58
  3373. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/index_caching_spec.rb +0 -66
  3374. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/inflector_spec.rb +0 -183
  3375. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/input_transformer_spec.rb +0 -69
  3376. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/insert_returning_select_spec.rb +0 -72
  3377. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/instance_filters_spec.rb +0 -79
  3378. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/instance_hooks_spec.rb +0 -246
  3379. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/integer64_spec.rb +0 -22
  3380. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/inverted_subsets_spec.rb +0 -33
  3381. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/json_serializer_spec.rb +0 -336
  3382. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/lazy_attributes_spec.rb +0 -183
  3383. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/list_spec.rb +0 -291
  3384. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/looser_typecasting_spec.rb +0 -43
  3385. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/many_through_many_spec.rb +0 -2177
  3386. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/migration_spec.rb +0 -851
  3387. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/modification_detection_spec.rb +0 -93
  3388. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/mssql_optimistic_locking_spec.rb +0 -92
  3389. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/named_timezones_spec.rb +0 -111
  3390. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/nested_attributes_spec.rb +0 -767
  3391. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/null_dataset_spec.rb +0 -85
  3392. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/optimistic_locking_spec.rb +0 -127
  3393. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pagination_spec.rb +0 -116
  3394. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_array_associations_spec.rb +0 -802
  3395. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_array_ops_spec.rb +0 -144
  3396. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_array_spec.rb +0 -398
  3397. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_auto_constraint_validations_spec.rb +0 -164
  3398. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_enum_spec.rb +0 -113
  3399. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_extended_date_support_spec.rb +0 -126
  3400. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_hstore_ops_spec.rb +0 -238
  3401. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_hstore_spec.rb +0 -219
  3402. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_inet_ops_spec.rb +0 -102
  3403. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_inet_spec.rb +0 -72
  3404. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_interval_spec.rb +0 -103
  3405. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_json_ops_spec.rb +0 -289
  3406. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_json_spec.rb +0 -262
  3407. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_loose_count_spec.rb +0 -23
  3408. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_range_ops_spec.rb +0 -60
  3409. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_range_spec.rb +0 -519
  3410. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_row_ops_spec.rb +0 -61
  3411. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_row_plugin_spec.rb +0 -60
  3412. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_row_spec.rb +0 -363
  3413. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_static_cache_updater_spec.rb +0 -93
  3414. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pg_timestamptz_spec.rb +0 -17
  3415. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/prepared_statements_safe_spec.rb +0 -66
  3416. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/prepared_statements_spec.rb +0 -177
  3417. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/pretty_table_spec.rb +0 -123
  3418. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/query_spec.rb +0 -94
  3419. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/rcte_tree_spec.rb +0 -381
  3420. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/round_timestamps_spec.rb +0 -39
  3421. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/s_spec.rb +0 -60
  3422. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/schema_caching_spec.rb +0 -64
  3423. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/schema_dumper_spec.rb +0 -868
  3424. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/select_remove_spec.rb +0 -38
  3425. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/sequel_4_dataset_methods_spec.rb +0 -121
  3426. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/serialization_modification_detection_spec.rb +0 -98
  3427. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/serialization_spec.rb +0 -365
  3428. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/server_block_spec.rb +0 -97
  3429. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/server_logging_spec.rb +0 -45
  3430. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/sharding_spec.rb +0 -189
  3431. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/shared_caching_spec.rb +0 -151
  3432. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/single_table_inheritance_spec.rb +0 -347
  3433. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/singular_table_names_spec.rb +0 -22
  3434. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/skip_create_refresh_spec.rb +0 -18
  3435. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/spec_helper.rb +0 -63
  3436. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/split_array_nil_spec.rb +0 -24
  3437. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/split_values_spec.rb +0 -57
  3438. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/sql_comments_spec.rb +0 -33
  3439. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/sql_expr_spec.rb +0 -59
  3440. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/static_cache_spec.rb +0 -471
  3441. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/string_agg_spec.rb +0 -90
  3442. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/string_date_time_spec.rb +0 -95
  3443. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/string_stripper_spec.rb +0 -68
  3444. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/subclasses_spec.rb +0 -79
  3445. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/subset_conditions_spec.rb +0 -38
  3446. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/symbol_aref_refinement_spec.rb +0 -28
  3447. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/symbol_as_refinement_spec.rb +0 -21
  3448. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/synchronize_sql_spec.rb +0 -124
  3449. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/table_select_spec.rb +0 -83
  3450. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/tactical_eager_loading_spec.rb +0 -402
  3451. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/thread_local_timezones_spec.rb +0 -67
  3452. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/throw_failures_spec.rb +0 -74
  3453. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/timestamps_spec.rb +0 -209
  3454. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/to_dot_spec.rb +0 -153
  3455. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/touch_spec.rb +0 -226
  3456. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/tree_spec.rb +0 -334
  3457. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/typecast_on_load_spec.rb +0 -86
  3458. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/unlimited_update_spec.rb +0 -21
  3459. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/update_or_create_spec.rb +0 -83
  3460. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/update_primary_key_spec.rb +0 -105
  3461. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/update_refresh_spec.rb +0 -59
  3462. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/uuid_spec.rb +0 -101
  3463. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/validate_associated_spec.rb +0 -52
  3464. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/validation_class_methods_spec.rb +0 -1040
  3465. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/validation_contexts_spec.rb +0 -31
  3466. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/validation_helpers_spec.rb +0 -525
  3467. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/whitelist_security_spec.rb +0 -157
  3468. data/vendor/bundle/gems/sequel-5.18.0/spec/extensions/xml_serializer_spec.rb +0 -213
  3469. data/vendor/bundle/gems/sequel-5.18.0/spec/files/bad_down_migration/001_create_alt_basic.rb +0 -4
  3470. data/vendor/bundle/gems/sequel-5.18.0/spec/files/bad_down_migration/002_create_alt_advanced.rb +0 -4
  3471. data/vendor/bundle/gems/sequel-5.18.0/spec/files/bad_timestamped_migrations/1273253849_create_sessions.rb +0 -9
  3472. data/vendor/bundle/gems/sequel-5.18.0/spec/files/bad_timestamped_migrations/1273253851_create_nodes.rb +0 -9
  3473. data/vendor/bundle/gems/sequel-5.18.0/spec/files/bad_timestamped_migrations/1273253853_3_create_users.rb +0 -3
  3474. data/vendor/bundle/gems/sequel-5.18.0/spec/files/bad_up_migration/001_create_alt_basic.rb +0 -4
  3475. data/vendor/bundle/gems/sequel-5.18.0/spec/files/bad_up_migration/002_create_alt_advanced.rb +0 -3
  3476. data/vendor/bundle/gems/sequel-5.18.0/spec/files/convert_to_timestamp_migrations/001_create_sessions.rb +0 -9
  3477. data/vendor/bundle/gems/sequel-5.18.0/spec/files/convert_to_timestamp_migrations/002_create_nodes.rb +0 -9
  3478. data/vendor/bundle/gems/sequel-5.18.0/spec/files/convert_to_timestamp_migrations/003_3_create_users.rb +0 -4
  3479. data/vendor/bundle/gems/sequel-5.18.0/spec/files/convert_to_timestamp_migrations/1273253850_create_artists.rb +0 -9
  3480. data/vendor/bundle/gems/sequel-5.18.0/spec/files/convert_to_timestamp_migrations/1273253852_create_albums.rb +0 -9
  3481. data/vendor/bundle/gems/sequel-5.18.0/spec/files/double_migration/001_create_sessions.rb +0 -9
  3482. data/vendor/bundle/gems/sequel-5.18.0/spec/files/double_migration/002_create_nodes.rb +0 -19
  3483. data/vendor/bundle/gems/sequel-5.18.0/spec/files/double_migration/003_3_create_users.rb +0 -4
  3484. data/vendor/bundle/gems/sequel-5.18.0/spec/files/duplicate_integer_migrations/001_create_alt_advanced.rb +0 -4
  3485. data/vendor/bundle/gems/sequel-5.18.0/spec/files/duplicate_integer_migrations/001_create_alt_basic.rb +0 -4
  3486. data/vendor/bundle/gems/sequel-5.18.0/spec/files/duplicate_timestamped_migrations/1273253849_create_sessions.rb +0 -9
  3487. data/vendor/bundle/gems/sequel-5.18.0/spec/files/duplicate_timestamped_migrations/1273253853_create_nodes.rb +0 -9
  3488. data/vendor/bundle/gems/sequel-5.18.0/spec/files/duplicate_timestamped_migrations/1273253853_create_users.rb +0 -4
  3489. data/vendor/bundle/gems/sequel-5.18.0/spec/files/empty_migration/001_create_sessions.rb +0 -9
  3490. data/vendor/bundle/gems/sequel-5.18.0/spec/files/empty_migration/002_create_nodes.rb +0 -0
  3491. data/vendor/bundle/gems/sequel-5.18.0/spec/files/empty_migration/003_3_create_users.rb +0 -4
  3492. data/vendor/bundle/gems/sequel-5.18.0/spec/files/integer_migrations/001_create_sessions.rb +0 -9
  3493. data/vendor/bundle/gems/sequel-5.18.0/spec/files/integer_migrations/002_create_nodes.rb +0 -9
  3494. data/vendor/bundle/gems/sequel-5.18.0/spec/files/integer_migrations/003_3_create_users.rb +0 -4
  3495. data/vendor/bundle/gems/sequel-5.18.0/spec/files/interleaved_timestamped_migrations/1273253849_create_sessions.rb +0 -9
  3496. data/vendor/bundle/gems/sequel-5.18.0/spec/files/interleaved_timestamped_migrations/1273253850_create_artists.rb +0 -9
  3497. data/vendor/bundle/gems/sequel-5.18.0/spec/files/interleaved_timestamped_migrations/1273253851_create_nodes.rb +0 -9
  3498. data/vendor/bundle/gems/sequel-5.18.0/spec/files/interleaved_timestamped_migrations/1273253852_create_albums.rb +0 -9
  3499. data/vendor/bundle/gems/sequel-5.18.0/spec/files/interleaved_timestamped_migrations/1273253853_3_create_users.rb +0 -4
  3500. data/vendor/bundle/gems/sequel-5.18.0/spec/files/missing_integer_migrations/001_create_alt_basic.rb +0 -4
  3501. data/vendor/bundle/gems/sequel-5.18.0/spec/files/missing_integer_migrations/003_create_alt_advanced.rb +0 -4
  3502. data/vendor/bundle/gems/sequel-5.18.0/spec/files/missing_timestamped_migrations/1273253849_create_sessions.rb +0 -9
  3503. data/vendor/bundle/gems/sequel-5.18.0/spec/files/missing_timestamped_migrations/1273253853_3_create_users.rb +0 -4
  3504. data/vendor/bundle/gems/sequel-5.18.0/spec/files/reversible_migrations/001_reversible.rb +0 -5
  3505. data/vendor/bundle/gems/sequel-5.18.0/spec/files/reversible_migrations/002_reversible.rb +0 -5
  3506. data/vendor/bundle/gems/sequel-5.18.0/spec/files/reversible_migrations/003_reversible.rb +0 -5
  3507. data/vendor/bundle/gems/sequel-5.18.0/spec/files/reversible_migrations/004_reversible.rb +0 -5
  3508. data/vendor/bundle/gems/sequel-5.18.0/spec/files/reversible_migrations/005_reversible.rb +0 -10
  3509. data/vendor/bundle/gems/sequel-5.18.0/spec/files/reversible_migrations/006_reversible.rb +0 -10
  3510. data/vendor/bundle/gems/sequel-5.18.0/spec/files/reversible_migrations/007_reversible.rb +0 -10
  3511. data/vendor/bundle/gems/sequel-5.18.0/spec/files/timestamped_migrations/1273253849_create_sessions.rb +0 -9
  3512. data/vendor/bundle/gems/sequel-5.18.0/spec/files/timestamped_migrations/1273253851_create_nodes.rb +0 -9
  3513. data/vendor/bundle/gems/sequel-5.18.0/spec/files/timestamped_migrations/1273253853_3_create_users.rb +0 -4
  3514. data/vendor/bundle/gems/sequel-5.18.0/spec/files/transaction_specified_migrations/001_create_alt_basic.rb +0 -4
  3515. data/vendor/bundle/gems/sequel-5.18.0/spec/files/transaction_specified_migrations/002_create_basic.rb +0 -4
  3516. data/vendor/bundle/gems/sequel-5.18.0/spec/files/transaction_unspecified_migrations/001_create_alt_basic.rb +0 -3
  3517. data/vendor/bundle/gems/sequel-5.18.0/spec/files/transaction_unspecified_migrations/002_create_basic.rb +0 -3
  3518. data/vendor/bundle/gems/sequel-5.18.0/spec/files/uppercase_timestamped_migrations/1273253849_CREATE_SESSIONS.RB +0 -9
  3519. data/vendor/bundle/gems/sequel-5.18.0/spec/files/uppercase_timestamped_migrations/1273253851_CREATE_NODES.RB +0 -9
  3520. data/vendor/bundle/gems/sequel-5.18.0/spec/files/uppercase_timestamped_migrations/1273253853_3_CREATE_USERS.RB +0 -4
  3521. data/vendor/bundle/gems/sequel-5.18.0/spec/guards_helper.rb +0 -59
  3522. data/vendor/bundle/gems/sequel-5.18.0/spec/integration/associations_test.rb +0 -2597
  3523. data/vendor/bundle/gems/sequel-5.18.0/spec/integration/database_test.rb +0 -113
  3524. data/vendor/bundle/gems/sequel-5.18.0/spec/integration/dataset_test.rb +0 -1981
  3525. data/vendor/bundle/gems/sequel-5.18.0/spec/integration/eager_loader_test.rb +0 -687
  3526. data/vendor/bundle/gems/sequel-5.18.0/spec/integration/migrator_test.rb +0 -262
  3527. data/vendor/bundle/gems/sequel-5.18.0/spec/integration/model_test.rb +0 -203
  3528. data/vendor/bundle/gems/sequel-5.18.0/spec/integration/plugin_test.rb +0 -2381
  3529. data/vendor/bundle/gems/sequel-5.18.0/spec/integration/prepared_statement_test.rb +0 -405
  3530. data/vendor/bundle/gems/sequel-5.18.0/spec/integration/schema_test.rb +0 -889
  3531. data/vendor/bundle/gems/sequel-5.18.0/spec/integration/spec_helper.rb +0 -65
  3532. data/vendor/bundle/gems/sequel-5.18.0/spec/integration/timezone_test.rb +0 -86
  3533. data/vendor/bundle/gems/sequel-5.18.0/spec/integration/transaction_test.rb +0 -553
  3534. data/vendor/bundle/gems/sequel-5.18.0/spec/integration/type_test.rb +0 -127
  3535. data/vendor/bundle/gems/sequel-5.18.0/spec/model/association_reflection_spec.rb +0 -803
  3536. data/vendor/bundle/gems/sequel-5.18.0/spec/model/associations_spec.rb +0 -4658
  3537. data/vendor/bundle/gems/sequel-5.18.0/spec/model/base_spec.rb +0 -875
  3538. data/vendor/bundle/gems/sequel-5.18.0/spec/model/class_dataset_methods_spec.rb +0 -146
  3539. data/vendor/bundle/gems/sequel-5.18.0/spec/model/dataset_methods_spec.rb +0 -198
  3540. data/vendor/bundle/gems/sequel-5.18.0/spec/model/eager_loading_spec.rb +0 -2377
  3541. data/vendor/bundle/gems/sequel-5.18.0/spec/model/hooks_spec.rb +0 -370
  3542. data/vendor/bundle/gems/sequel-5.18.0/spec/model/inflector_spec.rb +0 -26
  3543. data/vendor/bundle/gems/sequel-5.18.0/spec/model/model_spec.rb +0 -956
  3544. data/vendor/bundle/gems/sequel-5.18.0/spec/model/plugins_spec.rb +0 -318
  3545. data/vendor/bundle/gems/sequel-5.18.0/spec/model/record_spec.rb +0 -2118
  3546. data/vendor/bundle/gems/sequel-5.18.0/spec/model/spec_helper.rb +0 -46
  3547. data/vendor/bundle/gems/sequel-5.18.0/spec/model/validations_spec.rb +0 -220
  3548. data/vendor/bundle/gems/sequel-5.18.0/spec/model_no_assoc_spec.rb +0 -1
  3549. data/vendor/bundle/gems/sequel-5.18.0/spec/model_spec.rb +0 -1
  3550. data/vendor/bundle/gems/sequel-5.18.0/spec/plugin_spec.rb +0 -1
  3551. data/vendor/bundle/gems/sequel-5.18.0/spec/sequel_coverage.rb +0 -15
  3552. data/vendor/bundle/gems/sequel-5.18.0/spec/sequel_warning.rb +0 -4
  3553. data/vendor/bundle/gems/sequel-5.18.0/spec/spec_config.rb +0 -12
  3554. data/vendor/bundle/gems/simplecov-0.16.1/CHANGELOG.md +0 -481
  3555. data/vendor/bundle/gems/simplecov-0.16.1/CONTRIBUTING.md +0 -51
  3556. data/vendor/bundle/gems/simplecov-0.16.1/ISSUE_TEMPLATE.md +0 -23
  3557. data/vendor/bundle/gems/simplecov-0.16.1/LICENSE +0 -20
  3558. data/vendor/bundle/gems/simplecov-0.16.1/README.md +0 -710
  3559. data/vendor/bundle/gems/simplecov-0.16.1/doc/alternate-formatters.md +0 -51
  3560. data/vendor/bundle/gems/simplecov-0.16.1/doc/commercial-services.md +0 -20
  3561. data/vendor/bundle/gems/simplecov-0.16.1/doc/editor-integration.md +0 -18
  3562. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov.rb +0 -281
  3563. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/command_guesser.rb +0 -61
  3564. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/configuration.rb +0 -305
  3565. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/defaults.rb +0 -50
  3566. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/exit_codes.rb +0 -10
  3567. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/file_list.rb +0 -61
  3568. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/filter.rb +0 -91
  3569. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/formatter.rb +0 -10
  3570. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/formatter/multi_formatter.rb +0 -34
  3571. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/formatter/simple_formatter.rb +0 -25
  3572. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/jruby_fix.rb +0 -44
  3573. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/last_run.rb +0 -26
  3574. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/lines_classifier.rb +0 -48
  3575. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/load_global_config.rb +0 -8
  3576. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/no_defaults.rb +0 -4
  3577. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/profiles.rb +0 -33
  3578. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/profiles/bundler_filter.rb +0 -5
  3579. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/profiles/rails.rb +0 -18
  3580. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/profiles/root_filter.rb +0 -10
  3581. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/profiles/test_frameworks.rb +0 -8
  3582. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/railtie.rb +0 -9
  3583. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/railties/tasks.rake +0 -13
  3584. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/raw_coverage.rb +0 -41
  3585. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/result.rb +0 -88
  3586. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/result_merger.rb +0 -123
  3587. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/source_file.rb +0 -203
  3588. data/vendor/bundle/gems/simplecov-0.16.1/lib/simplecov/version.rb +0 -5
  3589. data/vendor/bundle/gems/simplecov-html-0.10.2/CHANGELOG.md +0 -13
  3590. data/vendor/bundle/gems/simplecov-html-0.10.2/Gemfile +0 -34
  3591. data/vendor/bundle/gems/simplecov-html-0.10.2/Guardfile +0 -12
  3592. data/vendor/bundle/gems/simplecov-html-0.10.2/LICENSE +0 -20
  3593. data/vendor/bundle/gems/simplecov-html-0.10.2/README.md +0 -30
  3594. data/vendor/bundle/gems/simplecov-html-0.10.2/Rakefile +0 -41
  3595. data/vendor/bundle/gems/simplecov-html-0.10.2/assets/javascripts/application.js +0 -127
  3596. data/vendor/bundle/gems/simplecov-html-0.10.2/assets/javascripts/libraries/jquery-1.6.2.min.js +0 -18
  3597. data/vendor/bundle/gems/simplecov-html-0.10.2/assets/javascripts/plugins/highlight.pack.js +0 -1
  3598. data/vendor/bundle/gems/simplecov-html-0.10.2/assets/javascripts/plugins/jquery.colorbox.js +0 -1090
  3599. data/vendor/bundle/gems/simplecov-html-0.10.2/assets/javascripts/plugins/jquery.dataTables.min.js +0 -152
  3600. data/vendor/bundle/gems/simplecov-html-0.10.2/assets/javascripts/plugins/jquery.timeago.js +0 -141
  3601. data/vendor/bundle/gems/simplecov-html-0.10.2/assets/javascripts/plugins/jquery.url.js +0 -174
  3602. data/vendor/bundle/gems/simplecov-html-0.10.2/assets/stylesheets/application.css +0 -3
  3603. data/vendor/bundle/gems/simplecov-html-0.10.2/assets/stylesheets/plugins/highlight.css +0 -129
  3604. data/vendor/bundle/gems/simplecov-html-0.10.2/assets/stylesheets/plugins/jquery-ui-1.8.4.custom.css +0 -295
  3605. data/vendor/bundle/gems/simplecov-html-0.10.2/assets/stylesheets/plugins/jquery.colorbox.css +0 -52
  3606. data/vendor/bundle/gems/simplecov-html-0.10.2/assets/stylesheets/reset.css +0 -103
  3607. data/vendor/bundle/gems/simplecov-html-0.10.2/assets/stylesheets/screen.css.sass +0 -220
  3608. data/vendor/bundle/gems/simplecov-html-0.10.2/lib/simplecov-html.rb +0 -110
  3609. data/vendor/bundle/gems/simplecov-html-0.10.2/lib/simplecov-html/version.rb +0 -7
  3610. data/vendor/bundle/gems/simplecov-html-0.10.2/public/application.css +0 -799
  3611. data/vendor/bundle/gems/simplecov-html-0.10.2/public/application.js +0 -1707
  3612. data/vendor/bundle/gems/simplecov-html-0.10.2/public/colorbox/border.png +0 -0
  3613. data/vendor/bundle/gems/simplecov-html-0.10.2/public/colorbox/controls.png +0 -0
  3614. data/vendor/bundle/gems/simplecov-html-0.10.2/public/colorbox/loading.gif +0 -0
  3615. data/vendor/bundle/gems/simplecov-html-0.10.2/public/colorbox/loading_background.png +0 -0
  3616. data/vendor/bundle/gems/simplecov-html-0.10.2/public/favicon_green.png +0 -0
  3617. data/vendor/bundle/gems/simplecov-html-0.10.2/public/favicon_red.png +0 -0
  3618. data/vendor/bundle/gems/simplecov-html-0.10.2/public/favicon_yellow.png +0 -0
  3619. data/vendor/bundle/gems/simplecov-html-0.10.2/public/loading.gif +0 -0
  3620. data/vendor/bundle/gems/simplecov-html-0.10.2/public/magnify.png +0 -0
  3621. data/vendor/bundle/gems/simplecov-html-0.10.2/public/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  3622. data/vendor/bundle/gems/simplecov-html-0.10.2/public/smoothness/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  3623. data/vendor/bundle/gems/simplecov-html-0.10.2/public/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  3624. data/vendor/bundle/gems/simplecov-html-0.10.2/public/smoothness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  3625. data/vendor/bundle/gems/simplecov-html-0.10.2/public/smoothness/images/ui-bg_glass_75_dadada_1x400.png +0 -0
  3626. data/vendor/bundle/gems/simplecov-html-0.10.2/public/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  3627. data/vendor/bundle/gems/simplecov-html-0.10.2/public/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  3628. data/vendor/bundle/gems/simplecov-html-0.10.2/public/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  3629. data/vendor/bundle/gems/simplecov-html-0.10.2/public/smoothness/images/ui-icons_222222_256x240.png +0 -0
  3630. data/vendor/bundle/gems/simplecov-html-0.10.2/public/smoothness/images/ui-icons_2e83ff_256x240.png +0 -0
  3631. data/vendor/bundle/gems/simplecov-html-0.10.2/public/smoothness/images/ui-icons_454545_256x240.png +0 -0
  3632. data/vendor/bundle/gems/simplecov-html-0.10.2/public/smoothness/images/ui-icons_888888_256x240.png +0 -0
  3633. data/vendor/bundle/gems/simplecov-html-0.10.2/public/smoothness/images/ui-icons_cd0a0a_256x240.png +0 -0
  3634. data/vendor/bundle/gems/simplecov-html-0.10.2/simplecov-html.gemspec +0 -22
  3635. data/vendor/bundle/gems/simplecov-html-0.10.2/test/helper.rb +0 -4
  3636. data/vendor/bundle/gems/simplecov-html-0.10.2/test/test_simple_cov-html.rb +0 -8
  3637. data/vendor/bundle/gems/simplecov-html-0.10.2/views/file_list.erb +0 -45
  3638. data/vendor/bundle/gems/simplecov-html-0.10.2/views/layout.erb +0 -41
  3639. data/vendor/bundle/gems/simplecov-html-0.10.2/views/source_file.erb +0 -23
  3640. data/vendor/bundle/gems/sqlite3-1.4.0/API_CHANGES.rdoc +0 -50
  3641. data/vendor/bundle/gems/sqlite3-1.4.0/CHANGELOG.rdoc +0 -306
  3642. data/vendor/bundle/gems/sqlite3-1.4.0/ChangeLog.cvs +0 -88
  3643. data/vendor/bundle/gems/sqlite3-1.4.0/Gemfile +0 -17
  3644. data/vendor/bundle/gems/sqlite3-1.4.0/LICENSE +0 -27
  3645. data/vendor/bundle/gems/sqlite3-1.4.0/Manifest.txt +0 -60
  3646. data/vendor/bundle/gems/sqlite3-1.4.0/README.rdoc +0 -118
  3647. data/vendor/bundle/gems/sqlite3-1.4.0/Rakefile +0 -8
  3648. data/vendor/bundle/gems/sqlite3-1.4.0/appveyor.yml +0 -36
  3649. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/Makefile +0 -265
  3650. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/aggregator.c +0 -273
  3651. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/aggregator.h +0 -12
  3652. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/aggregator.o +0 -0
  3653. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/backup.c +0 -168
  3654. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/backup.h +0 -15
  3655. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/backup.o +0 -0
  3656. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/database.c +0 -823
  3657. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/database.h +0 -17
  3658. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/database.o +0 -0
  3659. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/exception.c +0 -98
  3660. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/exception.h +0 -8
  3661. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/exception.o +0 -0
  3662. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/extconf.rb +0 -100
  3663. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/sqlite3.c +0 -161
  3664. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/sqlite3.o +0 -0
  3665. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/sqlite3_native.so +0 -0
  3666. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/sqlite3_ruby.h +0 -45
  3667. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/statement.c +0 -442
  3668. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/statement.h +0 -16
  3669. data/vendor/bundle/gems/sqlite3-1.4.0/ext/sqlite3/statement.o +0 -0
  3670. data/vendor/bundle/gems/sqlite3-1.4.0/faq/faq.rb +0 -145
  3671. data/vendor/bundle/gems/sqlite3-1.4.0/faq/faq.yml +0 -426
  3672. data/vendor/bundle/gems/sqlite3-1.4.0/lib/sqlite3.rb +0 -15
  3673. data/vendor/bundle/gems/sqlite3-1.4.0/lib/sqlite3/constants.rb +0 -50
  3674. data/vendor/bundle/gems/sqlite3-1.4.0/lib/sqlite3/database.rb +0 -736
  3675. data/vendor/bundle/gems/sqlite3-1.4.0/lib/sqlite3/errors.rb +0 -35
  3676. data/vendor/bundle/gems/sqlite3-1.4.0/lib/sqlite3/pragmas.rb +0 -588
  3677. data/vendor/bundle/gems/sqlite3-1.4.0/lib/sqlite3/resultset.rb +0 -187
  3678. data/vendor/bundle/gems/sqlite3-1.4.0/lib/sqlite3/sqlite3_native.so +0 -0
  3679. data/vendor/bundle/gems/sqlite3-1.4.0/lib/sqlite3/statement.rb +0 -144
  3680. data/vendor/bundle/gems/sqlite3-1.4.0/lib/sqlite3/translator.rb +0 -118
  3681. data/vendor/bundle/gems/sqlite3-1.4.0/lib/sqlite3/value.rb +0 -57
  3682. data/vendor/bundle/gems/sqlite3-1.4.0/lib/sqlite3/version.rb +0 -25
  3683. data/vendor/bundle/gems/sqlite3-1.4.0/rakelib/faq.rake +0 -9
  3684. data/vendor/bundle/gems/sqlite3-1.4.0/rakelib/gem.rake +0 -40
  3685. data/vendor/bundle/gems/sqlite3-1.4.0/rakelib/native.rake +0 -56
  3686. data/vendor/bundle/gems/sqlite3-1.4.0/rakelib/vendor_sqlite3.rake +0 -97
  3687. data/vendor/bundle/gems/sqlite3-1.4.0/setup.rb +0 -1333
  3688. data/vendor/bundle/gems/sqlite3-1.4.0/test/helper.rb +0 -18
  3689. data/vendor/bundle/gems/sqlite3-1.4.0/test/test_backup.rb +0 -33
  3690. data/vendor/bundle/gems/sqlite3-1.4.0/test/test_collation.rb +0 -82
  3691. data/vendor/bundle/gems/sqlite3-1.4.0/test/test_database.rb +0 -503
  3692. data/vendor/bundle/gems/sqlite3-1.4.0/test/test_database_flags.rb +0 -95
  3693. data/vendor/bundle/gems/sqlite3-1.4.0/test/test_database_readonly.rb +0 -36
  3694. data/vendor/bundle/gems/sqlite3-1.4.0/test/test_database_readwrite.rb +0 -41
  3695. data/vendor/bundle/gems/sqlite3-1.4.0/test/test_deprecated.rb +0 -44
  3696. data/vendor/bundle/gems/sqlite3-1.4.0/test/test_encoding.rb +0 -155
  3697. data/vendor/bundle/gems/sqlite3-1.4.0/test/test_integration.rb +0 -507
  3698. data/vendor/bundle/gems/sqlite3-1.4.0/test/test_integration_aggregate.rb +0 -336
  3699. data/vendor/bundle/gems/sqlite3-1.4.0/test/test_integration_open_close.rb +0 -30
  3700. data/vendor/bundle/gems/sqlite3-1.4.0/test/test_integration_pending.rb +0 -115
  3701. data/vendor/bundle/gems/sqlite3-1.4.0/test/test_integration_resultset.rb +0 -159
  3702. data/vendor/bundle/gems/sqlite3-1.4.0/test/test_integration_statement.rb +0 -194
  3703. data/vendor/bundle/gems/sqlite3-1.4.0/test/test_result_set.rb +0 -37
  3704. data/vendor/bundle/gems/sqlite3-1.4.0/test/test_sqlite3.rb +0 -21
  3705. data/vendor/bundle/gems/sqlite3-1.4.0/test/test_statement.rb +0 -268
  3706. data/vendor/bundle/gems/sqlite3-1.4.0/test/test_statement_execute.rb +0 -35
  3707. data/vendor/bundle/gems/term-ansicolor-1.7.1/CHANGES +0 -69
  3708. data/vendor/bundle/gems/term-ansicolor-1.7.1/COPYING +0 -202
  3709. data/vendor/bundle/gems/term-ansicolor-1.7.1/Gemfile +0 -5
  3710. data/vendor/bundle/gems/term-ansicolor-1.7.1/README.md +0 -42
  3711. data/vendor/bundle/gems/term-ansicolor-1.7.1/Rakefile +0 -28
  3712. data/vendor/bundle/gems/term-ansicolor-1.7.1/VERSION +0 -1
  3713. data/vendor/bundle/gems/term-ansicolor-1.7.1/bin/term_cdiff +0 -19
  3714. data/vendor/bundle/gems/term-ansicolor-1.7.1/bin/term_colortab +0 -49
  3715. data/vendor/bundle/gems/term-ansicolor-1.7.1/bin/term_decolor +0 -12
  3716. data/vendor/bundle/gems/term-ansicolor-1.7.1/bin/term_display +0 -91
  3717. data/vendor/bundle/gems/term-ansicolor-1.7.1/bin/term_mandel +0 -52
  3718. data/vendor/bundle/gems/term-ansicolor-1.7.1/bin/term_snow +0 -72
  3719. data/vendor/bundle/gems/term-ansicolor-1.7.1/examples/example.rb +0 -90
  3720. data/vendor/bundle/gems/term-ansicolor-1.7.1/examples/lambda-red-plain.ppm +0 -135
  3721. data/vendor/bundle/gems/term-ansicolor-1.7.1/examples/lambda-red.png +0 -0
  3722. data/vendor/bundle/gems/term-ansicolor-1.7.1/examples/lambda-red.ppm +0 -4
  3723. data/vendor/bundle/gems/term-ansicolor-1.7.1/lib/term/ansicolor.rb +0 -127
  3724. data/vendor/bundle/gems/term-ansicolor-1.7.1/lib/term/ansicolor/attribute.rb +0 -142
  3725. data/vendor/bundle/gems/term-ansicolor-1.7.1/lib/term/ansicolor/attribute/color256.rb +0 -69
  3726. data/vendor/bundle/gems/term-ansicolor-1.7.1/lib/term/ansicolor/attribute/color8.rb +0 -25
  3727. data/vendor/bundle/gems/term-ansicolor-1.7.1/lib/term/ansicolor/attribute/intense_color8.rb +0 -43
  3728. data/vendor/bundle/gems/term-ansicolor-1.7.1/lib/term/ansicolor/attribute/text.rb +0 -23
  3729. data/vendor/bundle/gems/term-ansicolor-1.7.1/lib/term/ansicolor/hsl_triple.rb +0 -169
  3730. data/vendor/bundle/gems/term-ansicolor-1.7.1/lib/term/ansicolor/movement.rb +0 -108
  3731. data/vendor/bundle/gems/term-ansicolor-1.7.1/lib/term/ansicolor/ppm_reader.rb +0 -96
  3732. data/vendor/bundle/gems/term-ansicolor-1.7.1/lib/term/ansicolor/rgb_color_metrics.rb +0 -161
  3733. data/vendor/bundle/gems/term-ansicolor-1.7.1/lib/term/ansicolor/rgb_triple.rb +0 -179
  3734. data/vendor/bundle/gems/term-ansicolor-1.7.1/lib/term/ansicolor/version.rb +0 -8
  3735. data/vendor/bundle/gems/term-ansicolor-1.7.1/term-ansicolor.gemspec +0 -45
  3736. data/vendor/bundle/gems/term-ansicolor-1.7.1/tests/ansicolor_test.rb +0 -160
  3737. data/vendor/bundle/gems/term-ansicolor-1.7.1/tests/attribute_test.rb +0 -73
  3738. data/vendor/bundle/gems/term-ansicolor-1.7.1/tests/hsl_triple_test.rb +0 -85
  3739. data/vendor/bundle/gems/term-ansicolor-1.7.1/tests/ppm_reader_test.rb +0 -46
  3740. data/vendor/bundle/gems/term-ansicolor-1.7.1/tests/rgb_color_metrics_test.rb +0 -100
  3741. data/vendor/bundle/gems/term-ansicolor-1.7.1/tests/rgb_triple_test.rb +0 -101
  3742. data/vendor/bundle/gems/term-ansicolor-1.7.1/tests/test_helper.rb +0 -8
  3743. data/vendor/bundle/gems/test-unit-3.3.1/COPYING +0 -67
  3744. data/vendor/bundle/gems/test-unit-3.3.1/GPL +0 -339
  3745. data/vendor/bundle/gems/test-unit-3.3.1/LGPL +0 -502
  3746. data/vendor/bundle/gems/test-unit-3.3.1/PSFL +0 -271
  3747. data/vendor/bundle/gems/test-unit-3.3.1/README.md +0 -101
  3748. data/vendor/bundle/gems/test-unit-3.3.1/Rakefile +0 -80
  3749. data/vendor/bundle/gems/test-unit-3.3.1/doc/text/getting-started.md +0 -246
  3750. data/vendor/bundle/gems/test-unit-3.3.1/doc/text/how-to.md +0 -90
  3751. data/vendor/bundle/gems/test-unit-3.3.1/doc/text/news.md +0 -1417
  3752. data/vendor/bundle/gems/test-unit-3.3.1/lib/test-unit.rb +0 -34
  3753. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit.rb +0 -505
  3754. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/assertion-failed-error.rb +0 -25
  3755. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/assertions.rb +0 -2256
  3756. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/attribute-matcher.rb +0 -26
  3757. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/attribute.rb +0 -227
  3758. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/auto-runner-loader.rb +0 -17
  3759. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/autorunner.rb +0 -537
  3760. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/code-snippet-fetcher.rb +0 -56
  3761. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/collector.rb +0 -73
  3762. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/collector/descendant.rb +0 -19
  3763. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/collector/dir.rb +0 -108
  3764. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/collector/load.rb +0 -199
  3765. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/collector/objectspace.rb +0 -34
  3766. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/collector/xml.rb +0 -249
  3767. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/color-scheme.rb +0 -198
  3768. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/color.rb +0 -134
  3769. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/data-sets.rb +0 -116
  3770. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/data.rb +0 -371
  3771. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/diff.rb +0 -746
  3772. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/error.rb +0 -158
  3773. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/exception-handler.rb +0 -82
  3774. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/failure.rb +0 -169
  3775. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/fault-location-detector.rb +0 -100
  3776. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/fixture.rb +0 -298
  3777. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/notification.rb +0 -136
  3778. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/omission.rb +0 -195
  3779. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/pending.rb +0 -154
  3780. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/priority.rb +0 -192
  3781. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/runner/console.rb +0 -84
  3782. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/runner/emacs.rb +0 -8
  3783. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/runner/xml.rb +0 -15
  3784. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/test-suite-creator.rb +0 -103
  3785. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/testcase.rb +0 -884
  3786. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/testresult.rb +0 -132
  3787. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/testsuite.rb +0 -175
  3788. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/ui/console/outputlevel.rb +0 -15
  3789. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/ui/console/testrunner.rb +0 -750
  3790. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/ui/emacs/testrunner.rb +0 -49
  3791. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/ui/testrunner.rb +0 -53
  3792. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/ui/testrunnermediator.rb +0 -114
  3793. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/ui/testrunnerutilities.rb +0 -41
  3794. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/ui/xml/testrunner.rb +0 -224
  3795. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/util/backtracefilter.rb +0 -59
  3796. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/util/method-owner-finder.rb +0 -28
  3797. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/util/observable.rb +0 -90
  3798. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/util/output.rb +0 -31
  3799. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/util/procwrapper.rb +0 -48
  3800. data/vendor/bundle/gems/test-unit-3.3.1/lib/test/unit/version.rb +0 -5
  3801. data/vendor/bundle/gems/test-unit-3.3.1/sample/adder.rb +0 -13
  3802. data/vendor/bundle/gems/test-unit-3.3.1/sample/subtracter.rb +0 -12
  3803. data/vendor/bundle/gems/test-unit-3.3.1/sample/test_adder.rb +0 -20
  3804. data/vendor/bundle/gems/test-unit-3.3.1/sample/test_subtracter.rb +0 -20
  3805. data/vendor/bundle/gems/test-unit-3.3.1/sample/test_user.rb +0 -23
  3806. data/vendor/bundle/gems/test-unit-3.3.1/test/collector/test-descendant.rb +0 -182
  3807. data/vendor/bundle/gems/test-unit-3.3.1/test/collector/test-load.rb +0 -442
  3808. data/vendor/bundle/gems/test-unit-3.3.1/test/collector/test_dir.rb +0 -407
  3809. data/vendor/bundle/gems/test-unit-3.3.1/test/collector/test_objectspace.rb +0 -102
  3810. data/vendor/bundle/gems/test-unit-3.3.1/test/fixtures/header-label.csv +0 -3
  3811. data/vendor/bundle/gems/test-unit-3.3.1/test/fixtures/header-label.tsv +0 -3
  3812. data/vendor/bundle/gems/test-unit-3.3.1/test/fixtures/header.csv +0 -3
  3813. data/vendor/bundle/gems/test-unit-3.3.1/test/fixtures/header.tsv +0 -3
  3814. data/vendor/bundle/gems/test-unit-3.3.1/test/fixtures/no-header.csv +0 -2
  3815. data/vendor/bundle/gems/test-unit-3.3.1/test/fixtures/no-header.tsv +0 -2
  3816. data/vendor/bundle/gems/test-unit-3.3.1/test/fixtures/plus.csv +0 -3
  3817. data/vendor/bundle/gems/test-unit-3.3.1/test/run-test.rb +0 -22
  3818. data/vendor/bundle/gems/test-unit-3.3.1/test/test-assertions.rb +0 -2182
  3819. data/vendor/bundle/gems/test-unit-3.3.1/test/test-attribute-matcher.rb +0 -38
  3820. data/vendor/bundle/gems/test-unit-3.3.1/test/test-attribute.rb +0 -123
  3821. data/vendor/bundle/gems/test-unit-3.3.1/test/test-code-snippet.rb +0 -79
  3822. data/vendor/bundle/gems/test-unit-3.3.1/test/test-color-scheme.rb +0 -82
  3823. data/vendor/bundle/gems/test-unit-3.3.1/test/test-color.rb +0 -47
  3824. data/vendor/bundle/gems/test-unit-3.3.1/test/test-data.rb +0 -419
  3825. data/vendor/bundle/gems/test-unit-3.3.1/test/test-diff.rb +0 -518
  3826. data/vendor/bundle/gems/test-unit-3.3.1/test/test-emacs-runner.rb +0 -60
  3827. data/vendor/bundle/gems/test-unit-3.3.1/test/test-error.rb +0 -26
  3828. data/vendor/bundle/gems/test-unit-3.3.1/test/test-failure.rb +0 -33
  3829. data/vendor/bundle/gems/test-unit-3.3.1/test/test-fault-location-detector.rb +0 -163
  3830. data/vendor/bundle/gems/test-unit-3.3.1/test/test-fixture.rb +0 -713
  3831. data/vendor/bundle/gems/test-unit-3.3.1/test/test-notification.rb +0 -33
  3832. data/vendor/bundle/gems/test-unit-3.3.1/test/test-omission.rb +0 -81
  3833. data/vendor/bundle/gems/test-unit-3.3.1/test/test-pending.rb +0 -70
  3834. data/vendor/bundle/gems/test-unit-3.3.1/test/test-priority.rb +0 -173
  3835. data/vendor/bundle/gems/test-unit-3.3.1/test/test-test-case.rb +0 -1279
  3836. data/vendor/bundle/gems/test-unit-3.3.1/test/test-test-result.rb +0 -113
  3837. data/vendor/bundle/gems/test-unit-3.3.1/test/test-test-suite-creator.rb +0 -97
  3838. data/vendor/bundle/gems/test-unit-3.3.1/test/test-test-suite.rb +0 -151
  3839. data/vendor/bundle/gems/test-unit-3.3.1/test/testunit-test-util.rb +0 -33
  3840. data/vendor/bundle/gems/test-unit-3.3.1/test/ui/test_testrunmediator.rb +0 -20
  3841. data/vendor/bundle/gems/test-unit-3.3.1/test/util/test-method-owner-finder.rb +0 -38
  3842. data/vendor/bundle/gems/test-unit-3.3.1/test/util/test-output.rb +0 -11
  3843. data/vendor/bundle/gems/test-unit-3.3.1/test/util/test_backtracefilter.rb +0 -52
  3844. data/vendor/bundle/gems/test-unit-3.3.1/test/util/test_observable.rb +0 -102
  3845. data/vendor/bundle/gems/test-unit-3.3.1/test/util/test_procwrapper.rb +0 -36
  3846. data/vendor/bundle/gems/thor-0.19.4/CHANGELOG.md +0 -163
  3847. data/vendor/bundle/gems/thor-0.19.4/CONTRIBUTING.md +0 -15
  3848. data/vendor/bundle/gems/thor-0.19.4/LICENSE.md +0 -20
  3849. data/vendor/bundle/gems/thor-0.19.4/README.md +0 -47
  3850. data/vendor/bundle/gems/thor-0.19.4/bin/thor +0 -6
  3851. data/vendor/bundle/gems/thor-0.19.4/lib/thor.rb +0 -492
  3852. data/vendor/bundle/gems/thor-0.19.4/lib/thor/actions.rb +0 -318
  3853. data/vendor/bundle/gems/thor-0.19.4/lib/thor/actions/create_file.rb +0 -103
  3854. data/vendor/bundle/gems/thor-0.19.4/lib/thor/actions/create_link.rb +0 -59
  3855. data/vendor/bundle/gems/thor-0.19.4/lib/thor/actions/directory.rb +0 -118
  3856. data/vendor/bundle/gems/thor-0.19.4/lib/thor/actions/empty_directory.rb +0 -135
  3857. data/vendor/bundle/gems/thor-0.19.4/lib/thor/actions/file_manipulation.rb +0 -327
  3858. data/vendor/bundle/gems/thor-0.19.4/lib/thor/actions/inject_into_file.rb +0 -103
  3859. data/vendor/bundle/gems/thor-0.19.4/lib/thor/base.rb +0 -656
  3860. data/vendor/bundle/gems/thor-0.19.4/lib/thor/command.rb +0 -133
  3861. data/vendor/bundle/gems/thor-0.19.4/lib/thor/core_ext/hash_with_indifferent_access.rb +0 -85
  3862. data/vendor/bundle/gems/thor-0.19.4/lib/thor/core_ext/io_binary_read.rb +0 -12
  3863. data/vendor/bundle/gems/thor-0.19.4/lib/thor/core_ext/ordered_hash.rb +0 -129
  3864. data/vendor/bundle/gems/thor-0.19.4/lib/thor/error.rb +0 -32
  3865. data/vendor/bundle/gems/thor-0.19.4/lib/thor/group.rb +0 -281
  3866. data/vendor/bundle/gems/thor-0.19.4/lib/thor/invocation.rb +0 -177
  3867. data/vendor/bundle/gems/thor-0.19.4/lib/thor/line_editor.rb +0 -17
  3868. data/vendor/bundle/gems/thor-0.19.4/lib/thor/line_editor/basic.rb +0 -35
  3869. data/vendor/bundle/gems/thor-0.19.4/lib/thor/line_editor/readline.rb +0 -88
  3870. data/vendor/bundle/gems/thor-0.19.4/lib/thor/parser.rb +0 -4
  3871. data/vendor/bundle/gems/thor-0.19.4/lib/thor/parser/argument.rb +0 -70
  3872. data/vendor/bundle/gems/thor-0.19.4/lib/thor/parser/arguments.rb +0 -175
  3873. data/vendor/bundle/gems/thor-0.19.4/lib/thor/parser/option.rb +0 -146
  3874. data/vendor/bundle/gems/thor-0.19.4/lib/thor/parser/options.rb +0 -220
  3875. data/vendor/bundle/gems/thor-0.19.4/lib/thor/rake_compat.rb +0 -71
  3876. data/vendor/bundle/gems/thor-0.19.4/lib/thor/runner.rb +0 -322
  3877. data/vendor/bundle/gems/thor-0.19.4/lib/thor/shell.rb +0 -81
  3878. data/vendor/bundle/gems/thor-0.19.4/lib/thor/shell/basic.rb +0 -436
  3879. data/vendor/bundle/gems/thor-0.19.4/lib/thor/shell/color.rb +0 -149
  3880. data/vendor/bundle/gems/thor-0.19.4/lib/thor/shell/html.rb +0 -126
  3881. data/vendor/bundle/gems/thor-0.19.4/lib/thor/util.rb +0 -268
  3882. data/vendor/bundle/gems/thor-0.19.4/lib/thor/version.rb +0 -3
  3883. data/vendor/bundle/gems/thor-0.19.4/thor.gemspec +0 -21
  3884. data/vendor/bundle/gems/tins-1.20.2/COPYING +0 -18
  3885. data/vendor/bundle/gems/tins-1.20.2/Gemfile +0 -10
  3886. data/vendor/bundle/gems/tins-1.20.2/README.md +0 -107
  3887. data/vendor/bundle/gems/tins-1.20.2/Rakefile +0 -23
  3888. data/vendor/bundle/gems/tins-1.20.2/TODO +0 -3
  3889. data/vendor/bundle/gems/tins-1.20.2/VERSION +0 -1
  3890. data/vendor/bundle/gems/tins-1.20.2/examples/add_one.png +0 -0
  3891. data/vendor/bundle/gems/tins-1.20.2/examples/add_one.stm +0 -13
  3892. data/vendor/bundle/gems/tins-1.20.2/examples/bb3.png +0 -0
  3893. data/vendor/bundle/gems/tins-1.20.2/examples/bb3.stm +0 -26
  3894. data/vendor/bundle/gems/tins-1.20.2/examples/concatenate_compare.mtm +0 -31
  3895. data/vendor/bundle/gems/tins-1.20.2/examples/concatenate_compare.png +0 -0
  3896. data/vendor/bundle/gems/tins-1.20.2/examples/length_difference.mtm +0 -17
  3897. data/vendor/bundle/gems/tins-1.20.2/examples/length_difference.png +0 -0
  3898. data/vendor/bundle/gems/tins-1.20.2/examples/let.rb +0 -62
  3899. data/vendor/bundle/gems/tins-1.20.2/examples/mail.rb +0 -73
  3900. data/vendor/bundle/gems/tins-1.20.2/examples/minsky.rb +0 -145
  3901. data/vendor/bundle/gems/tins-1.20.2/examples/multiply.reg +0 -42
  3902. data/vendor/bundle/gems/tins-1.20.2/examples/null_pattern.rb +0 -52
  3903. data/vendor/bundle/gems/tins-1.20.2/examples/ones_difference-mtm.png +0 -0
  3904. data/vendor/bundle/gems/tins-1.20.2/examples/ones_difference-stm.png +0 -0
  3905. data/vendor/bundle/gems/tins-1.20.2/examples/ones_difference.mtm +0 -12
  3906. data/vendor/bundle/gems/tins-1.20.2/examples/ones_difference.stm +0 -25
  3907. data/vendor/bundle/gems/tins-1.20.2/examples/prefix-equals-suffix-reversed-with-infix.png +0 -0
  3908. data/vendor/bundle/gems/tins-1.20.2/examples/prefix-equals-suffix-reversed-with-infix.stm +0 -38
  3909. data/vendor/bundle/gems/tins-1.20.2/examples/recipe.rb +0 -81
  3910. data/vendor/bundle/gems/tins-1.20.2/examples/recipe2.rb +0 -82
  3911. data/vendor/bundle/gems/tins-1.20.2/examples/recipe_common.rb +0 -65
  3912. data/vendor/bundle/gems/tins-1.20.2/examples/subtract.reg +0 -9
  3913. data/vendor/bundle/gems/tins-1.20.2/examples/turing-graph.rb +0 -17
  3914. data/vendor/bundle/gems/tins-1.20.2/examples/turing.rb +0 -310
  3915. data/vendor/bundle/gems/tins-1.20.2/lib/dslkit.rb +0 -2
  3916. data/vendor/bundle/gems/tins-1.20.2/lib/dslkit/polite.rb +0 -1
  3917. data/vendor/bundle/gems/tins-1.20.2/lib/dslkit/rude.rb +0 -1
  3918. data/vendor/bundle/gems/tins-1.20.2/lib/spruz.rb +0 -2
  3919. data/vendor/bundle/gems/tins-1.20.2/lib/tins.rb +0 -61
  3920. data/vendor/bundle/gems/tins-1.20.2/lib/tins/alias.rb +0 -1
  3921. data/vendor/bundle/gems/tins-1.20.2/lib/tins/annotate.rb +0 -38
  3922. data/vendor/bundle/gems/tins-1.20.2/lib/tins/ask_and_send.rb +0 -31
  3923. data/vendor/bundle/gems/tins-1.20.2/lib/tins/attempt.rb +0 -88
  3924. data/vendor/bundle/gems/tins-1.20.2/lib/tins/bijection.rb +0 -46
  3925. data/vendor/bundle/gems/tins-1.20.2/lib/tins/case_predicate.rb +0 -7
  3926. data/vendor/bundle/gems/tins-1.20.2/lib/tins/complete.rb +0 -18
  3927. data/vendor/bundle/gems/tins-1.20.2/lib/tins/concern.rb +0 -30
  3928. data/vendor/bundle/gems/tins-1.20.2/lib/tins/count_by.rb +0 -8
  3929. data/vendor/bundle/gems/tins-1.20.2/lib/tins/date_dummy.rb +0 -53
  3930. data/vendor/bundle/gems/tins-1.20.2/lib/tins/date_time_dummy.rb +0 -51
  3931. data/vendor/bundle/gems/tins-1.20.2/lib/tins/deep_const_get.rb +0 -42
  3932. data/vendor/bundle/gems/tins-1.20.2/lib/tins/deep_dup.rb +0 -11
  3933. data/vendor/bundle/gems/tins-1.20.2/lib/tins/dslkit.rb +0 -636
  3934. data/vendor/bundle/gems/tins-1.20.2/lib/tins/duration.rb +0 -87
  3935. data/vendor/bundle/gems/tins-1.20.2/lib/tins/expose.rb +0 -27
  3936. data/vendor/bundle/gems/tins-1.20.2/lib/tins/extract_last_argument_options.rb +0 -14
  3937. data/vendor/bundle/gems/tins-1.20.2/lib/tins/file_binary.rb +0 -83
  3938. data/vendor/bundle/gems/tins-1.20.2/lib/tins/find.rb +0 -149
  3939. data/vendor/bundle/gems/tins-1.20.2/lib/tins/generator.rb +0 -68
  3940. data/vendor/bundle/gems/tins-1.20.2/lib/tins/go.rb +0 -96
  3941. data/vendor/bundle/gems/tins-1.20.2/lib/tins/hash_symbolize_keys_recursive.rb +0 -27
  3942. data/vendor/bundle/gems/tins-1.20.2/lib/tins/hash_union.rb +0 -15
  3943. data/vendor/bundle/gems/tins-1.20.2/lib/tins/if_predicate.rb +0 -7
  3944. data/vendor/bundle/gems/tins-1.20.2/lib/tins/implement.rb +0 -40
  3945. data/vendor/bundle/gems/tins-1.20.2/lib/tins/limited.rb +0 -38
  3946. data/vendor/bundle/gems/tins-1.20.2/lib/tins/lines_file.rb +0 -123
  3947. data/vendor/bundle/gems/tins-1.20.2/lib/tins/memoize.rb +0 -91
  3948. data/vendor/bundle/gems/tins-1.20.2/lib/tins/method_description.rb +0 -143
  3949. data/vendor/bundle/gems/tins-1.20.2/lib/tins/minimize.rb +0 -55
  3950. data/vendor/bundle/gems/tins-1.20.2/lib/tins/module_group.rb +0 -13
  3951. data/vendor/bundle/gems/tins-1.20.2/lib/tins/named_set.rb +0 -12
  3952. data/vendor/bundle/gems/tins-1.20.2/lib/tins/null.rb +0 -99
  3953. data/vendor/bundle/gems/tins-1.20.2/lib/tins/once.rb +0 -25
  3954. data/vendor/bundle/gems/tins-1.20.2/lib/tins/p.rb +0 -23
  3955. data/vendor/bundle/gems/tins-1.20.2/lib/tins/partial_application.rb +0 -31
  3956. data/vendor/bundle/gems/tins-1.20.2/lib/tins/proc_compose.rb +0 -15
  3957. data/vendor/bundle/gems/tins-1.20.2/lib/tins/proc_prelude.rb +0 -73
  3958. data/vendor/bundle/gems/tins-1.20.2/lib/tins/range_plus.rb +0 -9
  3959. data/vendor/bundle/gems/tins-1.20.2/lib/tins/require_maybe.rb +0 -9
  3960. data/vendor/bundle/gems/tins-1.20.2/lib/tins/responding.rb +0 -19
  3961. data/vendor/bundle/gems/tins-1.20.2/lib/tins/secure_write.rb +0 -27
  3962. data/vendor/bundle/gems/tins-1.20.2/lib/tins/sexy_singleton.rb +0 -39
  3963. data/vendor/bundle/gems/tins-1.20.2/lib/tins/string_byte_order_mark.rb +0 -20
  3964. data/vendor/bundle/gems/tins-1.20.2/lib/tins/string_camelize.rb +0 -16
  3965. data/vendor/bundle/gems/tins-1.20.2/lib/tins/string_underscore.rb +0 -15
  3966. data/vendor/bundle/gems/tins-1.20.2/lib/tins/string_version.rb +0 -104
  3967. data/vendor/bundle/gems/tins-1.20.2/lib/tins/subhash.rb +0 -42
  3968. data/vendor/bundle/gems/tins-1.20.2/lib/tins/temp_io.rb +0 -26
  3969. data/vendor/bundle/gems/tins-1.20.2/lib/tins/temp_io_enum.rb +0 -26
  3970. data/vendor/bundle/gems/tins-1.20.2/lib/tins/terminal.rb +0 -42
  3971. data/vendor/bundle/gems/tins-1.20.2/lib/tins/thread_local.rb +0 -57
  3972. data/vendor/bundle/gems/tins-1.20.2/lib/tins/time_dummy.rb +0 -57
  3973. data/vendor/bundle/gems/tins-1.20.2/lib/tins/to.rb +0 -8
  3974. data/vendor/bundle/gems/tins-1.20.2/lib/tins/to_proc.rb +0 -12
  3975. data/vendor/bundle/gems/tins-1.20.2/lib/tins/token.rb +0 -36
  3976. data/vendor/bundle/gems/tins-1.20.2/lib/tins/uniq_by.rb +0 -10
  3977. data/vendor/bundle/gems/tins-1.20.2/lib/tins/unit.rb +0 -179
  3978. data/vendor/bundle/gems/tins-1.20.2/lib/tins/version.rb +0 -8
  3979. data/vendor/bundle/gems/tins-1.20.2/lib/tins/write.rb +0 -19
  3980. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt.rb +0 -45
  3981. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/annotate.rb +0 -5
  3982. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/ask_and_send.rb +0 -7
  3983. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/attempt.rb +0 -7
  3984. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/blank.rb +0 -67
  3985. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/case_predicate.rb +0 -8
  3986. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/complete.rb +0 -7
  3987. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/concern.rb +0 -20
  3988. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/count_by.rb +0 -11
  3989. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/date_dummy.rb +0 -7
  3990. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/date_time_dummy.rb +0 -7
  3991. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/deep_const_get.rb +0 -7
  3992. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/deep_dup.rb +0 -7
  3993. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/dslkit.rb +0 -22
  3994. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/expose.rb +0 -5
  3995. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/extract_last_argument_options.rb +0 -7
  3996. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/file_binary.rb +0 -7
  3997. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/full.rb +0 -39
  3998. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/hash_symbolize_keys_recursive.rb +0 -7
  3999. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/hash_union.rb +0 -11
  4000. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/if_predicate.rb +0 -7
  4001. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/implement.rb +0 -5
  4002. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/irb.rb +0 -23
  4003. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/method_description.rb +0 -23
  4004. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/named.rb +0 -23
  4005. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/null.rb +0 -9
  4006. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/p.rb +0 -7
  4007. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/partial_application.rb +0 -11
  4008. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/proc_compose.rb +0 -7
  4009. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/proc_prelude.rb +0 -7
  4010. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/range_plus.rb +0 -12
  4011. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/require_maybe.rb +0 -7
  4012. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/responding.rb +0 -7
  4013. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/secure_write.rb +0 -11
  4014. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/sexy_singleton.rb +0 -3
  4015. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/string.rb +0 -6
  4016. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/string_byte_order_mark.rb +0 -7
  4017. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/string_camelize.rb +0 -6
  4018. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/string_underscore.rb +0 -6
  4019. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/string_version.rb +0 -7
  4020. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/subhash.rb +0 -11
  4021. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/temp_io.rb +0 -5
  4022. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/time_dummy.rb +0 -7
  4023. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/time_freezer.rb +0 -15
  4024. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/to.rb +0 -5
  4025. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/uniq_by.rb +0 -15
  4026. data/vendor/bundle/gems/tins-1.20.2/lib/tins/xt/write.rb +0 -11
  4027. data/vendor/bundle/gems/tins-1.20.2/tests/annotate_test.rb +0 -68
  4028. data/vendor/bundle/gems/tins-1.20.2/tests/ask_and_send_test.rb +0 -46
  4029. data/vendor/bundle/gems/tins-1.20.2/tests/attempt_test.rb +0 -109
  4030. data/vendor/bundle/gems/tins-1.20.2/tests/bijection_test.rb +0 -19
  4031. data/vendor/bundle/gems/tins-1.20.2/tests/blank_full_test.rb +0 -77
  4032. data/vendor/bundle/gems/tins-1.20.2/tests/case_predicate_test.rb +0 -29
  4033. data/vendor/bundle/gems/tins-1.20.2/tests/concern_test.rb +0 -35
  4034. data/vendor/bundle/gems/tins-1.20.2/tests/count_by_test.rb +0 -17
  4035. data/vendor/bundle/gems/tins-1.20.2/tests/date_dummy_test.rb +0 -31
  4036. data/vendor/bundle/gems/tins-1.20.2/tests/date_time_dummy_test.rb +0 -31
  4037. data/vendor/bundle/gems/tins-1.20.2/tests/deep_const_get_test.rb +0 -37
  4038. data/vendor/bundle/gems/tins-1.20.2/tests/deep_dup_test.rb +0 -20
  4039. data/vendor/bundle/gems/tins-1.20.2/tests/delegate_test.rb +0 -49
  4040. data/vendor/bundle/gems/tins-1.20.2/tests/dslkit_test.rb +0 -314
  4041. data/vendor/bundle/gems/tins-1.20.2/tests/duration_test.rb +0 -73
  4042. data/vendor/bundle/gems/tins-1.20.2/tests/dynamic_scope_test.rb +0 -31
  4043. data/vendor/bundle/gems/tins-1.20.2/tests/expose_test.rb +0 -43
  4044. data/vendor/bundle/gems/tins-1.20.2/tests/extract_last_argument_options_test.rb +0 -30
  4045. data/vendor/bundle/gems/tins-1.20.2/tests/file_binary_test.rb +0 -65
  4046. data/vendor/bundle/gems/tins-1.20.2/tests/find_test.rb +0 -135
  4047. data/vendor/bundle/gems/tins-1.20.2/tests/from_module_test.rb +0 -61
  4048. data/vendor/bundle/gems/tins-1.20.2/tests/generator_test.rb +0 -47
  4049. data/vendor/bundle/gems/tins-1.20.2/tests/go_test.rb +0 -80
  4050. data/vendor/bundle/gems/tins-1.20.2/tests/hash_symbolize_keys_recursive_test.rb +0 -24
  4051. data/vendor/bundle/gems/tins-1.20.2/tests/hash_union_test.rb +0 -42
  4052. data/vendor/bundle/gems/tins-1.20.2/tests/if_predicate_test.rb +0 -12
  4053. data/vendor/bundle/gems/tins-1.20.2/tests/implement_test.rb +0 -75
  4054. data/vendor/bundle/gems/tins-1.20.2/tests/limited_test.rb +0 -21
  4055. data/vendor/bundle/gems/tins-1.20.2/tests/lines_file_test.rb +0 -82
  4056. data/vendor/bundle/gems/tins-1.20.2/tests/memoize_test.rb +0 -115
  4057. data/vendor/bundle/gems/tins-1.20.2/tests/method_description_test.rb +0 -104
  4058. data/vendor/bundle/gems/tins-1.20.2/tests/minimize_test.rb +0 -54
  4059. data/vendor/bundle/gems/tins-1.20.2/tests/module_group_test.rb +0 -29
  4060. data/vendor/bundle/gems/tins-1.20.2/tests/named_set_test.rb +0 -18
  4061. data/vendor/bundle/gems/tins-1.20.2/tests/named_test.rb +0 -30
  4062. data/vendor/bundle/gems/tins-1.20.2/tests/null_test.rb +0 -64
  4063. data/vendor/bundle/gems/tins-1.20.2/tests/p_test.rb +0 -14
  4064. data/vendor/bundle/gems/tins-1.20.2/tests/partial_application_test.rb +0 -30
  4065. data/vendor/bundle/gems/tins-1.20.2/tests/proc_compose_test.rb +0 -21
  4066. data/vendor/bundle/gems/tins-1.20.2/tests/proc_prelude_test.rb +0 -81
  4067. data/vendor/bundle/gems/tins-1.20.2/tests/range_plus_test.rb +0 -14
  4068. data/vendor/bundle/gems/tins-1.20.2/tests/require_maybe_test.rb +0 -24
  4069. data/vendor/bundle/gems/tins-1.20.2/tests/responding_test.rb +0 -24
  4070. data/vendor/bundle/gems/tins-1.20.2/tests/rotate_test.rb +0 -65
  4071. data/vendor/bundle/gems/tins-1.20.2/tests/scope_test.rb +0 -31
  4072. data/vendor/bundle/gems/tins-1.20.2/tests/secure_write_test.rb +0 -42
  4073. data/vendor/bundle/gems/tins-1.20.2/tests/sexy_singleton_test.rb +0 -16
  4074. data/vendor/bundle/gems/tins-1.20.2/tests/string_byte_order_mark_test.rb +0 -40
  4075. data/vendor/bundle/gems/tins-1.20.2/tests/string_camelize_test.rb +0 -21
  4076. data/vendor/bundle/gems/tins-1.20.2/tests/string_underscore_test.rb +0 -11
  4077. data/vendor/bundle/gems/tins-1.20.2/tests/string_version_test.rb +0 -60
  4078. data/vendor/bundle/gems/tins-1.20.2/tests/subhash_test.rb +0 -37
  4079. data/vendor/bundle/gems/tins-1.20.2/tests/temp_io_test.rb +0 -51
  4080. data/vendor/bundle/gems/tins-1.20.2/tests/test_helper.rb +0 -11
  4081. data/vendor/bundle/gems/tins-1.20.2/tests/time_dummy_test.rb +0 -31
  4082. data/vendor/bundle/gems/tins-1.20.2/tests/time_freezer_test.rb +0 -45
  4083. data/vendor/bundle/gems/tins-1.20.2/tests/to_test.rb +0 -32
  4084. data/vendor/bundle/gems/tins-1.20.2/tests/token_test.rb +0 -38
  4085. data/vendor/bundle/gems/tins-1.20.2/tests/uniq_by_test.rb +0 -31
  4086. data/vendor/bundle/gems/tins-1.20.2/tests/unit_test.rb +0 -61
  4087. data/vendor/bundle/gems/tins-1.20.2/tins.gemspec +0 -41
  4088. data/vendor/bundle/gems/xpath-3.2.0/README.md +0 -78
  4089. data/vendor/bundle/gems/xpath-3.2.0/lib/xpath.rb +0 -18
  4090. data/vendor/bundle/gems/xpath-3.2.0/lib/xpath/dsl.rb +0 -174
  4091. data/vendor/bundle/gems/xpath-3.2.0/lib/xpath/expression.rb +0 -22
  4092. data/vendor/bundle/gems/xpath-3.2.0/lib/xpath/literal.rb +0 -10
  4093. data/vendor/bundle/gems/xpath-3.2.0/lib/xpath/renderer.rb +0 -126
  4094. data/vendor/bundle/gems/xpath-3.2.0/lib/xpath/union.rb +0 -31
  4095. data/vendor/bundle/gems/xpath-3.2.0/lib/xpath/version.rb +0 -5
  4096. data/vendor/bundle/gems/xpath-3.2.0/spec/fixtures/form.html +0 -201
  4097. data/vendor/bundle/gems/xpath-3.2.0/spec/fixtures/simple.html +0 -53
  4098. data/vendor/bundle/gems/xpath-3.2.0/spec/fixtures/stuff.html +0 -54
  4099. data/vendor/bundle/gems/xpath-3.2.0/spec/spec_helper.rb +0 -8
  4100. data/vendor/bundle/gems/xpath-3.2.0/spec/union_spec.rb +0 -63
  4101. data/vendor/bundle/gems/xpath-3.2.0/spec/xpath_spec.rb +0 -562
  4102. data/vendor/bundle/specifications/addressable-2.5.2.gemspec +0 -39
  4103. data/vendor/bundle/specifications/capybara-3.15.0.gemspec +0 -101
  4104. data/vendor/bundle/specifications/childprocess-0.9.0.gemspec +0 -44
  4105. data/vendor/bundle/specifications/coveralls-0.8.22.gemspec +0 -50
  4106. data/vendor/bundle/specifications/diff-lcs-1.3.gemspec +0 -61
  4107. data/vendor/bundle/specifications/docile-1.3.1.gemspec +0 -45
  4108. data/vendor/bundle/specifications/emot-0.0.4.gemspec +0 -44
  4109. data/vendor/bundle/specifications/faraday-0.15.4.gemspec +0 -32
  4110. data/vendor/bundle/specifications/fastimage-2.1.5.gemspec +0 -45
  4111. data/vendor/bundle/specifications/ffi-1.10.0.gemspec +0 -49
  4112. data/vendor/bundle/specifications/hikidoc-0.1.0.gemspec +0 -37
  4113. data/vendor/bundle/specifications/jasmine-2.99.0.gemspec +0 -59
  4114. data/vendor/bundle/specifications/jasmine-core-2.99.2.gemspec +0 -41
  4115. data/vendor/bundle/specifications/json-2.2.0.gemspec +0 -0
  4116. data/vendor/bundle/specifications/launchy-2.4.3.gemspec +0 -45
  4117. data/vendor/bundle/specifications/mail-2.7.1.gemspec +0 -50
  4118. data/vendor/bundle/specifications/mime-types-3.2.2.gemspec +0 -84
  4119. data/vendor/bundle/specifications/mime-types-data-3.2018.0812.gemspec +0 -60
  4120. data/vendor/bundle/specifications/mini_mime-1.0.1.gemspec +0 -39
  4121. data/vendor/bundle/specifications/mini_portile2-2.4.0.gemspec +0 -48
  4122. data/vendor/bundle/specifications/multipart-post-2.0.0.gemspec +0 -21
  4123. data/vendor/bundle/specifications/nokogiri-1.10.2.gemspec +0 -80
  4124. data/vendor/bundle/specifications/octokit-4.13.0.gemspec +0 -36
  4125. data/vendor/bundle/specifications/phantomjs-2.1.1.0.gemspec +0 -44
  4126. data/vendor/bundle/specifications/pit-0.0.7.gemspec +0 -21
  4127. data/vendor/bundle/specifications/power_assert-1.1.4.gemspec +0 -54
  4128. data/vendor/bundle/specifications/public_suffix-3.0.3.gemspec +0 -41
  4129. data/vendor/bundle/specifications/rack-2.0.6.gemspec +0 -42
  4130. data/vendor/bundle/specifications/rack-test-1.1.0.gemspec +0 -54
  4131. data/vendor/bundle/specifications/racksh-1.0.0.gemspec +0 -35
  4132. data/vendor/bundle/specifications/rake-12.3.2.gemspec +0 -49
  4133. data/vendor/bundle/specifications/redcarpet-3.4.0.gemspec +0 -44
  4134. data/vendor/bundle/specifications/regexp_parser-1.3.0.gemspec +0 -23
  4135. data/vendor/bundle/specifications/rspec-3.8.0.gemspec +0 -42
  4136. data/vendor/bundle/specifications/rspec-core-3.8.0.gemspec +0 -62
  4137. data/vendor/bundle/specifications/rspec-expectations-3.8.2.gemspec +0 -50
  4138. data/vendor/bundle/specifications/rspec-mocks-3.8.0.gemspec +0 -50
  4139. data/vendor/bundle/specifications/rspec-support-3.8.0.gemspec +0 -41
  4140. data/vendor/bundle/specifications/rubyzip-1.2.2.gemspec +0 -44
  4141. data/vendor/bundle/specifications/sawyer-0.8.1.gemspec +0 -34
  4142. data/vendor/bundle/specifications/selenium-webdriver-3.141.0.gemspec +0 -52
  4143. data/vendor/bundle/specifications/sequel-5.18.0.gemspec +0 -53
  4144. data/vendor/bundle/specifications/simplecov-0.16.1.gemspec +0 -42
  4145. data/vendor/bundle/specifications/simplecov-html-0.10.2.gemspec +0 -33
  4146. data/vendor/bundle/specifications/sqlite3-1.4.0.gemspec +0 -60
  4147. data/vendor/bundle/specifications/term-ansicolor-1.7.1.gemspec +0 -46
  4148. data/vendor/bundle/specifications/test-unit-3.3.1.gemspec +0 -48
  4149. data/vendor/bundle/specifications/thor-0.19.4.gemspec +0 -35
  4150. data/vendor/bundle/specifications/tins-1.20.2.gemspec +0 -42
  4151. data/vendor/bundle/specifications/xpath-3.2.0.gemspec +0 -46
@@ -1,291 +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
- @tc = klass(:top=>0)
21
- @to = @tc.load(:id=>7, :position=>3)
22
- @db.reset
23
- end
24
-
25
- it "should default to using :position as the position field" do
26
- @c.position_field.must_equal :position
27
- @c.new.list_dataset.sql.must_equal 'SELECT * FROM items ORDER BY position'
28
- end
29
-
30
- it "should accept a :field option to modify the position field" do
31
- klass(:field=>:pos).position_field.must_equal :pos
32
- end
33
-
34
- it "should accept a :scope option with a symbol for a single scope column" do
35
- @sc.new(:scope_id=>4).list_dataset.sql.must_equal 'SELECT * FROM items WHERE (scope_id = 4) ORDER BY scope_id, position'
36
- end
37
-
38
- it "should accept a :scope option with an array of symbols for multiple scope columns" do
39
- ['SELECT * FROM items WHERE ((scope_id = 4) AND (pos = 3)) ORDER BY scope_id, pos, position',
40
- 'SELECT * FROM items WHERE ((pos = 3) AND (scope_id = 4)) ORDER BY scope_id, pos, position'].
41
- must_include(klass(:scope=>[:scope_id, :pos]).new(:scope_id=>4, :pos=>3).list_dataset.sql)
42
- end
43
-
44
- it "should accept a :scope option with a proc for a custom list scope" do
45
- 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'
46
- end
47
-
48
- it "should default top of the list to 1" do
49
- @c.top_of_list.must_equal 1
50
- end
51
-
52
- it "should accept a :top option to set top of the list" do
53
- @tc.top_of_list.must_equal 0
54
- end
55
-
56
- it "should modify the order when using the plugin" do
57
- c = Class.new(Sequel::Model(:items))
58
- c.dataset.sql.must_equal 'SELECT * FROM items'
59
- c.plugin :list
60
- c.dataset.sql.must_equal 'SELECT * FROM items ORDER BY position'
61
- end
62
-
63
- it "should be able to access the position field as a class attribute" do
64
- @c.position_field.must_equal :position
65
- klass(:field=>:pos).position_field.must_equal :pos
66
- end
67
-
68
- it "should be able to access the scope proc as a class attribute" do
69
- @c.scope_proc.must_be_nil
70
- @sc.scope_proc[@sc.new(:scope_id=>4)].sql.must_equal 'SELECT * FROM items WHERE (scope_id = 4) ORDER BY scope_id, position'
71
- end
72
-
73
- it "should work correctly in subclasses" do
74
- c = Class.new(klass(:scope=>:scope_id))
75
- c.position_field.must_equal :position
76
- c.scope_proc[c.new(:scope_id=>4)].sql.must_equal 'SELECT * FROM items WHERE (scope_id = 4) ORDER BY scope_id, position'
77
- end
78
-
79
- it "should have at_position return the model object at the given position" do
80
- @c.dataset = @c.dataset.with_fetch(:id=>1, :position=>1)
81
- @o.at_position(10).must_equal @c.load(:id=>1, :position=>1)
82
- @sc.dataset = @sc.dataset.with_fetch(:id=>2, :position=>2, :scope_id=>5)
83
- @so.at_position(20).must_equal @sc.load(:id=>2, :position=>2, :scope_id=>5)
84
- @db.sqls.must_equal ["SELECT * FROM items WHERE (position = 10) ORDER BY position LIMIT 1",
85
- "SELECT * FROM items WHERE ((scope_id = 5) AND (position = 20)) ORDER BY scope_id, position LIMIT 1"]
86
- end
87
-
88
- it "should have position field set to max+1 when creating if not already set" do
89
- @c.dataset = @c.dataset.with_autoid(1).with_fetch([[{:pos=>nil}], [{:id=>1, :position=>1}], [{:pos=>1}], [{:id=>2, :position=>2}]])
90
- @c.create.values.must_equal(:id=>1, :position=>1)
91
- @c.create.values.must_equal(:id=>2, :position=>2)
92
- @db.sqls.must_equal ["SELECT max(position) AS max FROM items LIMIT 1",
93
- "INSERT INTO items (position) VALUES (1)",
94
- "SELECT * FROM items WHERE (id = 1) ORDER BY position LIMIT 1",
95
- "SELECT max(position) AS max FROM items LIMIT 1",
96
- "INSERT INTO items (position) VALUES (2)",
97
- "SELECT * FROM items WHERE (id = 2) ORDER BY position LIMIT 1"]
98
- end
99
-
100
- it "should have position field set to max+1 in scope when creating if not already set" do
101
- @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}]])
102
- @sc.create(:scope_id=>1).values.must_equal(:id=>1, :scope_id=>1, :position=>1)
103
- @sc.create(:scope_id=>1).values.must_equal(:id=>2, :scope_id=>1, :position=>2)
104
- @sc.create(:scope_id=>2).values.must_equal(:id=>3, :scope_id=>2, :position=>1)
105
- @db.sqls.must_equal ["SELECT max(position) AS max FROM items WHERE (scope_id = 1) LIMIT 1",
106
- 'INSERT INTO items (scope_id, position) VALUES (1, 1)',
107
- "SELECT * FROM items WHERE (id = 1) ORDER BY scope_id, position LIMIT 1",
108
- "SELECT max(position) AS max FROM items WHERE (scope_id = 1) LIMIT 1",
109
- 'INSERT INTO items (scope_id, position) VALUES (1, 2)',
110
- "SELECT * FROM items WHERE (id = 2) ORDER BY scope_id, position LIMIT 1",
111
- "SELECT max(position) AS max FROM items WHERE (scope_id = 2) LIMIT 1",
112
- 'INSERT INTO items (scope_id, position) VALUES (2, 1)',
113
- "SELECT * FROM items WHERE (id = 3) ORDER BY scope_id, position LIMIT 1"]
114
- end
115
-
116
- it "should update positions automatically on deletion" do
117
- @o.destroy
118
- @db.sqls.must_equal ["DELETE FROM items WHERE (id = 7)", "UPDATE items SET position = (position - 1) WHERE (position > 3)"]
119
- end
120
-
121
- it "should have last_position return the last position in the list" do
122
- @c.dataset = @c.dataset.with_fetch(:max=>10)
123
- @o.last_position.must_equal 10
124
- @sc.dataset = @sc.dataset.with_fetch(:max=>20)
125
- @so.last_position.must_equal 20
126
- @db.sqls.must_equal ["SELECT max(position) AS max FROM items LIMIT 1",
127
- "SELECT max(position) AS max FROM items WHERE (scope_id = 5) LIMIT 1"]
128
- end
129
-
130
- it "should have list_dataset return the model's dataset for non scoped lists" do
131
- @o.list_dataset.sql.must_equal 'SELECT * FROM items ORDER BY position'
132
- end
133
-
134
- it "should have list dataset return a scoped dataset for scoped lists" do
135
- @so.list_dataset.sql.must_equal 'SELECT * FROM items WHERE (scope_id = 5) ORDER BY scope_id, position'
136
- end
137
-
138
- it "should have move_down without an argument move down a single position" do
139
- @c.dataset = @c.dataset.with_fetch(:max=>10)
140
- @o.move_down.must_equal @o
141
- @o.position.must_equal 4
142
- @db.sqls.must_equal ["SELECT max(position) AS max FROM items LIMIT 1",
143
- "UPDATE items SET position = (position - 1) WHERE ((position >= 4) AND (position <= 4))",
144
- "UPDATE items SET position = 4 WHERE (id = 7)"]
145
- end
146
-
147
- it "should have move_down with an argument move down the given number of positions" do
148
- @c.dataset = @c.dataset.with_fetch(:max=>10)
149
- @o.move_down(3).must_equal @o
150
- @o.position.must_equal 6
151
- @db.sqls.must_equal ["SELECT max(position) AS max FROM items LIMIT 1",
152
- "UPDATE items SET position = (position - 1) WHERE ((position >= 4) AND (position <= 6))",
153
- "UPDATE items SET position = 6 WHERE (id = 7)"]
154
- end
155
-
156
- it "should have move_down with a negative argument move up the given number of positions" do
157
- @o.move_down(-1).must_equal @o
158
- @o.position.must_equal 2
159
- @db.sqls.must_equal ["UPDATE items SET position = (position + 1) WHERE ((position >= 2) AND (position < 3))",
160
- "UPDATE items SET position = 2 WHERE (id = 7)"]
161
- end
162
-
163
- it "should have move_to handle out of range targets" do
164
- @o.move_to(0)
165
- @o.position.must_equal 1
166
- @c.dataset = @c.dataset.with_fetch(:max=>10)
167
- @o.move_to(11)
168
- @o.position.must_equal 10
169
- end
170
-
171
- it "should have move_to use a transaction if the instance is configured to use transactions" do
172
- @o.use_transactions = true
173
- @o.move_to(2)
174
- @db.sqls.must_equal ["BEGIN",
175
- "UPDATE items SET position = (position + 1) WHERE ((position >= 2) AND (position < 3))",
176
- "UPDATE items SET position = 2 WHERE (id = 7)",
177
- "COMMIT"]
178
- end
179
-
180
- it "should have move_to do nothing if the target position is the same as the current position" do
181
- @o.use_transactions = true
182
- @o.move_to(@o.position).must_equal @o
183
- @o.position.must_equal 3
184
- @db.sqls.must_equal []
185
- end
186
-
187
- it "should have move to shift entries correctly between current and target if moving up" do
188
- @o.move_to(2)
189
- @db.sqls.first.must_equal "UPDATE items SET position = (position + 1) WHERE ((position >= 2) AND (position < 3))"
190
- end
191
-
192
- it "should have move to shift entries correctly between current and target if moving down" do
193
- @c.dataset = @c.dataset.with_fetch(:max=>10)
194
- @o.move_to(4)
195
- @db.sqls[1].must_equal "UPDATE items SET position = (position - 1) WHERE ((position >= 4) AND (position <= 4))"
196
- end
197
-
198
- it "should have move_to_bottom move the item to the last position" do
199
- @c.dataset = @c.dataset.with_fetch(:max=>10)
200
- @o.move_to_bottom
201
- @db.sqls.must_equal ["SELECT max(position) AS max FROM items LIMIT 1",
202
- "UPDATE items SET position = (position - 1) WHERE ((position >= 4) AND (position <= 10))",
203
- "UPDATE items SET position = 10 WHERE (id = 7)"]
204
- end
205
-
206
- it "should have move_to_top move the item to the first position" do
207
- @o.move_to_top
208
- @db.sqls.must_equal ["UPDATE items SET position = (position + 1) WHERE ((position >= 1) AND (position < 3))",
209
- "UPDATE items SET position = 1 WHERE (id = 7)"]
210
- end
211
-
212
- it "should have move_to_top use position 0 when :top_of_list is 0" do
213
- @to.move_to_top
214
- @db.sqls.must_equal ["UPDATE items SET position = (position + 1) WHERE ((position >= 0) AND (position < 3))",
215
- "UPDATE items SET position = 0 WHERE (id = 7)"]
216
- end
217
-
218
- it "should have move_up without an argument move up a single position" do
219
- @o.move_up.must_equal @o
220
- @o.position.must_equal 2
221
- @db.sqls.must_equal ["UPDATE items SET position = (position + 1) WHERE ((position >= 2) AND (position < 3))",
222
- "UPDATE items SET position = 2 WHERE (id = 7)"]
223
- end
224
-
225
- it "should have move_up with an argument move up the given number of positions" do
226
- @o.move_up(2).must_equal @o
227
- @o.position.must_equal 1
228
- @db.sqls.must_equal ["UPDATE items SET position = (position + 1) WHERE ((position >= 1) AND (position < 3))",
229
- "UPDATE items SET position = 1 WHERE (id = 7)"]
230
- end
231
-
232
- it "should have move_up with a negative argument move down the given number of positions" do
233
- @c.dataset = @c.dataset.with_fetch(:max=>10)
234
- @o.move_up(-1).must_equal @o
235
- @o.position.must_equal 4
236
- @db.sqls.must_equal ["SELECT max(position) AS max FROM items LIMIT 1",
237
- "UPDATE items SET position = (position - 1) WHERE ((position >= 4) AND (position <= 4))",
238
- "UPDATE items SET position = 4 WHERE (id = 7)"]
239
- end
240
-
241
- it "should have next return the next entry in the list if not given an argument" do
242
- @c.dataset = @c.dataset.with_fetch(:id=>9, :position=>4)
243
- @o.next.must_equal @c.load(:id=>9, :position=>4)
244
- @db.sqls.must_equal ["SELECT * FROM items WHERE (position = 4) ORDER BY position LIMIT 1"]
245
- end
246
-
247
- it "should have next return the entry the given number of positions below the instance if given an argument" do
248
- @c.dataset = @c.dataset.with_fetch(:id=>9, :position=>5)
249
- @o.next(2).must_equal @c.load(:id=>9, :position=>5)
250
- @db.sqls.must_equal ["SELECT * FROM items WHERE (position = 5) ORDER BY position LIMIT 1"]
251
- end
252
-
253
- it "should have next return a previous entry if given a negative argument" do
254
- @c.dataset = @c.dataset.with_fetch(:id=>9, :position=>2)
255
- @o.next(-1).must_equal @c.load(:id=>9, :position=>2)
256
- @db.sqls.must_equal ["SELECT * FROM items WHERE (position = 2) ORDER BY position LIMIT 1"]
257
- end
258
-
259
- it "should have position_value return the value of the position field" do
260
- @o.position_value.must_equal 3
261
- end
262
-
263
- it "should have prev return the previous entry in the list if not given an argument" do
264
- @c.dataset = @c.dataset.with_fetch(:id=>9, :position=>2)
265
- @o.prev.must_equal @c.load(:id=>9, :position=>2)
266
- @db.sqls.must_equal ["SELECT * FROM items WHERE (position = 2) ORDER BY position LIMIT 1"]
267
- end
268
-
269
- it "should have prev return the entry the given number of positions above the instance if given an argument" do
270
- @c.dataset = @c.dataset.with_fetch(:id=>9, :position=>1)
271
- @o.prev(2).must_equal @c.load(:id=>9, :position=>1)
272
- @db.sqls.must_equal ["SELECT * FROM items WHERE (position = 1) ORDER BY position LIMIT 1"]
273
- end
274
-
275
- it "should have prev return a following entry if given a negative argument" do
276
- @c.dataset = @c.dataset.with_fetch(:id=>9, :position=>4)
277
- @o.prev(-1).must_equal @c.load(:id=>9, :position=>4)
278
- @db.sqls.must_equal ["SELECT * FROM items WHERE (position = 4) ORDER BY position LIMIT 1"]
279
- end
280
-
281
- it "should work correctly with validation on position" do
282
- @c.class_eval do
283
- def validate
284
- super
285
- errors.add(:position, "not set") unless position
286
- end
287
- end
288
- @c.create
289
- @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"]
290
- end
291
- 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