sorbet-rails 0.7.3 → 0.7.19

Sign up to get free protection for your applications and to get access to all the features.
Files changed (363) hide show
  1. checksums.yaml +4 -4
  2. data/.github/dependabot.yml +7 -0
  3. data/.github/workflows/ci-master.yml +28 -0
  4. data/.github/workflows/ci.yml +26 -0
  5. data/.github/workflows/publish-gem.yml +18 -0
  6. data/CONTRIBUTING.md +1 -2
  7. data/Gemfile +5 -9
  8. data/README.md +15 -5
  9. data/Rakefile +13 -24
  10. data/lib/sorbet-rails/active_record_rbi_formatter.rb +16 -13
  11. data/lib/sorbet-rails/dependent_gem_rbis/activerecord.rbi +4 -0
  12. data/lib/sorbet-rails/dependent_gem_rbis/parlour.rbi +1896 -0
  13. data/lib/sorbet-rails/gem_plugins/aasm_plugin.rb +50 -0
  14. data/lib/sorbet-rails/gem_plugins/attr_json_plugin.rb +137 -0
  15. data/lib/sorbet-rails/gem_plugins/flag_shih_tzu_plugin.rb +201 -0
  16. data/lib/sorbet-rails/gem_plugins/kaminari_plugin.rb +20 -0
  17. data/lib/sorbet-rails/gem_plugins/money_rails_plugin.rb +76 -0
  18. data/lib/sorbet-rails/gem_plugins/shrine_plugin.rb +1 -1
  19. data/lib/sorbet-rails/job_rbi_formatter.rb +1 -1
  20. data/lib/sorbet-rails/model_plugins/active_record_serialized_attribute.rb +3 -2
  21. data/lib/sorbet-rails/model_plugins/base.rb +8 -1
  22. data/lib/sorbet-rails/model_plugins/custom_finder_methods.rb +1 -1
  23. data/lib/sorbet-rails/model_plugins/plugins.rb +12 -0
  24. data/lib/sorbet-rails/railtie.rb +1 -1
  25. data/lib/sorbet-rails/routes_rbi_formatter.rb +8 -0
  26. data/lib/sorbet-rails/tasks/rails_rbi.rake +12 -8
  27. data/sorbet-rails.gemspec +2 -2
  28. data/spec/bin/run_all_specs.sh +3 -4
  29. data/spec/bin/run_spec.sh +4 -1
  30. data/spec/generators/rails-template.rb +3 -20
  31. data/spec/generators/sorbet_test_cases.rb +17 -4
  32. data/spec/rails_helper.rb +6 -10
  33. data/spec/rake_rails_rbi_models_spec.rb +11 -4
  34. data/spec/sorbet_spec.rb +2 -1
  35. data/spec/support/v5.2/Gemfile +1 -3
  36. data/spec/support/v5.2/Gemfile.lock +72 -74
  37. data/spec/support/v5.2/app/controllers/application_controller.rb +1 -1
  38. data/spec/support/v5.2/app/mailers/application_mailer.rb +1 -1
  39. data/spec/support/v5.2/app/mailers/daily_prophet_mailer.rb +1 -1
  40. data/spec/support/v5.2/app/mailers/hogwarts_acceptance_mailer.rb +1 -1
  41. data/spec/support/v5.2/app/models/spell_book.rb +1 -1
  42. data/spec/support/v5.2/app/models/wand.rb +1 -1
  43. data/spec/support/v5.2/app/models/wizard.rb +1 -1
  44. data/spec/support/v5.2/config/environments/development.rb +1 -1
  45. data/spec/support/v5.2/config/environments/production.rb +1 -1
  46. data/spec/support/v5.2/config/environments/test.rb +1 -1
  47. data/spec/support/v5.2/config/initializers/wrap_parameters.rb +1 -1
  48. data/spec/support/v5.2/config/routes.rb +1 -1
  49. data/spec/support/v5.2/sorbet_test_cases.rb +17 -4
  50. data/spec/support/v6.0/Gemfile +1 -1
  51. data/spec/support/v6.0/Gemfile.lock +87 -88
  52. data/spec/support/v6.0/app/mailers/application_mailer.rb +1 -1
  53. data/spec/support/v6.0/config/environments/development.rb +1 -1
  54. data/spec/support/v6.0/config/environments/test.rb +1 -1
  55. data/spec/support/v6.0/config/initializers/cookies_serializer.rb +1 -1
  56. data/spec/support/v6.0/config/initializers/sorbet_rails.rb +1 -1
  57. data/spec/support/v6.0/config/routes.rb +1 -1
  58. data/spec/support/v6.0/sorbet_test_cases.rb +17 -4
  59. data/spec/support/{v5.1 → v6.1}/.gitignore +13 -2
  60. data/spec/support/{v5.1 → v6.1}/Gemfile +12 -15
  61. data/spec/support/v6.1/Gemfile.lock +196 -0
  62. data/spec/support/{v5.0 → v6.1}/README.md +0 -0
  63. data/spec/support/{v5.0 → v6.1}/Rakefile +0 -0
  64. data/spec/support/{v5.0 → v6.1}/app/assets/config/manifest.js +0 -0
  65. data/spec/support/{v5.0 → v6.1}/app/assets/images/.keep +0 -0
  66. data/spec/support/{v5.1 → v6.1}/app/assets/stylesheets/application.css +0 -0
  67. data/spec/support/{v5.0 → v6.1}/app/controllers/application_controller.rb +1 -2
  68. data/spec/support/{v5.0 → v6.1}/app/controllers/concerns/.keep +0 -0
  69. data/spec/support/{v5.0 → v6.1}/app/helpers/application_helper.rb +0 -0
  70. data/spec/support/{v5.0 → v6.1}/app/helpers/bar_helper.rb +0 -0
  71. data/spec/support/{v5.0 → v6.1}/app/helpers/baz_helper.rb +0 -0
  72. data/spec/support/{v5.0 → v6.1}/app/helpers/foo_helper.rb +0 -0
  73. data/spec/support/v6.1/app/jobs/application_job.rb +8 -0
  74. data/spec/support/{v5.0 → v6.1}/app/jobs/award_house_point_hourglasses.rb +0 -0
  75. data/spec/support/{v5.1 → v6.1}/app/mailers/application_mailer.rb +1 -1
  76. data/spec/support/{v5.0 → v6.1}/app/mailers/daily_prophet_mailer.rb +0 -0
  77. data/spec/support/{v5.0 → v6.1}/app/mailers/hogwarts_acceptance_mailer.rb +0 -0
  78. data/spec/support/{v5.0 → v6.1}/app/models/application_record.rb +0 -0
  79. data/spec/support/{v5.0 → v6.1}/app/models/concerns/.keep +0 -0
  80. data/spec/support/{v5.0 → v6.1}/app/models/concerns/mythical.rb +0 -0
  81. data/spec/support/{v5.1 → v6.1}/app/models/headmaster.rb +1 -1
  82. data/spec/support/{v5.1 → v6.1}/app/models/potion.rb +0 -0
  83. data/spec/support/{v5.1 → v6.1}/app/models/robe.rb +0 -0
  84. data/spec/support/{v5.0 → v6.1}/app/models/school.rb +1 -1
  85. data/spec/support/{v5.1 → v6.1}/app/models/spell.rb +0 -0
  86. data/spec/support/{v5.0 → v6.1}/app/models/spell_book.rb +0 -0
  87. data/spec/support/{v5.0 → v6.1}/app/models/squib.rb +0 -0
  88. data/spec/support/{v5.1 → v6.1}/app/models/subject.rb +0 -0
  89. data/spec/support/{v5.0 → v6.1}/app/models/wand.rb +0 -0
  90. data/spec/support/{v5.0 → v6.1}/app/models/wizard.rb +2 -1
  91. data/spec/support/{v5.1 → v6.1}/app/views/layouts/application.html.erb +2 -1
  92. data/spec/support/{v5.0 → v6.1}/app/views/layouts/mailer.html.erb +0 -0
  93. data/spec/support/{v5.0 → v6.1}/app/views/layouts/mailer.text.erb +0 -0
  94. data/spec/support/v6.1/bin/bundle +114 -0
  95. data/spec/support/{v5.0 → v6.1}/bin/rails +0 -0
  96. data/spec/support/{v5.0 → v6.1}/bin/rake +0 -0
  97. data/spec/support/{v5.1 → v6.1}/bin/setup +6 -11
  98. data/spec/support/{v5.1 → v6.1}/config/application.rb +8 -4
  99. data/spec/support/{v5.0 → v6.1}/config/boot.rb +0 -0
  100. data/spec/support/{v5.1 → v6.1}/config/database.yml +1 -1
  101. data/spec/support/{v5.0 → v6.1}/config/environment.rb +0 -0
  102. data/spec/support/{v5.1 → v6.1}/config/environments/development.rb +12 -4
  103. data/spec/support/{v5.1 → v6.1}/config/environments/production.rb +29 -7
  104. data/spec/support/{v5.1 → v6.1}/config/environments/test.rb +13 -7
  105. data/spec/support/{v5.0 → v6.1}/config/initializers/application_controller_renderer.rb +0 -0
  106. data/spec/support/{v5.0 → v6.1}/config/initializers/backtrace_silencers.rb +0 -0
  107. data/spec/support/v6.1/config/initializers/content_security_policy.rb +29 -0
  108. data/spec/support/{v5.1 → v6.1}/config/initializers/cookies_serializer.rb +1 -1
  109. data/spec/support/{v5.0 → v6.1}/config/initializers/filter_parameter_logging.rb +0 -0
  110. data/spec/support/{v5.0 → v6.1}/config/initializers/inflections.rb +0 -0
  111. data/spec/support/{v5.0 → v6.1}/config/initializers/mime_types.rb +0 -0
  112. data/spec/support/{v5.0 → v6.1}/config/initializers/sorbet_rails.rb +1 -1
  113. data/spec/support/{v5.0 → v6.1}/config/initializers/wrap_parameters.rb +1 -1
  114. data/spec/support/{v5.1 → v6.1}/config/locales/en.yml +1 -1
  115. data/spec/support/{v5.1 → v6.1}/config/puma.rb +8 -26
  116. data/spec/support/v6.1/config/routes.rb +5 -0
  117. data/spec/support/v6.1/config/storage.yml +34 -0
  118. data/spec/support/{v5.0 → v6.1}/config.ru +0 -0
  119. data/spec/support/{v5.1 → v6.1}/db/migrate/20190620000001_create_wizards.rb +2 -2
  120. data/spec/support/{v5.1 → v6.1}/db/migrate/20190620000002_create_wands.rb +2 -2
  121. data/spec/support/{v5.1 → v6.1}/db/migrate/20190620000003_create_spell_books.rb +2 -2
  122. data/spec/support/{v5.1 → v6.1}/db/migrate/20190620000004_add_more_column_types_to_wands.rb +2 -2
  123. data/spec/support/v6.1/db/migrate/20190620000005_add_broom_to_wizard.rb +6 -0
  124. data/spec/support/{v5.1 → v6.1}/db/migrate/20190620000006_add_more_enums_to_wizard.rb +2 -2
  125. data/spec/support/{v5.1 → v6.1}/db/migrate/20190620000007_add_type_to_wizard.rb +2 -2
  126. data/spec/support/{v5.1 → v6.1}/db/migrate/20190620000008_add_robe_to_wizard.rb +2 -2
  127. data/spec/support/{v5.1 → v6.1}/db/migrate/20190620000009_add_school.rb +2 -2
  128. data/spec/support/{v5.1 → v6.1}/db/migrate/20190620000010_add_subject.rb +2 -2
  129. data/spec/support/{v5.1 → v6.1}/db/migrate/20190620000011_add_subjects_wizards.rb +2 -2
  130. data/spec/support/{v5.1 → v6.1}/db/migrate/20190620000012_add_spell.rb +2 -2
  131. data/spec/support/{v5.1 → v6.1}/db/migrate/20190620000013_add_spells_spell_books.rb +2 -2
  132. data/spec/support/{v5.0 → v6.1}/db/migrate/20190620000014_create_headmasters.rb +2 -2
  133. data/spec/support/{v5.0 → v6.1}/db/migrate/20190620000015_add_serialized_to_wizards.rb +2 -2
  134. data/spec/support/{v5.1 → v6.1}/db/schema.rb +14 -11
  135. data/spec/support/{v5.0 → v6.1}/db/seeds.rb +0 -0
  136. data/spec/support/{v5.0 → v6.1}/lib/assets/.keep +0 -0
  137. data/spec/support/{v5.0 → v6.1}/lib/mythical_rbi_plugin.rb +0 -0
  138. data/spec/support/{v5.0 → v6.1}/lib/tasks/.keep +0 -0
  139. data/spec/support/{v5.0 → v6.1}/log/.keep +0 -0
  140. data/spec/support/{v5.0 → v6.1}/sorbet_test_cases.rb +17 -4
  141. data/spec/support/{v5.0/tmp → v6.1/storage}/.keep +0 -0
  142. data/spec/support/{v5.0/vendor/assets/stylesheets → v6.1/tmp}/.keep +0 -0
  143. data/spec/support/{v5.1/app/assets/images → v6.1/tmp/pids}/.keep +0 -0
  144. data/spec/support/{v5.1/app/controllers/concerns → v6.1/vendor}/.keep +0 -0
  145. data/spec/test_data/v5.2/expected_active_record_base.rbi +10 -10
  146. data/spec/test_data/v5.2/expected_active_record_relation.rbi +10 -11
  147. data/spec/test_data/v5.2/expected_attachment.rbi +1 -1
  148. data/spec/test_data/v5.2/expected_blob.rbi +1 -1
  149. data/spec/test_data/v5.2/expected_headmaster.rbi +1 -1
  150. data/spec/test_data/v5.2/expected_internal_metadata.rbi +1 -1
  151. data/spec/test_data/v5.2/expected_potion.rbi +1 -1
  152. data/spec/test_data/v5.2/expected_robe.rbi +1 -1
  153. data/spec/test_data/v5.2/expected_routes.rbi +8 -0
  154. data/spec/test_data/v5.2/expected_schema_migration.rbi +1 -1
  155. data/spec/test_data/v5.2/expected_school.rbi +1 -1
  156. data/spec/test_data/v5.2/expected_spell/habtm_spell_books.rbi +1 -1
  157. data/spec/test_data/v5.2/expected_spell.rbi +1 -1
  158. data/spec/test_data/v5.2/expected_spell_book/habtm_spells.rbi +1 -1
  159. data/spec/test_data/v5.2/expected_spell_book.rbi +1 -1
  160. data/spec/test_data/v5.2/expected_squib.rbi +3 -3
  161. data/spec/test_data/v5.2/expected_subject/habtm_wizards.rbi +1 -1
  162. data/spec/test_data/v5.2/expected_subject.rbi +1 -1
  163. data/spec/test_data/v5.2/expected_wand.rbi +1 -1
  164. data/spec/test_data/v5.2/expected_wizard/habtm_subjects.rbi +1 -1
  165. data/spec/test_data/v5.2/expected_wizard.rbi +3 -3
  166. data/spec/test_data/v5.2/expected_wizard_wo_spellbook.rbi +3 -3
  167. data/spec/test_data/v6.0/expected_active_record_base.rbi +10 -10
  168. data/spec/test_data/v6.0/expected_active_record_relation.rbi +10 -11
  169. data/spec/test_data/v6.0/expected_attachment.rbi +1 -1
  170. data/spec/test_data/v6.0/expected_blob.rbi +1 -1
  171. data/spec/test_data/v6.0/expected_headmaster.rbi +1 -1
  172. data/spec/test_data/v6.0/expected_internal_metadata.rbi +1 -1
  173. data/spec/test_data/v6.0/expected_potion.rbi +1 -1
  174. data/spec/test_data/v6.0/expected_robe.rbi +1 -1
  175. data/spec/test_data/v6.0/expected_routes.rbi +8 -0
  176. data/spec/test_data/v6.0/expected_schema_migration.rbi +1 -1
  177. data/spec/test_data/v6.0/expected_school.rbi +1 -1
  178. data/spec/test_data/v6.0/expected_spell/habtm_spell_books.rbi +1 -1
  179. data/spec/test_data/v6.0/expected_spell.rbi +1 -1
  180. data/spec/test_data/v6.0/expected_spell_book/habtm_spells.rbi +1 -1
  181. data/spec/test_data/v6.0/expected_spell_book.rbi +1 -1
  182. data/spec/test_data/v6.0/expected_squib.rbi +3 -3
  183. data/spec/test_data/v6.0/expected_subject/habtm_wizards.rbi +1 -1
  184. data/spec/test_data/v6.0/expected_subject.rbi +1 -1
  185. data/spec/test_data/v6.0/expected_wand.rbi +1 -1
  186. data/spec/test_data/v6.0/expected_wizard/habtm_subjects.rbi +1 -1
  187. data/spec/test_data/v6.0/expected_wizard.rbi +3 -3
  188. data/spec/test_data/v6.0/expected_wizard_wo_spellbook.rbi +3 -3
  189. data/spec/test_data/{v5.1 → v6.1}/expected_active_record_base.rbi +16 -16
  190. data/spec/test_data/{v5.1 → v6.1}/expected_active_record_relation.rbi +26 -30
  191. data/spec/test_data/{v5.0 → v6.1}/expected_application_job.rbi +0 -0
  192. data/spec/test_data/{v5.0 → v6.1}/expected_application_mailer.rbi +0 -0
  193. data/spec/test_data/v6.1/expected_attachment.rbi +328 -0
  194. data/spec/test_data/{v5.0 → v6.1}/expected_award_house_point_hourglasses.rbi +0 -0
  195. data/spec/test_data/v6.1/expected_blob.rbi +376 -0
  196. data/spec/test_data/{v5.0 → v6.1}/expected_custom_application_job.rbi +0 -0
  197. data/spec/test_data/{v5.0 → v6.1}/expected_custom_application_mailer.rbi +0 -0
  198. data/spec/test_data/{v5.0 → v6.1}/expected_custom_award_house_point_hourglasses.rbi +0 -0
  199. data/spec/test_data/{v5.0 → v6.1}/expected_custom_daily_prophet_mailer.rbi +0 -0
  200. data/spec/test_data/{v5.0 → v6.1}/expected_custom_hogwarts_acceptance_mailer.rbi +0 -0
  201. data/spec/test_data/{v5.0 → v6.1}/expected_daily_prophet_mailer.rbi +0 -0
  202. data/spec/test_data/{v5.1 → v6.1}/expected_habtm_subjects.rbi +48 -0
  203. data/spec/test_data/{v5.1 → v6.1}/expected_habtm_wizards.rbi +48 -0
  204. data/spec/test_data/{v5.1 → v6.1}/expected_headmaster.rbi +25 -1
  205. data/spec/test_data/{v5.0 → v6.1}/expected_helpers.rbi +0 -0
  206. data/spec/test_data/{v5.0 → v6.1}/expected_helpers_with_application_and_devise_helpers.rbi +0 -0
  207. data/spec/test_data/{v5.0 → v6.1}/expected_hogwarts_acceptance_mailer.rbi +0 -0
  208. data/spec/test_data/{v5.1 → v6.1}/expected_internal_metadata.rbi +25 -1
  209. data/spec/test_data/{v5.0 → v6.1}/expected_no_routes.rbi +0 -0
  210. data/spec/test_data/{v5.1 → v6.1}/expected_potion.rbi +25 -1
  211. data/spec/test_data/v6.1/expected_record.rbi +289 -0
  212. data/spec/test_data/{v5.1 → v6.1}/expected_robe.rbi +25 -1
  213. data/spec/test_data/v6.1/expected_routes.rbi +175 -0
  214. data/spec/test_data/{v5.1 → v6.1}/expected_schema_migration.rbi +25 -1
  215. data/spec/test_data/{v5.1 → v6.1}/expected_school.rbi +25 -1
  216. data/spec/test_data/{v5.1 → v6.1}/expected_spell/habtm_spell_books.rbi +25 -1
  217. data/spec/test_data/{v5.1 → v6.1}/expected_spell.rbi +25 -1
  218. data/spec/test_data/{v5.1 → v6.1}/expected_spell_book/habtm_spell_books.rbi +48 -0
  219. data/spec/test_data/{v5.1 → v6.1}/expected_spell_book/habtm_spells.rbi +25 -1
  220. data/spec/test_data/{v5.1 → v6.1}/expected_spell_book.rbi +61 -1
  221. data/spec/test_data/{v5.1 → v6.1}/expected_squib.rbi +497 -59
  222. data/spec/test_data/{v5.0 → v6.1}/expected_srb_tc_output.txt +0 -0
  223. data/spec/test_data/{v5.1 → v6.1}/expected_subject/habtm_wizards.rbi +25 -1
  224. data/spec/test_data/{v5.1 → v6.1}/expected_subject.rbi +25 -1
  225. data/spec/test_data/v6.1/expected_variant_record.rbi +364 -0
  226. data/spec/test_data/{v5.1 → v6.1}/expected_wand.rbi +91 -1
  227. data/spec/test_data/{v5.1 → v6.1}/expected_wizard/habtm_subjects.rbi +25 -1
  228. data/spec/test_data/{v5.1 → v6.1}/expected_wizard.rbi +497 -59
  229. data/spec/test_data/{v5.1 → v6.1}/expected_wizard_wo_spellbook.rbi +491 -53
  230. metadata +269 -501
  231. data/.travis.yml +0 -42
  232. data/lib/sorbet-rails/type_assert/actionpack.rbi +0 -4
  233. data/spec/support/v5.0/.gitignore +0 -21
  234. data/spec/support/v5.0/Gemfile +0 -37
  235. data/spec/support/v5.0/Gemfile.lock +0 -158
  236. data/spec/support/v5.0/app/assets/stylesheets/application.css +0 -15
  237. data/spec/support/v5.0/app/jobs/application_job.rb +0 -3
  238. data/spec/support/v5.0/app/mailers/application_mailer.rb +0 -5
  239. data/spec/support/v5.0/app/models/headmaster.rb +0 -8
  240. data/spec/support/v5.0/app/models/potion.rb +0 -6
  241. data/spec/support/v5.0/app/models/robe.rb +0 -4
  242. data/spec/support/v5.0/app/models/spell.rb +0 -5
  243. data/spec/support/v5.0/app/models/subject.rb +0 -5
  244. data/spec/support/v5.0/app/views/layouts/application.html.erb +0 -13
  245. data/spec/support/v5.0/bin/bundle +0 -3
  246. data/spec/support/v5.0/bin/setup +0 -34
  247. data/spec/support/v5.0/bin/update +0 -29
  248. data/spec/support/v5.0/config/application.rb +0 -27
  249. data/spec/support/v5.0/config/database.yml +0 -25
  250. data/spec/support/v5.0/config/environments/development.rb +0 -48
  251. data/spec/support/v5.0/config/environments/production.rb +0 -75
  252. data/spec/support/v5.0/config/environments/test.rb +0 -43
  253. data/spec/support/v5.0/config/initializers/cookies_serializer.rb +0 -6
  254. data/spec/support/v5.0/config/initializers/new_framework_defaults.rb +0 -27
  255. data/spec/support/v5.0/config/initializers/session_store.rb +0 -4
  256. data/spec/support/v5.0/config/locales/en.yml +0 -23
  257. data/spec/support/v5.0/config/puma.rb +0 -48
  258. data/spec/support/v5.0/config/routes.rb +0 -5
  259. data/spec/support/v5.0/db/migrate/20190620000001_create_wizards.rb +0 -14
  260. data/spec/support/v5.0/db/migrate/20190620000002_create_wands.rb +0 -12
  261. data/spec/support/v5.0/db/migrate/20190620000003_create_spell_books.rb +0 -10
  262. data/spec/support/v5.0/db/migrate/20190620000004_add_more_column_types_to_wands.rb +0 -17
  263. data/spec/support/v5.0/db/migrate/20190620000005_add_broom_to_wizard.rb +0 -6
  264. data/spec/support/v5.0/db/migrate/20190620000006_add_more_enums_to_wizard.rb +0 -9
  265. data/spec/support/v5.0/db/migrate/20190620000007_add_type_to_wizard.rb +0 -6
  266. data/spec/support/v5.0/db/migrate/20190620000008_add_robe_to_wizard.rb +0 -8
  267. data/spec/support/v5.0/db/migrate/20190620000009_add_school.rb +0 -10
  268. data/spec/support/v5.0/db/migrate/20190620000010_add_subject.rb +0 -8
  269. data/spec/support/v5.0/db/migrate/20190620000011_add_subjects_wizards.rb +0 -8
  270. data/spec/support/v5.0/db/migrate/20190620000012_add_spell.rb +0 -8
  271. data/spec/support/v5.0/db/migrate/20190620000013_add_spells_spell_books.rb +0 -8
  272. data/spec/support/v5.0/db/schema.rb +0 -96
  273. data/spec/support/v5.0/public/robots.txt +0 -5
  274. data/spec/support/v5.1/Gemfile.lock +0 -165
  275. data/spec/support/v5.1/README.md +0 -24
  276. data/spec/support/v5.1/Rakefile +0 -6
  277. data/spec/support/v5.1/app/assets/config/manifest.js +0 -2
  278. data/spec/support/v5.1/app/controllers/application_controller.rb +0 -4
  279. data/spec/support/v5.1/app/helpers/application_helper.rb +0 -3
  280. data/spec/support/v5.1/app/helpers/bar_helper.rb +0 -3
  281. data/spec/support/v5.1/app/helpers/baz_helper.rb +0 -3
  282. data/spec/support/v5.1/app/helpers/foo_helper.rb +0 -3
  283. data/spec/support/v5.1/app/jobs/application_job.rb +0 -3
  284. data/spec/support/v5.1/app/jobs/award_house_point_hourglasses.rb +0 -12
  285. data/spec/support/v5.1/app/mailers/daily_prophet_mailer.rb +0 -9
  286. data/spec/support/v5.1/app/mailers/hogwarts_acceptance_mailer.rb +0 -29
  287. data/spec/support/v5.1/app/models/application_record.rb +0 -4
  288. data/spec/support/v5.1/app/models/concerns/.keep +0 -0
  289. data/spec/support/v5.1/app/models/concerns/mythical.rb +0 -11
  290. data/spec/support/v5.1/app/models/school.rb +0 -5
  291. data/spec/support/v5.1/app/models/spell_book.rb +0 -18
  292. data/spec/support/v5.1/app/models/squib.rb +0 -6
  293. data/spec/support/v5.1/app/models/wand.rb +0 -19
  294. data/spec/support/v5.1/app/models/wizard.rb +0 -65
  295. data/spec/support/v5.1/app/views/layouts/mailer.html.erb +0 -13
  296. data/spec/support/v5.1/app/views/layouts/mailer.text.erb +0 -1
  297. data/spec/support/v5.1/bin/bundle +0 -3
  298. data/spec/support/v5.1/bin/rails +0 -4
  299. data/spec/support/v5.1/bin/rake +0 -4
  300. data/spec/support/v5.1/bin/update +0 -29
  301. data/spec/support/v5.1/bin/yarn +0 -11
  302. data/spec/support/v5.1/config/boot.rb +0 -4
  303. data/spec/support/v5.1/config/environment.rb +0 -6
  304. data/spec/support/v5.1/config/initializers/application_controller_renderer.rb +0 -9
  305. data/spec/support/v5.1/config/initializers/backtrace_silencers.rb +0 -8
  306. data/spec/support/v5.1/config/initializers/filter_parameter_logging.rb +0 -5
  307. data/spec/support/v5.1/config/initializers/inflections.rb +0 -17
  308. data/spec/support/v5.1/config/initializers/mime_types.rb +0 -5
  309. data/spec/support/v5.1/config/initializers/sorbet_rails.rb +0 -3
  310. data/spec/support/v5.1/config/initializers/wrap_parameters.rb +0 -15
  311. data/spec/support/v5.1/config/routes.rb +0 -5
  312. data/spec/support/v5.1/config.ru +0 -5
  313. data/spec/support/v5.1/db/migrate/20190620000005_add_broom_to_wizard.rb +0 -6
  314. data/spec/support/v5.1/db/migrate/20190620000014_create_headmasters.rb +0 -9
  315. data/spec/support/v5.1/db/migrate/20190620000015_add_serialized_to_wizards.rb +0 -9
  316. data/spec/support/v5.1/db/seeds.rb +0 -8
  317. data/spec/support/v5.1/lib/assets/.keep +0 -0
  318. data/spec/support/v5.1/lib/mythical_rbi_plugin.rb +0 -16
  319. data/spec/support/v5.1/lib/tasks/.keep +0 -0
  320. data/spec/support/v5.1/log/.keep +0 -0
  321. data/spec/support/v5.1/package.json +0 -5
  322. data/spec/support/v5.1/public/robots.txt +0 -1
  323. data/spec/support/v5.1/sorbet_test_cases.rb +0 -409
  324. data/spec/support/v5.1/tmp/.keep +0 -0
  325. data/spec/support/v5.1/vendor/.keep +0 -0
  326. data/spec/test_data/v5.0/expected_active_record_base.rbi +0 -113
  327. data/spec/test_data/v5.0/expected_active_record_relation.rbi +0 -199
  328. data/spec/test_data/v5.0/expected_habtm_subjects.rbi +0 -660
  329. data/spec/test_data/v5.0/expected_habtm_wizards.rbi +0 -660
  330. data/spec/test_data/v5.0/expected_headmaster.rbi +0 -328
  331. data/spec/test_data/v5.0/expected_internal_metadata.rbi +0 -298
  332. data/spec/test_data/v5.0/expected_potion.rbi +0 -280
  333. data/spec/test_data/v5.0/expected_robe.rbi +0 -301
  334. data/spec/test_data/v5.0/expected_routes.rbi +0 -27
  335. data/spec/test_data/v5.0/expected_schema_migration.rbi +0 -271
  336. data/spec/test_data/v5.0/expected_school.rbi +0 -301
  337. data/spec/test_data/v5.0/expected_spell/habtm_spell_books.rbi +0 -319
  338. data/spec/test_data/v5.0/expected_spell.rbi +0 -292
  339. data/spec/test_data/v5.0/expected_spell_book/habtm_spell_books.rbi +0 -637
  340. data/spec/test_data/v5.0/expected_spell_book/habtm_spells.rbi +0 -319
  341. data/spec/test_data/v5.0/expected_spell_book.rbi +0 -415
  342. data/spec/test_data/v5.0/expected_squib.rbi +0 -832
  343. data/spec/test_data/v5.0/expected_subject/habtm_wizards.rbi +0 -319
  344. data/spec/test_data/v5.0/expected_subject.rbi +0 -292
  345. data/spec/test_data/v5.0/expected_wand.rbi +0 -497
  346. data/spec/test_data/v5.0/expected_wizard/habtm_subjects.rbi +0 -319
  347. data/spec/test_data/v5.0/expected_wizard.rbi +0 -908
  348. data/spec/test_data/v5.0/expected_wizard_wo_spellbook.rbi +0 -902
  349. data/spec/test_data/v5.1/expected_application_job.rbi +0 -20
  350. data/spec/test_data/v5.1/expected_application_mailer.rbi +0 -5
  351. data/spec/test_data/v5.1/expected_award_house_point_hourglasses.rbi +0 -20
  352. data/spec/test_data/v5.1/expected_custom_application_job.rbi +0 -21
  353. data/spec/test_data/v5.1/expected_custom_application_mailer.rbi +0 -6
  354. data/spec/test_data/v5.1/expected_custom_award_house_point_hourglasses.rbi +0 -21
  355. data/spec/test_data/v5.1/expected_custom_daily_prophet_mailer.rbi +0 -8
  356. data/spec/test_data/v5.1/expected_custom_hogwarts_acceptance_mailer.rbi +0 -21
  357. data/spec/test_data/v5.1/expected_daily_prophet_mailer.rbi +0 -7
  358. data/spec/test_data/v5.1/expected_helpers.rbi +0 -27
  359. data/spec/test_data/v5.1/expected_helpers_with_application_and_devise_helpers.rbi +0 -34
  360. data/spec/test_data/v5.1/expected_hogwarts_acceptance_mailer.rbi +0 -20
  361. data/spec/test_data/v5.1/expected_no_routes.rbi +0 -4
  362. data/spec/test_data/v5.1/expected_routes.rbi +0 -27
  363. data/spec/test_data/v5.1/expected_srb_tc_output.txt +0 -1
@@ -1,5 +1,5 @@
1
- # typed: false
2
- class CreateSpellBooks < ActiveRecord::Migration[5.1]
1
+ # typed: true
2
+ class CreateSpellBooks < ActiveRecord::Migration[6.0]
3
3
  def change
4
4
  create_table :spell_books do |t|
5
5
  t.string :name
@@ -1,5 +1,5 @@
1
- # typed: false
2
- class AddMoreColumnTypesToWands < ActiveRecord::Migration[5.1]
1
+ # typed: true
2
+ class AddMoreColumnTypesToWands < ActiveRecord::Migration[6.0]
3
3
  def change
4
4
  add_column :wands, :flexibility, :float, null: false, default: 0.5
5
5
  add_column :wands, :hardness, :decimal, null: false, precision: 10, scale: 10, default: 5
@@ -0,0 +1,6 @@
1
+ # typed: true
2
+ class AddBroomToWizard < ActiveRecord::Migration[6.0]
3
+ def change
4
+ add_column :wizards, :broom, :string
5
+ end
6
+ end
@@ -1,5 +1,5 @@
1
- # typed: false
2
- class AddMoreEnumsToWizard < ActiveRecord::Migration[5.1]
1
+ # typed: true
2
+ class AddMoreEnumsToWizard < ActiveRecord::Migration[6.0]
3
3
  def change
4
4
  add_column :wizards, :quidditch_position, :integer
5
5
  add_column :wizards, :hair_color, :integer
@@ -1,5 +1,5 @@
1
- # typed: false
2
- class AddTypeToWizard < ActiveRecord::Migration[5.1]
1
+ # typed: true
2
+ class AddTypeToWizard < ActiveRecord::Migration[6.0]
3
3
  def change
4
4
  add_column :wizards, :type, :string, null: false, default: 'Wizard'
5
5
  end
@@ -1,5 +1,5 @@
1
- # typed: false
2
- class AddRobeToWizard < ActiveRecord::Migration[5.1]
1
+ # typed: true
2
+ class AddRobeToWizard < ActiveRecord::Migration[6.0]
3
3
  def change
4
4
  create_table :robes do |t|
5
5
  t.references :wizard
@@ -1,5 +1,5 @@
1
- # typed: false
2
- class AddSchool < ActiveRecord::Migration[5.1]
1
+ # typed: true
2
+ class AddSchool < ActiveRecord::Migration[6.0]
3
3
  def change
4
4
  create_table :schools do |t|
5
5
  t.string :name
@@ -1,5 +1,5 @@
1
- # typed: false
2
- class AddSubject < ActiveRecord::Migration[5.1]
1
+ # typed: true
2
+ class AddSubject < ActiveRecord::Migration[6.0]
3
3
  def change
4
4
  create_table :subjects do |t|
5
5
  t.string :name
@@ -1,5 +1,5 @@
1
- # typed: false
2
- class AddSubjectsWizards < ActiveRecord::Migration[5.1]
1
+ # typed: true
2
+ class AddSubjectsWizards < ActiveRecord::Migration[6.0]
3
3
  def change
4
4
  create_join_table :subjects, :wizards, column_options: { null: true } do |t|
5
5
  t.index [:subject_id, :wizard_id]
@@ -1,5 +1,5 @@
1
- # typed: false
2
- class AddSpell < ActiveRecord::Migration[5.1]
1
+ # typed: true
2
+ class AddSpell < ActiveRecord::Migration[6.0]
3
3
  def change
4
4
  create_table :spells do |t|
5
5
  t.string :name
@@ -1,5 +1,5 @@
1
- # typed: false
2
- class AddSpellsSpellBooks < ActiveRecord::Migration[5.1]
1
+ # typed: true
2
+ class AddSpellsSpellBooks < ActiveRecord::Migration[6.0]
3
3
  def change
4
4
  create_join_table :spells, :spell_books do |t|
5
5
  t.index [:spell_id, :spell_book_id]
@@ -1,5 +1,5 @@
1
- # typed: false
2
- class CreateHeadmasters < ActiveRecord::Migration[5.0]
1
+ # typed: true
2
+ class CreateHeadmasters < ActiveRecord::Migration[6.0]
3
3
  def change
4
4
  create_table :headmasters do |t|
5
5
  t.references :school
@@ -1,5 +1,5 @@
1
- # typed: false
2
- class AddSerializedToWizards < ActiveRecord::Migration[5.0]
1
+ # typed: true
2
+ class AddSerializedToWizards < ActiveRecord::Migration[6.0]
3
3
  def change
4
4
  add_column :wizards, :owl_results, :text # Hash
5
5
  add_column :wizards, :newt_subjects, :text # generic
@@ -1,17 +1,17 @@
1
- # typed: false
1
+ # typed: strict
2
2
  # This file is auto-generated from the current state of the database. Instead
3
3
  # of editing this file, please use the migrations feature of Active Record to
4
4
  # incrementally modify your database, and then regenerate this schema definition.
5
5
  #
6
- # Note that this schema.rb definition is the authoritative source for your
7
- # database schema. If you need to create the application database on another
8
- # system, you should be using db:schema:load, not running all the migrations
9
- # from scratch. The latter is a flawed and unsustainable approach (the more migrations
10
- # you'll amass, the slower it'll run and the greater likelihood for issues).
6
+ # This file is the source Rails uses to define your schema when running `rails
7
+ # db:schema:load`. When creating a new database, `rails db:schema:load` tends to
8
+ # be faster and is potentially less error prone than running all of your
9
+ # migrations from scratch. Old migrations may fail to apply correctly if those
10
+ # migrations use external dependencies or application code.
11
11
  #
12
12
  # It's strongly recommended that you check this file into your version control system.
13
13
 
14
- ActiveRecord::Schema.define(version: 20190620000015) do
14
+ ActiveRecord::Schema.define(version: 2019_06_20_000015) do
15
15
 
16
16
  create_table "headmasters", force: :cascade do |t|
17
17
  t.integer "school_id"
@@ -60,8 +60,8 @@ ActiveRecord::Schema.define(version: 20190620000015) do
60
60
  t.integer "wizard_id", null: false
61
61
  t.string "wood_type"
62
62
  t.integer "core_type"
63
- t.datetime "created_at", null: false
64
- t.datetime "updated_at", null: false
63
+ t.datetime "created_at", precision: 6, null: false
64
+ t.datetime "updated_at", precision: 6, null: false
65
65
  t.float "flexibility", default: 0.5, null: false
66
66
  t.decimal "hardness", precision: 10, scale: 10, default: "5.0", null: false
67
67
  t.decimal "reflectance", precision: 10, default: "0", null: false
@@ -69,6 +69,8 @@ ActiveRecord::Schema.define(version: 20190620000015) do
69
69
  t.datetime "broken_at"
70
70
  t.date "chosen_at_date"
71
71
  t.time "chosen_at_time"
72
+ t.json "spell_history"
73
+ t.json "maker_info", default: "{}", null: false
72
74
  t.index ["wizard_id"], name: "index_wands_on_wizard_id"
73
75
  end
74
76
 
@@ -78,8 +80,8 @@ ActiveRecord::Schema.define(version: 20190620000015) do
78
80
  t.integer "professor"
79
81
  t.string "parent_email"
80
82
  t.text "notes"
81
- t.datetime "created_at", null: false
82
- t.datetime "updated_at", null: false
83
+ t.datetime "created_at", precision: 6, null: false
84
+ t.datetime "updated_at", precision: 6, null: false
83
85
  t.string "broom"
84
86
  t.integer "quidditch_position"
85
87
  t.integer "hair_color"
@@ -93,4 +95,5 @@ ActiveRecord::Schema.define(version: 20190620000015) do
93
95
  t.text "patronus_characteristics"
94
96
  end
95
97
 
98
+ add_foreign_key "wizards", "schools"
96
99
  end
File without changes
File without changes
File without changes
File without changes
@@ -121,12 +121,17 @@ T.assert_type!(Wizard.all.find_each, T::Enumerator[Wizard])
121
121
  Wizard.all.find_in_batches { |w| T.assert_type!(w, T::Array[Wizard]) }
122
122
  T.assert_type!(Wizard.all.find_in_batches, T::Enumerator[T::Array[Wizard]])
123
123
  Wizard.all.in_batches { |w| T.assert_type!(w, Wizard::ActiveRecord_Relation) }
124
- T.assert_type!(Wizard.all.in_batches, T::Enumerable[Wizard::ActiveRecord_Relation])
124
+ T.assert_type!(Wizard.all.in_batches, ActiveRecord::Batches::BatchEnumerator)
125
125
  # T.assert_type!(Wizard.all.destroy_all, T::Array[Wizard]) # Ignored until we add support
126
126
  T.assert_type!(Wizard.all.any?, T::Boolean)
127
127
  T.assert_type!(Wizard.all.many?, T::Boolean)
128
128
  T.assert_type!(Wizard.all.none?, T::Boolean)
129
129
  T.assert_type!(Wizard.all.one?, T::Boolean)
130
+ T.assert_type!(Wizard.all.any? { |r| r.id > 1 }, T::Boolean)
131
+ T.assert_type!(Wizard.all.many? { |r| r.id > 1 }, T::Boolean)
132
+ T.assert_type!(Wizard.all.none? { |r| r.id > 1 }, T::Boolean)
133
+ T.assert_type!(Wizard.all.one? { |r| r.id > 1 }, T::Boolean)
134
+
130
135
  # T.assert_type!(Wizard.all.update_all(name: 'Harry Potter'), Integer) # Ignored until we add support
131
136
  # T.assert_type!(Wizard.all.delete_all, Integer) # Ignored until we add support
132
137
  # Query methods
@@ -185,12 +190,16 @@ T.assert_type!(spell_books.find_each, T::Enumerator[SpellBook])
185
190
  spell_books.find_in_batches { |s| T.assert_type!(s, T::Array[SpellBook]) }
186
191
  T.assert_type!(spell_books.find_in_batches, T::Enumerator[T::Array[SpellBook]])
187
192
  spell_books.in_batches { |s| T.assert_type!(s, SpellBook::ActiveRecord_AssociationRelation) }
188
- T.assert_type!(spell_books.in_batches, T::Enumerable[SpellBook::ActiveRecord_AssociationRelation])
193
+ T.assert_type!(spell_books.in_batches, ActiveRecord::Batches::BatchEnumerator)
189
194
  # T.assert_type!(spell_books.destroy_all, T::Array[SpellBook]) # Ignored until we add support
190
195
  T.assert_type!(spell_books.any?, T::Boolean)
191
196
  T.assert_type!(spell_books.many?, T::Boolean)
192
197
  T.assert_type!(spell_books.none?, T::Boolean)
193
198
  T.assert_type!(spell_books.one?, T::Boolean)
199
+ T.assert_type!(spell_books.any? { |r| r.id > 1 }, T::Boolean)
200
+ T.assert_type!(spell_books.many? { |r| r.id > 1 }, T::Boolean)
201
+ T.assert_type!(spell_books.none? { |r| r.id > 1 }, T::Boolean)
202
+ T.assert_type!(spell_books.one? { |r| r.id > 1 }, T::Boolean)
194
203
  # T.assert_type!(spell_books.update_all(name: 'Fantastic Beasts'), Integer) # Ignored until we add support
195
204
  # T.assert_type!(spell_books.delete_all, Integer) # Ignored until we add support
196
205
  # Query methods
@@ -257,12 +266,16 @@ T.assert_type!(spell_books_query.find_each, T::Enumerator[SpellBook])
257
266
  spell_books_query.find_in_batches { |s| T.assert_type!(s, T::Array[SpellBook]) }
258
267
  T.assert_type!(spell_books_query.find_in_batches, T::Enumerator[T::Array[SpellBook]])
259
268
  spell_books_query.in_batches { |s| T.assert_type!(s, SpellBook::ActiveRecord_AssociationRelation) }
260
- T.assert_type!(spell_books_query.in_batches, T::Enumerable[SpellBook::ActiveRecord_AssociationRelation])
269
+ T.assert_type!(spell_books_query.in_batches, ActiveRecord::Batches::BatchEnumerator)
261
270
  # T.assert_type!(spell_books_query.destroy_all, T::Array[SpellBook]) # Ignored until we add support
262
271
  T.assert_type!(spell_books_query.any?, T::Boolean)
263
272
  T.assert_type!(spell_books_query.many?, T::Boolean)
264
273
  T.assert_type!(spell_books_query.none?, T::Boolean)
265
274
  T.assert_type!(spell_books_query.one?, T::Boolean)
275
+ T.assert_type!(spell_books_query.any? { |r| r.id > 1 }, T::Boolean)
276
+ T.assert_type!(spell_books_query.many? { |r| r.id > 1 }, T::Boolean)
277
+ T.assert_type!(spell_books_query.none? { |r| r.id > 1 }, T::Boolean)
278
+ T.assert_type!(spell_books_query.one? { |r| r.id > 1 }, T::Boolean)
266
279
  # T.assert_type!(spell_books_query.update_all(name: 'Fantastic Beasts'), Integer) # Ignored until we add support
267
280
  # T.assert_type!(spell_books_query.delete_all, Integer) # Ignored until we add support
268
281
  # Query methods
@@ -316,7 +329,7 @@ T.assert_type!(
316
329
  )
317
330
  T.assert_type!(
318
331
  wizard.patronus_characteristics,
319
- T.nilable(T.any(T::Array[T.untyped], T::Boolean, Float, T::Hash[String, T.untyped], Integer, String))
332
+ T.nilable(ActiveRecord::Coders::JSON),
320
333
  )
321
334
  T.assert_type!(wizard.pets, T.nilable(T::Array[T.untyped]))
322
335
 
File without changes
@@ -96,18 +96,18 @@ class ActiveRecord::Base
96
96
  end
97
97
  def self.find_in_batches(start: nil, finish: nil, batch_size: 1000, error_on_ignore: nil, &block); end
98
98
 
99
- sig { params(conditions: T.untyped).returns(T::Boolean) }
100
- def self.exists?(conditions = nil); end
99
+ sig { params(block: T.nilable(T.proc.params(e: T.attached_class).returns(T::Boolean))).returns(T::Boolean) }
100
+ def self.any?(&block); end
101
101
 
102
- sig { returns(T::Boolean) }
103
- def self.any?; end
102
+ sig { params(block: T.nilable(T.proc.params(e: T.attached_class).returns(T::Boolean))).returns(T::Boolean) }
103
+ def self.many?(&block); end
104
104
 
105
- sig { returns(T::Boolean) }
106
- def self.many?; end
105
+ sig { params(block: T.nilable(T.proc.params(e: T.attached_class).returns(T::Boolean))).returns(T::Boolean) }
106
+ def self.none?(&block); end
107
107
 
108
- sig { returns(T::Boolean) }
109
- def self.none?; end
108
+ sig { params(block: T.nilable(T.proc.params(e: T.attached_class).returns(T::Boolean))).returns(T::Boolean) }
109
+ def self.one?(&block); end
110
110
 
111
- sig { returns(T::Boolean) }
112
- def self.one?; end
111
+ sig { params(conditions: T.untyped).returns(T::Boolean) }
112
+ def self.exists?(conditions = nil); end
113
113
  end
@@ -3,7 +3,6 @@
3
3
  # Please rerun bundle exec rake rails_rbi:active_record to regenerate.
4
4
  class ActiveRecord::Relation
5
5
  include Enumerable
6
- Elem = type_member(fixed: T.untyped)
7
6
 
8
7
  sig { params(args: T.untyped).returns(Elem) }
9
8
  def find(*args); end
@@ -102,20 +101,20 @@ class ActiveRecord::Relation
102
101
  end
103
102
  def find_in_batches(start: nil, finish: nil, batch_size: 1000, error_on_ignore: nil, &block); end
104
103
 
105
- sig { params(conditions: T.untyped).returns(T::Boolean) }
106
- def exists?(conditions = nil); end
104
+ sig { params(block: T.nilable(T.proc.params(e: Elem).returns(T::Boolean))).returns(T::Boolean) }
105
+ def any?(&block); end
107
106
 
108
- sig { returns(T::Boolean) }
109
- def any?; end
107
+ sig { params(block: T.nilable(T.proc.params(e: Elem).returns(T::Boolean))).returns(T::Boolean) }
108
+ def many?(&block); end
110
109
 
111
- sig { returns(T::Boolean) }
112
- def many?; end
110
+ sig { params(block: T.nilable(T.proc.params(e: Elem).returns(T::Boolean))).returns(T::Boolean) }
111
+ def none?(&block); end
113
112
 
114
- sig { returns(T::Boolean) }
115
- def none?; end
113
+ sig { params(block: T.nilable(T.proc.params(e: Elem).returns(T::Boolean))).returns(T::Boolean) }
114
+ def one?(&block); end
116
115
 
117
- sig { returns(T::Boolean) }
118
- def one?; end
116
+ sig { params(conditions: T.untyped).returns(T::Boolean) }
117
+ def exists?(conditions = nil); end
119
118
 
120
119
  sig { override.params(block: T.proc.params(e: Elem).void).returns(T::Array[Elem]) }
121
120
  def each(&block); end
@@ -55,7 +55,7 @@ module ActiveStorage::Attachment::CustomFinderMethods
55
55
  sig { params(args: T::Array[T.any(Integer, String)]).returns(T::Array[ActiveStorage::Attachment]) }
56
56
  def find_n(*args); end
57
57
 
58
- sig { params(id: Integer).returns(T.nilable(ActiveStorage::Attachment)) }
58
+ sig { params(id: T.nilable(Integer)).returns(T.nilable(ActiveStorage::Attachment)) }
59
59
  def find_by_id(id); end
60
60
 
61
61
  sig { params(id: Integer).returns(ActiveStorage::Attachment) }
@@ -64,7 +64,7 @@ module ActiveStorage::Blob::CustomFinderMethods
64
64
  sig { params(args: T::Array[T.any(Integer, String)]).returns(T::Array[ActiveStorage::Blob]) }
65
65
  def find_n(*args); end
66
66
 
67
- sig { params(id: Integer).returns(T.nilable(ActiveStorage::Blob)) }
67
+ sig { params(id: T.nilable(Integer)).returns(T.nilable(ActiveStorage::Blob)) }
68
68
  def find_by_id(id); end
69
69
 
70
70
  sig { params(id: Integer).returns(ActiveStorage::Blob) }
@@ -84,7 +84,7 @@ module Headmaster::CustomFinderMethods
84
84
  sig { params(args: T::Array[T.any(Integer, String)]).returns(T::Array[Headmaster]) }
85
85
  def find_n(*args); end
86
86
 
87
- sig { params(id: Integer).returns(T.nilable(Headmaster)) }
87
+ sig { params(id: T.nilable(Integer)).returns(T.nilable(Headmaster)) }
88
88
  def find_by_id(id); end
89
89
 
90
90
  sig { params(id: Integer).returns(Headmaster) }
@@ -55,7 +55,7 @@ module ActiveRecord::InternalMetadata::CustomFinderMethods
55
55
  sig { params(args: T::Array[T.any(Integer, String)]).returns(T::Array[ActiveRecord::InternalMetadata]) }
56
56
  def find_n(*args); end
57
57
 
58
- sig { params(id: Integer).returns(T.nilable(ActiveRecord::InternalMetadata)) }
58
+ sig { params(id: T.nilable(Integer)).returns(T.nilable(ActiveRecord::InternalMetadata)) }
59
59
  def find_by_id(id); end
60
60
 
61
61
  sig { params(id: Integer).returns(ActiveRecord::InternalMetadata) }
@@ -37,7 +37,7 @@ module Potion::CustomFinderMethods
37
37
  sig { params(args: T::Array[T.any(Integer, String)]).returns(T::Array[Potion]) }
38
38
  def find_n(*args); end
39
39
 
40
- sig { params(id: Integer).returns(T.nilable(Potion)) }
40
+ sig { params(id: T.nilable(Integer)).returns(T.nilable(Potion)) }
41
41
  def find_by_id(id); end
42
42
 
43
43
  sig { params(id: Integer).returns(Potion) }
@@ -57,7 +57,7 @@ module Robe::CustomFinderMethods
57
57
  sig { params(args: T::Array[T.any(Integer, String)]).returns(T::Array[Robe]) }
58
58
  def find_n(*args); end
59
59
 
60
- sig { params(id: Integer).returns(T.nilable(Robe)) }
60
+ sig { params(id: T.nilable(Integer)).returns(T.nilable(Robe)) }
61
61
  def find_by_id(id); end
62
62
 
63
63
  sig { params(id: Integer).returns(Robe) }
@@ -17,6 +17,14 @@ class ActionMailer::Base
17
17
  include GeneratedUrlHelpers
18
18
  end
19
19
 
20
+ class ActionDispatch::IntegrationTest
21
+ include GeneratedUrlHelpers
22
+ end
23
+
24
+ class ActionDispatch::SystemTestCase
25
+ include GeneratedUrlHelpers
26
+ end
27
+
20
28
  module GeneratedUrlHelpers
21
29
  # Sigs for route /test/index(.:format)
22
30
  sig { params(args: T.untyped, kwargs: T.untyped).returns(String) }
@@ -28,7 +28,7 @@ module ActiveRecord::SchemaMigration::CustomFinderMethods
28
28
  sig { params(args: T::Array[T.any(Integer, String)]).returns(T::Array[ActiveRecord::SchemaMigration]) }
29
29
  def find_n(*args); end
30
30
 
31
- sig { params(id: Integer).returns(T.nilable(ActiveRecord::SchemaMigration)) }
31
+ sig { params(id: T.nilable(Integer)).returns(T.nilable(ActiveRecord::SchemaMigration)) }
32
32
  def find_by_id(id); end
33
33
 
34
34
  sig { params(id: Integer).returns(ActiveRecord::SchemaMigration) }
@@ -57,7 +57,7 @@ module School::CustomFinderMethods
57
57
  sig { params(args: T::Array[T.any(Integer, String)]).returns(T::Array[School]) }
58
58
  def find_n(*args); end
59
59
 
60
- sig { params(id: Integer).returns(T.nilable(School)) }
60
+ sig { params(id: T.nilable(Integer)).returns(T.nilable(School)) }
61
61
  def find_by_id(id); end
62
62
 
63
63
  sig { params(id: Integer).returns(School) }
@@ -75,7 +75,7 @@ module Spell::HABTM_SpellBooks::CustomFinderMethods
75
75
  sig { params(args: T::Array[T.any(Integer, String)]).returns(T::Array[Spell::HABTM_SpellBooks]) }
76
76
  def find_n(*args); end
77
77
 
78
- sig { params(id: Integer).returns(T.nilable(Spell::HABTM_SpellBooks)) }
78
+ sig { params(id: T.nilable(Integer)).returns(T.nilable(Spell::HABTM_SpellBooks)) }
79
79
  def find_by_id(id); end
80
80
 
81
81
  sig { params(id: Integer).returns(Spell::HABTM_SpellBooks) }
@@ -48,7 +48,7 @@ module Spell::CustomFinderMethods
48
48
  sig { params(args: T::Array[T.any(Integer, String)]).returns(T::Array[Spell]) }
49
49
  def find_n(*args); end
50
50
 
51
- sig { params(id: Integer).returns(T.nilable(Spell)) }
51
+ sig { params(id: T.nilable(Integer)).returns(T.nilable(Spell)) }
52
52
  def find_by_id(id); end
53
53
 
54
54
  sig { params(id: Integer).returns(Spell) }
@@ -75,7 +75,7 @@ module SpellBook::HABTM_Spells::CustomFinderMethods
75
75
  sig { params(args: T::Array[T.any(Integer, String)]).returns(T::Array[SpellBook::HABTM_Spells]) }
76
76
  def find_n(*args); end
77
77
 
78
- sig { params(id: Integer).returns(T.nilable(SpellBook::HABTM_Spells)) }
78
+ sig { params(id: T.nilable(Integer)).returns(T.nilable(SpellBook::HABTM_Spells)) }
79
79
  def find_by_id(id); end
80
80
 
81
81
  sig { params(id: Integer).returns(SpellBook::HABTM_Spells) }
@@ -104,7 +104,7 @@ module SpellBook::CustomFinderMethods
104
104
  sig { params(args: T::Array[T.any(Integer, String)]).returns(T::Array[SpellBook]) }
105
105
  def find_n(*args); end
106
106
 
107
- sig { params(id: Integer).returns(T.nilable(SpellBook)) }
107
+ sig { params(id: T.nilable(Integer)).returns(T.nilable(SpellBook)) }
108
108
  def find_by_id(id); end
109
109
 
110
110
  sig { params(id: Integer).returns(SpellBook) }
@@ -130,10 +130,10 @@ module Squib::GeneratedSerializedAttributeMethods
130
130
  sig { returns(T::Boolean) }
131
131
  def owl_results?; end
132
132
 
133
- sig { returns(T.nilable(T.any(T::Array[T.untyped], T::Boolean, Float, T::Hash[T.untyped, T.untyped], Integer, String))) }
133
+ sig { returns(T.nilable(ActiveRecord::Coders::JSON)) }
134
134
  def patronus_characteristics; end
135
135
 
136
- sig { params(value: T.nilable(T.any(T::Array[T.untyped], T::Boolean, Float, T::Hash[T.untyped, T.untyped], Integer, String))).void }
136
+ sig { params(value: T.nilable(ActiveRecord::Coders::JSON)).void }
137
137
  def patronus_characteristics=(value); end
138
138
 
139
139
  sig { returns(T::Boolean) }
@@ -406,7 +406,7 @@ module Squib::CustomFinderMethods
406
406
  sig { params(args: T::Array[T.any(Integer, String)]).returns(T::Array[Squib]) }
407
407
  def find_n(*args); end
408
408
 
409
- sig { params(id: Integer).returns(T.nilable(Squib)) }
409
+ sig { params(id: T.nilable(Integer)).returns(T.nilable(Squib)) }
410
410
  def find_by_id(id); end
411
411
 
412
412
  sig { params(id: Integer).returns(Squib) }
@@ -75,7 +75,7 @@ module Subject::HABTM_Wizards::CustomFinderMethods
75
75
  sig { params(args: T::Array[T.any(Integer, String)]).returns(T::Array[Subject::HABTM_Wizards]) }
76
76
  def find_n(*args); end
77
77
 
78
- sig { params(id: Integer).returns(T.nilable(Subject::HABTM_Wizards)) }
78
+ sig { params(id: T.nilable(Integer)).returns(T.nilable(Subject::HABTM_Wizards)) }
79
79
  def find_by_id(id); end
80
80
 
81
81
  sig { params(id: Integer).returns(Subject::HABTM_Wizards) }
@@ -48,7 +48,7 @@ module Subject::CustomFinderMethods
48
48
  sig { params(args: T::Array[T.any(Integer, String)]).returns(T::Array[Subject]) }
49
49
  def find_n(*args); end
50
50
 
51
- sig { params(id: Integer).returns(T.nilable(Subject)) }
51
+ sig { params(id: T.nilable(Integer)).returns(T.nilable(Subject)) }
52
52
  def find_by_id(id); end
53
53
 
54
54
  sig { params(id: Integer).returns(Subject) }
@@ -200,7 +200,7 @@ module Wand::CustomFinderMethods
200
200
  sig { params(args: T::Array[T.any(Integer, String)]).returns(T::Array[Wand]) }
201
201
  def find_n(*args); end
202
202
 
203
- sig { params(id: Integer).returns(T.nilable(Wand)) }
203
+ sig { params(id: T.nilable(Integer)).returns(T.nilable(Wand)) }
204
204
  def find_by_id(id); end
205
205
 
206
206
  sig { params(id: Integer).returns(Wand) }
@@ -75,7 +75,7 @@ module Wizard::HABTM_Subjects::CustomFinderMethods
75
75
  sig { params(args: T::Array[T.any(Integer, String)]).returns(T::Array[Wizard::HABTM_Subjects]) }
76
76
  def find_n(*args); end
77
77
 
78
- sig { params(id: Integer).returns(T.nilable(Wizard::HABTM_Subjects)) }
78
+ sig { params(id: T.nilable(Integer)).returns(T.nilable(Wizard::HABTM_Subjects)) }
79
79
  def find_by_id(id); end
80
80
 
81
81
  sig { params(id: Integer).returns(Wizard::HABTM_Subjects) }
@@ -130,10 +130,10 @@ module Wizard::GeneratedSerializedAttributeMethods
130
130
  sig { returns(T::Boolean) }
131
131
  def owl_results?; end
132
132
 
133
- sig { returns(T.nilable(T.any(T::Array[T.untyped], T::Boolean, Float, T::Hash[T.untyped, T.untyped], Integer, String))) }
133
+ sig { returns(T.nilable(ActiveRecord::Coders::JSON)) }
134
134
  def patronus_characteristics; end
135
135
 
136
- sig { params(value: T.nilable(T.any(T::Array[T.untyped], T::Boolean, Float, T::Hash[T.untyped, T.untyped], Integer, String))).void }
136
+ sig { params(value: T.nilable(ActiveRecord::Coders::JSON)).void }
137
137
  def patronus_characteristics=(value); end
138
138
 
139
139
  sig { returns(T::Boolean) }
@@ -388,7 +388,7 @@ module Wizard::CustomFinderMethods
388
388
  sig { params(args: T::Array[T.any(Integer, String)]).returns(T::Array[Wizard]) }
389
389
  def find_n(*args); end
390
390
 
391
- sig { params(id: Integer).returns(T.nilable(Wizard)) }
391
+ sig { params(id: T.nilable(Integer)).returns(T.nilable(Wizard)) }
392
392
  def find_by_id(id); end
393
393
 
394
394
  sig { params(id: Integer).returns(Wizard) }
@@ -130,10 +130,10 @@ module Wizard::GeneratedSerializedAttributeMethods
130
130
  sig { returns(T::Boolean) }
131
131
  def owl_results?; end
132
132
 
133
- sig { returns(T.nilable(T.any(T::Array[T.untyped], T::Boolean, Float, T::Hash[T.untyped, T.untyped], Integer, String))) }
133
+ sig { returns(T.nilable(ActiveRecord::Coders::JSON)) }
134
134
  def patronus_characteristics; end
135
135
 
136
- sig { params(value: T.nilable(T.any(T::Array[T.untyped], T::Boolean, Float, T::Hash[T.untyped, T.untyped], Integer, String))).void }
136
+ sig { params(value: T.nilable(ActiveRecord::Coders::JSON)).void }
137
137
  def patronus_characteristics=(value); end
138
138
 
139
139
  sig { returns(T::Boolean) }
@@ -382,7 +382,7 @@ module Wizard::CustomFinderMethods
382
382
  sig { params(args: T::Array[T.any(Integer, String)]).returns(T::Array[Wizard]) }
383
383
  def find_n(*args); end
384
384
 
385
- sig { params(id: Integer).returns(T.nilable(Wizard)) }
385
+ sig { params(id: T.nilable(Integer)).returns(T.nilable(Wizard)) }
386
386
  def find_by_id(id); end
387
387
 
388
388
  sig { params(id: Integer).returns(Wizard) }
@@ -96,18 +96,18 @@ class ActiveRecord::Base
96
96
  end
97
97
  def self.find_in_batches(start: nil, finish: nil, batch_size: 1000, error_on_ignore: nil, &block); end
98
98
 
99
- sig { params(conditions: T.untyped).returns(T::Boolean) }
100
- def self.exists?(conditions = nil); end
99
+ sig { params(block: T.nilable(T.proc.params(e: T.attached_class).returns(T::Boolean))).returns(T::Boolean) }
100
+ def self.any?(&block); end
101
101
 
102
- sig { returns(T::Boolean) }
103
- def self.any?; end
102
+ sig { params(block: T.nilable(T.proc.params(e: T.attached_class).returns(T::Boolean))).returns(T::Boolean) }
103
+ def self.many?(&block); end
104
104
 
105
- sig { returns(T::Boolean) }
106
- def self.many?; end
105
+ sig { params(block: T.nilable(T.proc.params(e: T.attached_class).returns(T::Boolean))).returns(T::Boolean) }
106
+ def self.none?(&block); end
107
107
 
108
- sig { returns(T::Boolean) }
109
- def self.none?; end
108
+ sig { params(block: T.nilable(T.proc.params(e: T.attached_class).returns(T::Boolean))).returns(T::Boolean) }
109
+ def self.one?(&block); end
110
110
 
111
- sig { returns(T::Boolean) }
112
- def self.one?; end
111
+ sig { params(conditions: T.untyped).returns(T::Boolean) }
112
+ def self.exists?(conditions = nil); end
113
113
  end