sorbet-rails 0.5.0 → 0.5.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +6 -1
- data/.travis.yml +1 -1
- data/CONTRIBUTING.md +21 -12
- data/Rakefile +81 -0
- data/lib/sorbet-rails/gem_plugins/kaminari_plugin.rb +21 -0
- data/lib/sorbet-rails/tasks/rails_rbi.rake +10 -6
- data/sorbet-rails.gemspec +1 -1
- data/spec/bin/run_spec.sh +2 -2
- data/spec/generators/rails-template.rb +268 -0
- data/spec/{support/rails_shared → generators}/sorbet_test_cases.rb +0 -0
- data/spec/helper_rbi_formatter_spec.rb +1 -1
- data/spec/support/v4.2/Gemfile +3 -14
- data/spec/support/v4.2/Gemfile.lock +8 -23
- data/spec/support/v4.2/app/controllers/application_controller.rb +1 -1
- data/spec/support/v4.2/app/helpers/application_helper.rb +3 -0
- data/spec/support/v4.2/app/helpers/bar_helper.rb +3 -0
- data/spec/support/v4.2/app/helpers/baz_helper.rb +3 -0
- data/spec/support/v4.2/app/helpers/foo_helper.rb +3 -0
- data/spec/support/{rails_shared/app/controllers/concerns → v4.2/app/models}/.keep +0 -0
- data/spec/support/v4.2/app/models/application_record.rb +5 -0
- data/spec/support/{v5.0/test/controllers → v4.2/app/models/concerns}/.keep +0 -0
- data/spec/support/v4.2/app/models/concerns/mythical.rb +11 -0
- data/spec/support/v4.2/app/models/potion.rb +5 -0
- data/spec/support/v4.2/app/models/spell_book.rb +5 -0
- data/spec/support/v4.2/app/models/wand.rb +17 -0
- data/spec/support/v4.2/app/models/wizard.rb +14 -0
- data/spec/support/v4.2/config/initializers/sorbet_rails.rb +3 -0
- data/spec/support/v4.2/config/routes.rb +55 -2
- data/spec/support/v4.2/db/migrate/{20190620001234_create_wizards.rb → 20190620000001_create_wizards.rb} +0 -0
- data/spec/support/v4.2/db/migrate/{20190620003037_create_wands.rb → 20190620000002_create_wands.rb} +0 -0
- data/spec/support/v4.2/db/migrate/{20190620003739_create_spell_books.rb → 20190620000003_create_spell_books.rb} +0 -0
- data/spec/support/{rails_shared/db/migrate/20190622000000_add_more_column_types_to_wands.rb → v4.2/db/migrate/20190620000004_add_more_column_types_to_wands.rb} +4 -5
- data/spec/support/v4.2/db/schema.rb +1 -1
- data/spec/support/v4.2/lib/mythical_rbi_plugin.rb +16 -0
- data/spec/support/v4.2/sorbet/rbi/gems/actionpack.rbi +277 -279
- data/spec/support/v4.2/sorbet/rbi/gems/actionview.rbi +18 -18
- data/spec/support/v4.2/sorbet/rbi/gems/activemodel.rbi +46 -46
- data/spec/support/v4.2/sorbet/rbi/gems/activerecord.rbi +413 -410
- data/spec/support/v4.2/sorbet/rbi/gems/activesupport.rbi +58 -58
- data/spec/support/v4.2/sorbet/rbi/gems/byebug.rbi +22 -22
- data/spec/support/v4.2/sorbet/rbi/gems/mail.rbi +2 -2
- data/spec/support/v4.2/sorbet/rbi/gems/mini_mime.rbi +8 -2
- data/spec/support/v4.2/sorbet/rbi/gems/parlour.rbi +214 -0
- data/spec/support/v4.2/sorbet/rbi/gems/rails-html-sanitizer.rbi +3 -2
- data/spec/support/v4.2/sorbet/rbi/gems/railties.rbi +0 -6
- data/spec/support/v4.2/sorbet/rbi/gems/thor.rbi +2 -2
- data/spec/support/v4.2/sorbet/rbi/sorbet-typed/lib/actionpack/all/actionpack.rbi +457 -2
- data/spec/support/v4.2/sorbet/rbi/sorbet-typed/lib/activemodel/all/activemodel.rbi +422 -0
- data/spec/support/v4.2/sorbet/rbi/sorbet-typed/lib/activerecord/all/activerecord.rbi +1229 -17
- data/spec/support/v4.2/sorbet/rbi/sorbet-typed/lib/activesupport/all/activesupport.rbi +360 -9
- data/spec/support/v4.2/sorbet/rbi/sorbet-typed/lib/bundler/all/bundler.rbi +32 -4
- data/spec/support/v4.2/sorbet/rbi/sorbet-typed/lib/minitest/all/minitest.rbi +99 -0
- data/spec/support/v4.2/sorbet/rbi/sorbet-typed/lib/ruby/all/open3.rbi +14 -14
- data/spec/support/v4.2/sorbet/rbi/todo.rbi +59 -1
- data/spec/support/v4.2/sorbet_test_cases.rb +123 -0
- data/spec/support/v4.2/typed-override.yaml +2 -0
- data/spec/support/v5.0/Gemfile +6 -19
- data/spec/support/v5.0/Gemfile.lock +12 -9
- data/spec/support/v5.0/app/assets/config/manifest.js +2 -0
- data/spec/support/v5.0/{test/fixtures → app/assets/images}/.keep +0 -0
- data/spec/support/v5.0/app/assets/stylesheets/application.css +15 -0
- data/spec/support/v5.0/app/controllers/application_controller.rb +4 -0
- data/spec/support/v5.0/{test/fixtures/files → app/controllers/concerns}/.keep +0 -0
- data/spec/support/v5.0/app/helpers/application_helper.rb +3 -0
- data/spec/support/v5.0/app/helpers/bar_helper.rb +3 -0
- data/spec/support/v5.0/app/helpers/baz_helper.rb +3 -0
- data/spec/support/v5.0/app/helpers/foo_helper.rb +3 -0
- data/spec/support/v5.0/app/models/application_record.rb +5 -0
- data/spec/support/v5.0/{test/integration → app/models/concerns}/.keep +0 -0
- data/spec/support/v5.0/app/models/concerns/mythical.rb +11 -0
- data/spec/support/v5.0/app/models/potion.rb +5 -0
- data/spec/support/v5.0/app/models/spell_book.rb +5 -0
- data/spec/support/v5.0/app/models/wand.rb +17 -0
- data/spec/support/v5.0/app/models/wizard.rb +14 -0
- data/spec/support/v5.0/app/views/layouts/application.html.erb +13 -0
- data/spec/support/v5.0/config/application.rb +2 -7
- data/spec/support/v5.0/config/environments/production.rb +0 -4
- data/spec/support/v5.0/config/initializers/cookies_serializer.rb +6 -0
- data/spec/support/v5.0/config/initializers/new_framework_defaults.rb +8 -0
- data/spec/support/v5.0/config/initializers/session_store.rb +4 -0
- data/spec/support/v5.0/config/initializers/sorbet_rails.rb +3 -0
- data/spec/support/v5.0/config/routes.rb +2 -2
- data/spec/support/{rails_shared/db/migrate/20190620001234_create_wizards.rb → v5.0/db/migrate/20190620000001_create_wizards.rb} +2 -1
- data/spec/support/{rails_shared/db/migrate/20190620003037_create_wands.rb → v5.0/db/migrate/20190620000002_create_wands.rb} +2 -1
- data/spec/support/{rails_shared/db/migrate/20190620003739_create_spell_books.rb → v5.0/db/migrate/20190620000003_create_spell_books.rb} +2 -1
- data/spec/support/v5.0/db/migrate/20190620000004_add_more_column_types_to_wands.rb +16 -0
- data/spec/support/v5.0/db/schema.rb +1 -1
- data/spec/support/v5.0/{test/mailers → lib/assets}/.keep +0 -0
- data/spec/support/v5.0/lib/mythical_rbi_plugin.rb +16 -0
- data/spec/support/v5.0/sorbet/rbi/gems/actionmailer.rbi +2 -50
- data/spec/support/v5.0/sorbet/rbi/gems/actionpack.rbi +533 -696
- data/spec/support/v5.0/sorbet/rbi/gems/actionview.rbi +56 -57
- data/spec/support/v5.0/sorbet/rbi/gems/activejob.rbi +0 -22
- data/spec/support/v5.0/sorbet/rbi/gems/activemodel.rbi +75 -75
- data/spec/support/v5.0/sorbet/rbi/gems/activerecord.rbi +644 -1020
- data/spec/support/v5.0/sorbet/rbi/gems/activesupport.rbi +81 -216
- data/spec/support/v5.0/sorbet/rbi/gems/arel.rbi +6 -6
- data/spec/support/v5.0/sorbet/rbi/gems/byebug.rbi +22 -22
- data/spec/support/v5.0/sorbet/rbi/gems/jbuilder.rbi +99 -0
- data/spec/support/v5.0/sorbet/rbi/gems/mail.rbi +2 -2
- data/spec/support/v5.0/sorbet/rbi/gems/mini_mime.rbi +8 -2
- data/spec/support/v5.0/sorbet/rbi/gems/nokogiri.rbi +6 -6
- data/spec/support/v5.0/sorbet/rbi/gems/parlour.rbi +214 -0
- data/spec/support/v5.0/sorbet/rbi/gems/rack.rbi +53 -98
- data/spec/support/v5.0/sorbet/rbi/gems/rails-html-sanitizer.rbi +3 -2
- data/spec/support/v5.0/sorbet/rbi/gems/railties.rbi +0 -210
- data/spec/support/v5.0/sorbet/rbi/sorbet-typed/lib/actionpack/all/actionpack.rbi +457 -2
- data/spec/support/v5.0/sorbet/rbi/sorbet-typed/lib/activemodel/all/activemodel.rbi +422 -0
- data/spec/support/v5.0/sorbet/rbi/sorbet-typed/lib/activerecord/all/activerecord.rbi +1229 -17
- data/spec/support/v5.0/sorbet/rbi/sorbet-typed/lib/activesupport/all/activesupport.rbi +360 -9
- data/spec/support/v5.0/sorbet/rbi/sorbet-typed/lib/bundler/all/bundler.rbi +32 -4
- data/spec/support/v5.0/sorbet/rbi/sorbet-typed/lib/minitest/all/minitest.rbi +99 -0
- data/spec/support/v5.0/sorbet/rbi/sorbet-typed/lib/ruby/all/open3.rbi +14 -14
- data/spec/support/v5.0/sorbet/rbi/todo.rbi +62 -4
- data/spec/support/v5.0/sorbet_test_cases.rb +123 -0
- data/spec/support/v5.0/typed-override.yaml +2 -0
- data/spec/support/v5.0/{test/models → vendor/assets/stylesheets}/.keep +0 -0
- data/spec/support/v5.1/.gitignore +23 -0
- data/spec/support/v5.1/Gemfile +9 -25
- data/spec/support/v5.1/Gemfile.lock +22 -11
- data/spec/support/v5.1/app/assets/config/manifest.js +2 -0
- data/spec/support/v5.1/{test/controllers → app/assets/images}/.keep +0 -0
- data/spec/support/v5.1/app/assets/stylesheets/application.css +15 -0
- data/spec/support/v5.1/app/controllers/application_controller.rb +4 -0
- data/spec/support/v5.1/{test/fixtures → app/controllers/concerns}/.keep +0 -0
- data/spec/support/v5.1/app/helpers/application_helper.rb +3 -0
- data/spec/support/v5.1/app/helpers/bar_helper.rb +3 -0
- data/spec/support/v5.1/app/helpers/baz_helper.rb +3 -0
- data/spec/support/v5.1/app/helpers/foo_helper.rb +3 -0
- data/spec/support/v5.1/app/models/application_record.rb +5 -0
- data/spec/support/v5.1/{test/fixtures/files → app/models/concerns}/.keep +0 -0
- data/spec/support/v5.1/app/models/concerns/mythical.rb +11 -0
- data/spec/support/v5.1/app/models/potion.rb +5 -0
- data/spec/support/v5.1/app/models/spell_book.rb +5 -0
- data/spec/support/v5.1/app/models/wand.rb +17 -0
- data/spec/support/v5.1/app/models/wizard.rb +14 -0
- data/spec/support/v5.1/app/views/layouts/application.html.erb +13 -0
- data/spec/support/v5.1/bin/setup +3 -0
- data/spec/support/v5.1/bin/yarn +11 -0
- data/spec/support/v5.1/config/application.rb +5 -7
- data/spec/support/v5.1/config/environments/production.rb +1 -5
- data/spec/support/v5.1/config/initializers/cookies_serializer.rb +6 -0
- data/spec/support/v5.1/config/initializers/sorbet_rails.rb +3 -0
- data/spec/support/v5.1/config/routes.rb +5 -0
- data/spec/support/v5.1/db/migrate/20190620000001_create_wizards.rb +13 -0
- data/spec/support/v5.1/db/migrate/20190620000002_create_wands.rb +12 -0
- data/spec/support/v5.1/db/migrate/20190620000003_create_spell_books.rb +9 -0
- data/spec/support/v5.1/db/migrate/20190620000004_add_more_column_types_to_wands.rb +16 -0
- data/spec/support/v5.1/db/schema.rb +1 -1
- data/spec/support/v5.1/{test/integration → lib/assets}/.keep +0 -0
- data/spec/support/v5.1/lib/mythical_rbi_plugin.rb +16 -0
- data/spec/support/v5.1/package.json +5 -0
- data/spec/support/v5.1/sorbet/rbi/gems/actionmailer.rbi +2 -49
- data/spec/support/v5.1/sorbet/rbi/gems/actionpack.rbi +588 -732
- data/spec/support/v5.1/sorbet/rbi/gems/actionview.rbi +123 -124
- data/spec/support/v5.1/sorbet/rbi/gems/activejob.rbi +0 -35
- data/spec/support/v5.1/sorbet/rbi/gems/activemodel.rbi +68 -68
- data/spec/support/v5.1/sorbet/rbi/gems/activerecord.rbi +501 -651
- data/spec/support/v5.1/sorbet/rbi/gems/activesupport.rbi +80 -218
- data/spec/support/v5.1/sorbet/rbi/gems/bindex.rbi +36 -0
- data/spec/support/v5.1/sorbet/rbi/gems/byebug.rbi +22 -22
- data/spec/support/v5.1/sorbet/rbi/gems/jbuilder.rbi +99 -0
- data/spec/support/v5.1/sorbet/rbi/gems/mail.rbi +2 -2
- data/spec/support/v5.1/sorbet/rbi/gems/mini_mime.rbi +8 -2
- data/spec/support/v5.1/sorbet/rbi/gems/nokogiri.rbi +6 -6
- data/spec/support/v5.1/sorbet/rbi/gems/parlour.rbi +214 -0
- data/spec/support/v5.1/sorbet/rbi/gems/rack.rbi +53 -98
- data/spec/support/v5.1/sorbet/rbi/gems/rails-html-sanitizer.rbi +3 -2
- data/spec/support/v5.1/sorbet/rbi/gems/railties.rbi +0 -209
- data/spec/support/v5.1/sorbet/rbi/gems/sqlite3.rbi +13 -5
- data/spec/support/{v4.2 → v5.1}/sorbet/rbi/gems/web-console.rbi +10 -73
- data/spec/support/v5.1/sorbet/rbi/sorbet-typed/lib/actionpack/all/actionpack.rbi +457 -2
- data/spec/support/v5.1/sorbet/rbi/sorbet-typed/lib/activemodel/all/activemodel.rbi +422 -0
- data/spec/support/v5.1/sorbet/rbi/sorbet-typed/lib/activerecord/all/activerecord.rbi +1229 -17
- data/spec/support/v5.1/sorbet/rbi/sorbet-typed/lib/activesupport/all/activesupport.rbi +360 -9
- data/spec/support/v5.1/sorbet/rbi/sorbet-typed/lib/bundler/all/bundler.rbi +32 -4
- data/spec/support/v5.1/sorbet/rbi/sorbet-typed/lib/minitest/all/minitest.rbi +99 -0
- data/spec/support/v5.1/sorbet/rbi/sorbet-typed/lib/ruby/all/open3.rbi +14 -14
- data/spec/support/v5.1/sorbet/rbi/todo.rbi +59 -2
- data/spec/support/v5.1/sorbet_test_cases.rb +123 -0
- data/spec/support/v5.1/typed-override.yaml +2 -0
- data/spec/support/v5.2-no-sorbet/.gitignore +31 -0
- data/spec/support/v5.2-no-sorbet/Gemfile +12 -28
- data/spec/support/v5.2-no-sorbet/Gemfile.lock +24 -10
- data/spec/support/v5.2-no-sorbet/app/assets/config/manifest.js +2 -0
- data/spec/support/{v5.1/test/mailers → v5.2-no-sorbet/app/assets/images}/.keep +0 -0
- data/spec/support/v5.2-no-sorbet/app/assets/stylesheets/application.css +15 -0
- data/spec/support/{rails_shared → v5.2-no-sorbet}/app/controllers/application_controller.rb +0 -0
- data/spec/support/{v5.1/test/models → v5.2-no-sorbet/app/controllers/concerns}/.keep +0 -0
- data/spec/support/v5.2-no-sorbet/app/helpers/application_helper.rb +2 -0
- data/spec/support/{rails_shared → v5.2-no-sorbet}/app/helpers/bar_helper.rb +0 -0
- data/spec/support/{rails_shared → v5.2-no-sorbet}/app/helpers/baz_helper.rb +0 -0
- data/spec/support/{rails_shared → v5.2-no-sorbet}/app/helpers/foo_helper.rb +0 -0
- data/spec/support/v5.2-no-sorbet/app/jobs/application_job.rb +0 -1
- data/spec/support/v5.2-no-sorbet/app/mailers/application_mailer.rb +0 -1
- data/spec/support/{rails_shared → v5.2-no-sorbet}/app/models/application_record.rb +0 -1
- data/spec/support/v5.2-no-sorbet/{test/controllers → app/models/concerns}/.keep +0 -0
- data/spec/support/{rails_shared → v5.2-no-sorbet}/app/models/concerns/mythical.rb +1 -1
- data/spec/support/{rails_shared → v5.2-no-sorbet}/app/models/potion.rb +0 -1
- data/spec/support/{rails_shared → v5.2-no-sorbet}/app/models/spell_book.rb +0 -2
- data/spec/support/{rails_shared → v5.2-no-sorbet}/app/models/wand.rb +0 -0
- data/spec/support/{rails_shared → v5.2-no-sorbet}/app/models/wizard.rb +0 -1
- data/spec/support/v5.2-no-sorbet/app/views/layouts/application.html.erb +14 -0
- data/spec/support/v5.2-no-sorbet/bin/setup +3 -0
- data/spec/support/v5.2-no-sorbet/bin/update +3 -0
- data/spec/support/v5.2-no-sorbet/bin/yarn +11 -0
- data/spec/support/v5.2-no-sorbet/config/application.rb +5 -8
- data/spec/support/v5.2-no-sorbet/config/boot.rb +0 -1
- data/spec/support/v5.2-no-sorbet/config/environment.rb +0 -1
- data/spec/support/v5.2-no-sorbet/config/environments/development.rb +0 -1
- data/spec/support/v5.2-no-sorbet/config/environments/production.rb +1 -7
- data/spec/support/v5.2-no-sorbet/config/environments/test.rb +0 -1
- data/spec/support/v5.2-no-sorbet/config/initializers/application_controller_renderer.rb +0 -1
- data/spec/support/v5.2-no-sorbet/config/initializers/backtrace_silencers.rb +0 -1
- data/spec/support/v5.2-no-sorbet/config/initializers/content_security_policy.rb +25 -0
- data/spec/support/v5.2-no-sorbet/config/initializers/cookies_serializer.rb +5 -0
- data/spec/support/v5.2-no-sorbet/config/initializers/filter_parameter_logging.rb +0 -1
- data/spec/support/v5.2-no-sorbet/config/initializers/inflections.rb +0 -1
- data/spec/support/v5.2-no-sorbet/config/initializers/mime_types.rb +0 -1
- data/spec/support/v5.2-no-sorbet/config/initializers/sorbet_rails.rb +3 -0
- data/spec/support/v5.2-no-sorbet/config/initializers/wrap_parameters.rb +0 -1
- data/spec/support/v5.2-no-sorbet/config/puma.rb +0 -1
- data/spec/support/v5.2-no-sorbet/config/routes.rb +4 -0
- data/spec/support/v5.2-no-sorbet/db/migrate/20190620000001_create_wizards.rb +12 -0
- data/spec/support/v5.2-no-sorbet/db/migrate/20190620000002_create_wands.rb +11 -0
- data/spec/support/v5.2-no-sorbet/db/migrate/20190620000003_create_spell_books.rb +8 -0
- data/spec/support/{v4.2/db/migrate/20190622000000_add_more_column_types_to_wands.rb → v5.2-no-sorbet/db/migrate/20190620000004_add_more_column_types_to_wands.rb} +6 -2
- data/spec/support/v5.2-no-sorbet/db/schema.rb +1 -2
- data/spec/support/v5.2-no-sorbet/db/seeds.rb +0 -1
- data/spec/support/v5.2-no-sorbet/{test/fixtures → lib/assets}/.keep +0 -0
- data/spec/support/v5.2-no-sorbet/lib/mythical_rbi_plugin.rb +16 -0
- data/spec/support/v5.2-no-sorbet/package.json +5 -0
- data/spec/support/v5.2-no-sorbet/sorbet_test_cases.rb +123 -0
- data/spec/support/v5.2-no-sorbet/typed-override.yaml +2 -0
- data/spec/support/v5.2/.gitignore +31 -0
- data/spec/support/v5.2/Gemfile +12 -28
- data/spec/support/v5.2/Gemfile.lock +24 -10
- data/spec/support/v5.2/app/assets/config/manifest.js +2 -0
- data/spec/support/{v5.2-no-sorbet/test/fixtures/files → v5.2/app/assets/images}/.keep +0 -0
- data/spec/support/v5.2/app/assets/stylesheets/application.css +15 -0
- data/spec/support/v5.2/app/controllers/application_controller.rb +3 -0
- data/spec/support/{v5.2-no-sorbet/test/integration → v5.2/app/controllers/concerns}/.keep +0 -0
- data/spec/support/v5.2/app/helpers/application_helper.rb +3 -0
- data/spec/support/v5.2/app/helpers/bar_helper.rb +3 -0
- data/spec/support/v5.2/app/helpers/baz_helper.rb +3 -0
- data/spec/support/v5.2/app/helpers/foo_helper.rb +3 -0
- data/spec/support/v5.2/app/models/application_record.rb +5 -0
- data/spec/support/{v5.2-no-sorbet/test/mailers → v5.2/app/models/concerns}/.keep +0 -0
- data/spec/support/v5.2/app/models/concerns/mythical.rb +11 -0
- data/spec/support/v5.2/app/models/potion.rb +5 -0
- data/spec/support/v5.2/app/models/spell_book.rb +5 -0
- data/spec/support/v5.2/app/models/wand.rb +17 -0
- data/spec/support/v5.2/app/models/wizard.rb +14 -0
- data/spec/support/v5.2/app/views/layouts/application.html.erb +14 -0
- data/spec/support/v5.2/bin/setup +3 -0
- data/spec/support/v5.2/bin/update +3 -0
- data/spec/support/v5.2/bin/yarn +11 -0
- data/spec/support/v5.2/config/application.rb +5 -7
- data/spec/support/v5.2/config/environments/production.rb +1 -6
- data/spec/support/v5.2/config/initializers/content_security_policy.rb +26 -0
- data/spec/support/v5.2/config/initializers/cookies_serializer.rb +6 -0
- data/spec/support/v5.2/config/initializers/sorbet_rails.rb +3 -0
- data/spec/support/v5.2/config/routes.rb +5 -0
- data/spec/support/v5.2/db/migrate/20190620000001_create_wizards.rb +13 -0
- data/spec/support/v5.2/db/migrate/20190620000002_create_wands.rb +12 -0
- data/spec/support/v5.2/db/migrate/20190620000003_create_spell_books.rb +9 -0
- data/spec/support/v5.2/db/migrate/20190620000004_add_more_column_types_to_wands.rb +16 -0
- data/spec/support/v5.2/db/schema.rb +1 -1
- data/spec/support/{v5.2-no-sorbet/test/models → v5.2/lib/assets}/.keep +0 -0
- data/spec/support/v5.2/lib/mythical_rbi_plugin.rb +16 -0
- data/spec/support/v5.2/package.json +5 -0
- data/spec/support/v5.2/sorbet/rbi/gems/actionmailer.rbi +2 -50
- data/spec/support/v5.2/sorbet/rbi/gems/actionpack.rbi +504 -640
- data/spec/support/v5.2/sorbet/rbi/gems/actionview.rbi +123 -124
- data/spec/support/v5.2/sorbet/rbi/gems/activejob.rbi +0 -37
- data/spec/support/v5.2/sorbet/rbi/gems/activemodel.rbi +70 -69
- data/spec/support/v5.2/sorbet/rbi/gems/activerecord.rbi +521 -690
- data/spec/support/v5.2/sorbet/rbi/gems/activesupport.rbi +93 -235
- data/spec/support/v5.2/sorbet/rbi/gems/arel.rbi +4 -0
- data/spec/support/v5.2/sorbet/rbi/gems/bindex.rbi +36 -0
- data/spec/support/v5.2/sorbet/rbi/gems/byebug.rbi +22 -22
- data/spec/support/v5.2/sorbet/rbi/gems/concurrent-ruby.rbi +4 -0
- data/spec/support/v5.2/sorbet/rbi/gems/jbuilder.rbi +99 -0
- data/spec/support/v5.2/sorbet/rbi/gems/mail.rbi +2 -2
- data/spec/support/v5.2/sorbet/rbi/gems/mini_mime.rbi +8 -2
- data/spec/support/v5.2/sorbet/rbi/gems/nokogiri.rbi +10 -6
- data/spec/support/v5.2/sorbet/rbi/gems/parlour.rbi +214 -0
- data/spec/support/v5.2/sorbet/rbi/gems/rack.rbi +57 -98
- data/spec/support/v5.2/sorbet/rbi/gems/rails-html-sanitizer.rbi +3 -2
- data/spec/support/v5.2/sorbet/rbi/gems/railties.rbi +1 -215
- data/spec/support/v5.2/sorbet/rbi/gems/web-console.rbi +73 -0
- data/spec/support/v5.2/sorbet/rbi/sorbet-typed/lib/actionpack/all/actionpack.rbi +457 -2
- data/spec/support/v5.2/sorbet/rbi/sorbet-typed/lib/activemodel/all/activemodel.rbi +422 -0
- data/spec/support/v5.2/sorbet/rbi/sorbet-typed/lib/activerecord/>=5.2/activerecord.rbi +17 -0
- data/spec/support/v5.2/sorbet/rbi/sorbet-typed/lib/activerecord/all/activerecord.rbi +1229 -17
- data/spec/support/v5.2/sorbet/rbi/sorbet-typed/lib/activerecord/{~>5.2 → ~>5.2.0}/activerecord.rbi +1 -1
- data/spec/support/v5.2/sorbet/rbi/sorbet-typed/lib/activesupport/all/activesupport.rbi +360 -9
- data/spec/support/v5.2/sorbet/rbi/sorbet-typed/lib/bundler/all/bundler.rbi +32 -4
- data/spec/support/v5.2/sorbet/rbi/sorbet-typed/lib/minitest/all/minitest.rbi +99 -0
- data/spec/support/v5.2/sorbet/rbi/sorbet-typed/lib/ruby/all/open3.rbi +14 -14
- data/spec/support/v5.2/sorbet/rbi/todo.rbi +59 -2
- data/spec/support/v5.2/sorbet_test_cases.rb +123 -0
- data/spec/support/v5.2/typed-override.yaml +2 -0
- data/spec/support/v6.0/.gitignore +2 -0
- data/spec/support/v6.0/Gemfile +8 -17
- data/spec/support/v6.0/Gemfile.lock +19 -6
- data/spec/support/v6.0/app/assets/config/manifest.js +2 -0
- data/spec/support/{v5.2/sorbet → v6.0/app/assets/images}/.keep +0 -0
- data/spec/support/v6.0/app/assets/stylesheets/application.css +15 -0
- data/spec/support/v6.0/app/controllers/application_controller.rb +3 -0
- data/spec/support/{v5.2/test/controllers → v6.0/app/controllers/concerns}/.keep +0 -0
- data/spec/support/v6.0/app/helpers/application_helper.rb +3 -0
- data/spec/support/v6.0/app/helpers/bar_helper.rb +3 -0
- data/spec/support/v6.0/app/helpers/baz_helper.rb +3 -0
- data/spec/support/v6.0/app/helpers/foo_helper.rb +3 -0
- data/spec/support/v6.0/app/models/application_record.rb +5 -0
- data/spec/support/{v5.2/test/fixtures → v6.0/app/models/concerns}/.keep +0 -0
- data/spec/support/v6.0/app/models/concerns/mythical.rb +11 -0
- data/spec/support/v6.0/app/models/potion.rb +5 -0
- data/spec/support/v6.0/app/models/spell_book.rb +5 -0
- data/spec/support/v6.0/app/models/wand.rb +17 -0
- data/spec/support/v6.0/app/models/wizard.rb +14 -0
- data/spec/support/v6.0/app/views/layouts/application.html.erb +14 -0
- data/spec/support/v6.0/config/application.rb +4 -6
- data/spec/support/v6.0/config/database.yml +1 -1
- data/spec/support/v6.0/config/environments/development.rb +3 -0
- data/spec/support/v6.0/config/environments/production.rb +1 -5
- data/spec/support/v6.0/config/initializers/content_security_policy.rb +29 -0
- data/spec/support/v6.0/config/initializers/cookies_serializer.rb +6 -0
- data/spec/support/v6.0/config/initializers/sorbet_rails.rb +3 -0
- data/spec/support/v6.0/config/routes.rb +2 -2
- data/spec/support/v6.0/db/migrate/20190620000001_create_wizards.rb +13 -0
- data/spec/support/v6.0/db/migrate/20190620000002_create_wands.rb +12 -0
- data/spec/support/v6.0/db/migrate/20190620000003_create_spell_books.rb +9 -0
- data/spec/support/v6.0/db/migrate/20190620000004_add_more_column_types_to_wands.rb +16 -0
- data/spec/support/v6.0/db/schema.rb +1 -1
- data/spec/support/{v5.2/test/fixtures/files → v6.0/lib/assets}/.keep +0 -0
- data/spec/support/v6.0/lib/mythical_rbi_plugin.rb +16 -0
- data/spec/support/v6.0/public/robots.txt +1 -1
- data/spec/support/v6.0/sorbet/rbi/gems/actionmailbox.rbi +1 -1
- data/spec/support/v6.0/sorbet/rbi/gems/actionmailer.rbi +1 -50
- data/spec/support/v6.0/sorbet/rbi/gems/actionpack.rbi +232 -479
- data/spec/support/v6.0/sorbet/rbi/gems/actiontext.rbi +1 -1
- data/spec/support/v6.0/sorbet/rbi/gems/actionview.rbi +179 -77
- data/spec/support/v6.0/sorbet/rbi/gems/activejob.rbi +1 -283
- data/spec/support/v6.0/sorbet/rbi/gems/activemodel.rbi +71 -70
- data/spec/support/v6.0/sorbet/rbi/gems/activerecord.rbi +705 -843
- data/spec/support/v6.0/sorbet/rbi/gems/activestorage.rbi +5 -1
- data/spec/support/v6.0/sorbet/rbi/gems/activesupport.rbi +121 -300
- data/spec/support/v6.0/sorbet/rbi/gems/bindex.rbi +36 -0
- data/spec/support/v6.0/sorbet/rbi/gems/byebug.rbi +22 -22
- data/spec/support/v6.0/sorbet/rbi/gems/jbuilder.rbi +99 -0
- data/spec/support/v6.0/sorbet/rbi/gems/mail.rbi +1 -1
- data/spec/support/v6.0/sorbet/rbi/gems/mini_mime.rbi +8 -2
- data/spec/support/v6.0/sorbet/rbi/gems/parlour.rbi +214 -0
- data/spec/support/v6.0/sorbet/rbi/gems/rack.rbi +54 -95
- data/spec/support/v6.0/sorbet/rbi/gems/rails-html-sanitizer.rbi +3 -2
- data/spec/support/v6.0/sorbet/rbi/gems/railties.rbi +9 -221
- data/spec/support/v6.0/sorbet/rbi/gems/web-console.rbi +72 -0
- data/spec/support/v6.0/sorbet/rbi/gems/zeitwerk.rbi +12 -4
- data/spec/support/v6.0/sorbet/rbi/sorbet-typed/lib/actionpack/all/actionpack.rbi +457 -2
- data/spec/support/v6.0/sorbet/rbi/sorbet-typed/lib/activemodel/all/activemodel.rbi +422 -0
- data/spec/support/v6.0/sorbet/rbi/sorbet-typed/lib/activerecord/>=5.2/activerecord.rbi +17 -0
- data/spec/support/v6.0/sorbet/rbi/sorbet-typed/lib/activerecord/all/activerecord.rbi +1229 -17
- data/spec/support/v6.0/sorbet/rbi/sorbet-typed/lib/activerecord/~>6.0.0.rc1/activerecord.rbi +10 -0
- data/spec/support/v6.0/sorbet/rbi/sorbet-typed/lib/activesupport/>=6.0.0.rc1/activesupport.rbi +23 -0
- data/spec/support/v6.0/sorbet/rbi/sorbet-typed/lib/activesupport/all/activesupport.rbi +361 -10
- data/spec/support/v6.0/sorbet/rbi/sorbet-typed/lib/bundler/all/bundler.rbi +32 -4
- data/spec/support/v6.0/sorbet/rbi/sorbet-typed/lib/minitest/all/minitest.rbi +99 -0
- data/spec/support/v6.0/sorbet/rbi/sorbet-typed/lib/ruby/all/open3.rbi +14 -14
- data/spec/support/v6.0/sorbet/rbi/todo.rbi +59 -0
- data/spec/support/v6.0/sorbet_test_cases.rb +123 -0
- data/spec/support/v6.0/typed-override.yaml +2 -0
- data/spec/test_data/v4.2/expected_helpers.rbi +5 -0
- data/spec/test_data/v5.0/expected_helpers.rbi +5 -0
- data/spec/test_data/v5.1/expected_helpers.rbi +5 -0
- data/spec/test_data/v5.2-no-sorbet/expected_helpers.rbi +5 -0
- data/spec/test_data/v5.2/expected_helpers.rbi +5 -0
- data/spec/test_data/v6.0/expected_helpers.rbi +5 -0
- data/spec/test_data/v6.0/expected_routes.rbi +12 -0
- metadata +356 -317
- data/spec/support/rails_shared/config/initializers/sorbet_rails.rb +0 -3
- data/spec/support/rails_shared/config/routes.rb +0 -6
- data/spec/support/rails_shared/lib/mythical_rbi_plugin.rb +0 -16
- data/spec/support/rails_shared/typed-override.yaml +0 -2
- data/spec/support/rails_symlinks/app/controllers +0 -1
- data/spec/support/rails_symlinks/app/helpers +0 -1
- data/spec/support/rails_symlinks/app/models +0 -1
- data/spec/support/rails_symlinks/config/initializers/sorbet_rails.rb +0 -1
- data/spec/support/rails_symlinks/config/routes.rb +0 -5
- data/spec/support/rails_symlinks/db/migrate +0 -1
- data/spec/support/rails_symlinks/lib/mythical_rbi_plugin.rb +0 -1
- data/spec/support/rails_symlinks/sorbet_test_cases.rb +0 -1
- data/spec/support/rails_symlinks/typed-override.yaml +0 -1
- data/spec/support/v4.2/app/helpers +0 -1
- data/spec/support/v4.2/app/models +0 -1
- data/spec/support/v4.2/config/initializers/sorbet_rails.rb +0 -1
- data/spec/support/v4.2/config/secrets.yml +0 -22
- data/spec/support/v4.2/lib/mythical_rbi_plugin.rb +0 -1
- data/spec/support/v4.2/sorbet/rbi/gems/binding_of_caller.rbi +0 -22
- data/spec/support/v4.2/sorbet/rbi/gems/debug_inspector.rbi +0 -18
- data/spec/support/v4.2/sorbet/rbi/gems/rdoc.rbi +0 -1053
- data/spec/support/v4.2/sorbet/rbi/gems/sdoc.rbi +0 -73
- data/spec/support/v4.2/sorbet_test_cases.rb +0 -1
- data/spec/support/v4.2/typed-override.yaml +0 -1
- data/spec/support/v5.0/app/channels/application_cable/channel.rb +0 -5
- data/spec/support/v5.0/app/channels/application_cable/connection.rb +0 -5
- data/spec/support/v5.0/app/controllers +0 -1
- data/spec/support/v5.0/app/helpers +0 -1
- data/spec/support/v5.0/app/models +0 -1
- data/spec/support/v5.0/config/cable.yml +0 -9
- data/spec/support/v5.0/config/initializers/cors.rb +0 -17
- data/spec/support/v5.0/config/initializers/sorbet_rails.rb +0 -1
- data/spec/support/v5.0/config/secrets.yml +0 -22
- data/spec/support/v5.0/db/migrate +0 -1
- data/spec/support/v5.0/lib/mythical_rbi_plugin.rb +0 -1
- data/spec/support/v5.0/rails_symlinks/app/controllers +0 -1
- data/spec/support/v5.0/rails_symlinks/app/models +0 -1
- data/spec/support/v5.0/rails_symlinks/config/routes.rb +0 -6
- data/spec/support/v5.0/rails_symlinks/db/migrate +0 -1
- data/spec/support/v5.0/sorbet/rbi/gems/actioncable.rbi +0 -309
- data/spec/support/v5.0/sorbet/rbi/gems/method_source.rbi +0 -63
- data/spec/support/v5.0/sorbet/rbi/gems/minitest.rbi +0 -276
- data/spec/support/v5.0/sorbet/rbi/gems/rails-dom-testing.rbi +0 -67
- data/spec/support/v5.0/sorbet/rbi/gems/rake.rbi +0 -255
- data/spec/support/v5.0/sorbet/rbi/gems/thor.rbi +0 -401
- data/spec/support/v5.0/sorbet_test_cases.rb +0 -1
- data/spec/support/v5.0/test/test_helper.rb +0 -11
- data/spec/support/v5.0/typed-override.yaml +0 -1
- data/spec/support/v5.1/app/channels/application_cable/channel.rb +0 -5
- data/spec/support/v5.1/app/channels/application_cable/connection.rb +0 -5
- data/spec/support/v5.1/app/controllers +0 -1
- data/spec/support/v5.1/app/helpers +0 -1
- data/spec/support/v5.1/app/models +0 -1
- data/spec/support/v5.1/bin/spring +0 -17
- data/spec/support/v5.1/config/cable.yml +0 -10
- data/spec/support/v5.1/config/initializers/cors.rb +0 -17
- data/spec/support/v5.1/config/initializers/sorbet_rails.rb +0 -1
- data/spec/support/v5.1/config/routes.rb +0 -1
- data/spec/support/v5.1/config/secrets.yml +0 -32
- data/spec/support/v5.1/config/spring.rb +0 -7
- data/spec/support/v5.1/db/migrate +0 -1
- data/spec/support/v5.1/lib/mythical_rbi_plugin.rb +0 -1
- data/spec/support/v5.1/sorbet/rbi/gems/actioncable.rbi +0 -309
- data/spec/support/v5.1/sorbet/rbi/gems/method_source.rbi +0 -63
- data/spec/support/v5.1/sorbet/rbi/gems/minitest.rbi +0 -276
- data/spec/support/v5.1/sorbet/rbi/gems/rails-dom-testing.rbi +0 -67
- data/spec/support/v5.1/sorbet/rbi/gems/rake.rbi +0 -255
- data/spec/support/v5.1/sorbet/rbi/gems/thor.rbi +0 -450
- data/spec/support/v5.1/sorbet_test_cases.rb +0 -1
- data/spec/support/v5.1/test/test_helper.rb +0 -11
- data/spec/support/v5.1/typed-override.yaml +0 -1
- data/spec/support/v5.2-no-sorbet/app/channels/application_cable/channel.rb +0 -5
- data/spec/support/v5.2-no-sorbet/app/channels/application_cable/connection.rb +0 -5
- data/spec/support/v5.2-no-sorbet/app/controllers +0 -1
- data/spec/support/v5.2-no-sorbet/app/helpers +0 -1
- data/spec/support/v5.2-no-sorbet/app/models +0 -1
- data/spec/support/v5.2-no-sorbet/bin/spring +0 -17
- data/spec/support/v5.2-no-sorbet/config/cable.yml +0 -10
- data/spec/support/v5.2-no-sorbet/config/credentials.yml.enc +0 -1
- data/spec/support/v5.2-no-sorbet/config/initializers/cors.rb +0 -17
- data/spec/support/v5.2-no-sorbet/config/initializers/sorbet_rails.rb +0 -1
- data/spec/support/v5.2-no-sorbet/config/routes.rb +0 -1
- data/spec/support/v5.2-no-sorbet/config/spring.rb +0 -7
- data/spec/support/v5.2-no-sorbet/db/migrate +0 -1
- data/spec/support/v5.2-no-sorbet/lib/mythical_rbi_plugin.rb +0 -1
- data/spec/support/v5.2-no-sorbet/sorbet_test_cases.rb +0 -1
- data/spec/support/v5.2-no-sorbet/test/test_helper.rb +0 -11
- data/spec/support/v5.2-no-sorbet/typed-override.yaml +0 -1
- data/spec/support/v5.2/app/channels/application_cable/channel.rb +0 -5
- data/spec/support/v5.2/app/channels/application_cable/connection.rb +0 -5
- data/spec/support/v5.2/app/controllers +0 -1
- data/spec/support/v5.2/app/helpers +0 -1
- data/spec/support/v5.2/app/models +0 -1
- data/spec/support/v5.2/bin/spring +0 -17
- data/spec/support/v5.2/config/cable.yml +0 -10
- data/spec/support/v5.2/config/credentials.yml.enc +0 -1
- data/spec/support/v5.2/config/initializers/cors.rb +0 -17
- data/spec/support/v5.2/config/initializers/sorbet_rails.rb +0 -1
- data/spec/support/v5.2/config/routes.rb +0 -1
- data/spec/support/v5.2/config/spring.rb +0 -7
- data/spec/support/v5.2/db/migrate +0 -1
- data/spec/support/v5.2/lib/mythical_rbi_plugin.rb +0 -1
- data/spec/support/v5.2/sorbet/rbi/gems/actioncable.rbi +0 -309
- data/spec/support/v5.2/sorbet/rbi/gems/method_source.rbi +0 -63
- data/spec/support/v5.2/sorbet/rbi/gems/minitest.rbi +0 -276
- data/spec/support/v5.2/sorbet/rbi/gems/rails-dom-testing.rbi +0 -67
- data/spec/support/v5.2/sorbet/rbi/gems/rake.rbi +0 -251
- data/spec/support/v5.2/sorbet/rbi/gems/thor.rbi +0 -449
- data/spec/support/v5.2/sorbet_test_cases.rb +0 -1
- data/spec/support/v5.2/test/integration/.keep +0 -0
- data/spec/support/v5.2/test/mailers/.keep +0 -0
- data/spec/support/v5.2/test/models/.keep +0 -0
- data/spec/support/v5.2/test/test_helper.rb +0 -11
- data/spec/support/v5.2/typed-override.yaml +0 -1
- data/spec/support/v6.0/app/channels/application_cable/channel.rb +0 -5
- data/spec/support/v6.0/app/channels/application_cable/connection.rb +0 -5
- data/spec/support/v6.0/app/controllers +0 -1
- data/spec/support/v6.0/app/helpers +0 -1
- data/spec/support/v6.0/app/models +0 -1
- data/spec/support/v6.0/config/cable.yml +0 -10
- data/spec/support/v6.0/config/credentials.yml.enc +0 -1
- data/spec/support/v6.0/config/initializers/cors.rb +0 -17
- data/spec/support/v6.0/config/initializers/sorbet_rails.rb +0 -1
- data/spec/support/v6.0/db/migrate +0 -1
- data/spec/support/v6.0/lib/mythical_rbi_plugin.rb +0 -1
- data/spec/support/v6.0/sorbet/rbi/gems/actioncable.rbi +0 -245
- data/spec/support/v6.0/sorbet/rbi/gems/method_source.rbi +0 -63
- data/spec/support/v6.0/sorbet/rbi/gems/minitest.rbi +0 -276
- data/spec/support/v6.0/sorbet/rbi/gems/rails-dom-testing.rbi +0 -67
- data/spec/support/v6.0/sorbet/rbi/gems/rake.rbi +0 -254
- data/spec/support/v6.0/sorbet/rbi/gems/thor.rbi +0 -450
- data/spec/support/v6.0/sorbet_test_cases.rb +0 -1
- data/spec/support/v6.0/test/channels/application_cable/connection_test.rb +0 -12
- data/spec/support/v6.0/test/controllers/.keep +0 -0
- data/spec/support/v6.0/test/fixtures/.keep +0 -0
- data/spec/support/v6.0/test/fixtures/files/.keep +0 -0
- data/spec/support/v6.0/test/integration/.keep +0 -0
- data/spec/support/v6.0/test/mailers/.keep +0 -0
- data/spec/support/v6.0/test/models/.keep +0 -0
- data/spec/support/v6.0/test/test_helper.rb +0 -14
- data/spec/support/v6.0/typed-override.yaml +0 -1
@@ -1,4 +1,3 @@
|
|
1
|
-
# typed: strict
|
2
1
|
# This file is auto-generated from the current state of the database. Instead
|
3
2
|
# of editing this file, please use the migrations feature of Active Record to
|
4
3
|
# incrementally modify your database, and then regenerate this schema definition.
|
@@ -11,7 +10,7 @@
|
|
11
10
|
#
|
12
11
|
# It's strongly recommended that you check this file into your version control system.
|
13
12
|
|
14
|
-
ActiveRecord::Schema.define(version:
|
13
|
+
ActiveRecord::Schema.define(version: 2019_06_20_000004) do
|
15
14
|
|
16
15
|
create_table "spell_books", force: :cascade do |t|
|
17
16
|
t.string "name"
|
File without changes
|
@@ -0,0 +1,16 @@
|
|
1
|
+
# typed: true
|
2
|
+
class MythicalRbiPlugin < SorbetRails::ModelPlugins::Base
|
3
|
+
def generate(root)
|
4
|
+
return unless @model_class.include?(Mythical)
|
5
|
+
|
6
|
+
model_class_rbi = root.create_class(self.model_class_name)
|
7
|
+
|
8
|
+
# ActiveSupport::Concern class method will be inserted to the class
|
9
|
+
# directly. We need to also put the sig in the model class rbi directly
|
10
|
+
model_class_rbi.create_method(
|
11
|
+
'mythicals',
|
12
|
+
class_method: true,
|
13
|
+
return_type: "T::Array[#{@model_class.name}]",
|
14
|
+
)
|
15
|
+
end
|
16
|
+
end
|
@@ -0,0 +1,123 @@
|
|
1
|
+
# typed: false
|
2
|
+
require 'sorbet-runtime'
|
3
|
+
|
4
|
+
wizard = Wizard.first!
|
5
|
+
T.assert_type!(wizard, Wizard)
|
6
|
+
|
7
|
+
# -- model columns
|
8
|
+
T.assert_type!(wizard.name, T.nilable(String))
|
9
|
+
|
10
|
+
# -- model associations
|
11
|
+
T.assert_type!(wizard.wand, T.nilable(Wand))
|
12
|
+
T.assert_type!(T.must(wizard.wand).wizard, Wizard)
|
13
|
+
|
14
|
+
T.assert_type!(wizard.spell_books, ActiveRecord::Associations::CollectionProxy)
|
15
|
+
T.reveal_type(wizard.spell_books) # SpellBook::CollectionProxy
|
16
|
+
|
17
|
+
# -- model relation
|
18
|
+
# default
|
19
|
+
T.assert_type!(Wizard.all, ActiveRecord::Relation)
|
20
|
+
T.reveal_type(Wizard.all) # Wizard::ActiveRecord_Relation
|
21
|
+
|
22
|
+
# custom scope
|
23
|
+
T.assert_type!(Wizard.recent, ActiveRecord::Relation)
|
24
|
+
T.reveal_type(Wizard.recent)
|
25
|
+
|
26
|
+
# enum scope
|
27
|
+
T.assert_type!(Wizard.Gryffindor, ActiveRecord::Relation)
|
28
|
+
T.reveal_type(Wizard.Gryffindor)
|
29
|
+
|
30
|
+
# chained scopes
|
31
|
+
T.assert_type!(Wizard.Gryffindor.recent, ActiveRecord::Relation)
|
32
|
+
T.reveal_type(Wizard.Gryffindor.recent)
|
33
|
+
T.assert_type!(Wizard.Gryffindor.recent.unscoped, ActiveRecord::Relation)
|
34
|
+
T.reveal_type(Wizard.Gryffindor.recent.unscoped)
|
35
|
+
|
36
|
+
# ActiveRecord Querying
|
37
|
+
T.assert_type!(Wizard.where(id: 1), ActiveRecord::Relation)
|
38
|
+
T.reveal_type(Wizard.where(id: 1)) # Wizard::Relation
|
39
|
+
T.assert_type!(Wizard.preload(:spell_books), ActiveRecord::Relation)
|
40
|
+
T.reveal_type(Wizard.preload(:spell_books)) # Wizard::Relation
|
41
|
+
T.assert_type!(Wizard.eager_load(:spell_books), ActiveRecord::Relation)
|
42
|
+
T.reveal_type(Wizard.eager_load(:spell_books)) # Wizard::Relation
|
43
|
+
T.assert_type!(Wizard.order(:id), ActiveRecord::Relation)
|
44
|
+
T.reveal_type(Wizard.order(:id)) # Wizard::Relation
|
45
|
+
|
46
|
+
# Finder methods -- Model
|
47
|
+
T.assert_type!(Wizard.exists?(name: 'Test'), T::Boolean)
|
48
|
+
T.assert_type!(Wizard.find(wizard.id), Wizard)
|
49
|
+
T.assert_type!(Wizard.first!, Wizard)
|
50
|
+
T.assert_type!(Wizard.first, T.nilable(Wizard))
|
51
|
+
T.assert_type!(Wizard.last!, Wizard)
|
52
|
+
T.assert_type!(Wizard.last, T.nilable(Wizard))
|
53
|
+
T.assert_type!(Wizard.first_n(5), T::Array[Wizard])
|
54
|
+
T.assert_type!(Wizard.last_n(5), T::Array[Wizard])
|
55
|
+
T.assert_type!(Wizard.find_by(name: 'Harry Potter'), T.nilable(Wizard))
|
56
|
+
T.assert_type!(Wizard.find_by!(name: 'Harry Potter'), Wizard)
|
57
|
+
T.assert_type!(Wizard.find_by_id(wizard.id), T.nilable(Wizard))
|
58
|
+
T.assert_type!(Wizard.find_by_id!(wizard.id), Wizard)
|
59
|
+
|
60
|
+
# Finder methods -- ActiveRecord::Relation
|
61
|
+
T.assert_type!(Wizard.all.exists?(name: 'Harry Potter'), T::Boolean)
|
62
|
+
T.assert_type!(Wizard.all.find(wizard.id), Wizard)
|
63
|
+
T.assert_type!(Wizard.all.first!, Wizard)
|
64
|
+
T.assert_type!(Wizard.all.first, T.nilable(Wizard))
|
65
|
+
T.assert_type!(Wizard.all.last!, Wizard)
|
66
|
+
T.assert_type!(Wizard.all.last, T.nilable(Wizard))
|
67
|
+
T.assert_type!(Wizard.all.first_n(5), T::Array[Wizard])
|
68
|
+
T.assert_type!(Wizard.all.last_n(5), T::Array[Wizard])
|
69
|
+
T.assert_type!(Wizard.all.find_by(name: 'Harry Potter'), T.nilable(Wizard))
|
70
|
+
T.assert_type!(Wizard.all.find_by!(name: 'Harry Potter'), Wizard)
|
71
|
+
T.assert_type!(Wizard.all.find_by_id(wizard.id), T.nilable(Wizard))
|
72
|
+
T.assert_type!(Wizard.all.find_by_id!(wizard.id), Wizard)
|
73
|
+
|
74
|
+
# Finder methods -- CollectionProxy
|
75
|
+
spell_book = wizard.spell_books.first!
|
76
|
+
T.assert_type!(wizard.spell_books.exists?(name: 'Fantastic Beasts'), T::Boolean)
|
77
|
+
T.assert_type!(wizard.spell_books.find(spell_book.id), SpellBook)
|
78
|
+
T.assert_type!(wizard.spell_books.first!, SpellBook)
|
79
|
+
# T.assert_type!(wizard.spell_books.first, T.nilable(SpellBook)) # TODO fix sig for 4.2 and 5.0
|
80
|
+
T.assert_type!(wizard.spell_books.last!, SpellBook)
|
81
|
+
# T.assert_type!(wizard.spell_books.last, T.nilable(SpellBook)) # TODO fix sig for 4.2 and 5.0
|
82
|
+
T.assert_type!(wizard.spell_books.first_n(5), T::Array[SpellBook])
|
83
|
+
T.assert_type!(wizard.spell_books.last_n(5), T::Array[SpellBook])
|
84
|
+
T.assert_type!(wizard.spell_books.find_by(name: 'Fantastic Beasts'), T.nilable(SpellBook))
|
85
|
+
T.assert_type!(wizard.spell_books.find_by!(name: 'Fantastic Beasts'), SpellBook)
|
86
|
+
T.assert_type!(wizard.spell_books.find_by_id(spell_book.id), T.nilable(SpellBook))
|
87
|
+
T.assert_type!(wizard.spell_books.find_by_id!(spell_book.id), SpellBook)
|
88
|
+
|
89
|
+
# Enumerable
|
90
|
+
T.assert_type!(Wizard.all.to_a, T::Array[Wizard])
|
91
|
+
Wizard.all.each do |w|
|
92
|
+
T.assert_type!(w, Wizard)
|
93
|
+
end
|
94
|
+
Wizard.all.map do |w|
|
95
|
+
T.assert_type!(w, Wizard) # TODO this doesn't work on Rails 4.2 or 5.0
|
96
|
+
end
|
97
|
+
Wizard.all.to_a.map do |w|
|
98
|
+
T.assert_type!(w, Wizard)
|
99
|
+
end
|
100
|
+
|
101
|
+
T.assert_type!(wizard.spell_books.to_a, T::Array[SpellBook])
|
102
|
+
wizard.spell_books.each do |sp|
|
103
|
+
T.assert_type!(sp, SpellBook)
|
104
|
+
end
|
105
|
+
wizard.spell_books.map do |sp|
|
106
|
+
T.assert_type!(sp, SpellBook) # TODO this doesn't work on Rails 4.2 or 5.0
|
107
|
+
end
|
108
|
+
wizard.spell_books.to_a.map do |sp|
|
109
|
+
T.assert_type!(sp, SpellBook) # This works on Rails 4.2
|
110
|
+
end
|
111
|
+
|
112
|
+
# Model columns
|
113
|
+
T.assert_type!(wizard.id, Integer)
|
114
|
+
T.assert_type!(wizard.id?, T::Boolean)
|
115
|
+
T.assert_type!(wizard.notes, T.nilable(String))
|
116
|
+
T.assert_type!(wizard.house, T.nilable(String))
|
117
|
+
|
118
|
+
# Model enum
|
119
|
+
T.assert_type!(wizard.Gryffindor?, T::Boolean)
|
120
|
+
T.assert_type!(Wizard.houses, T::Hash[T.any(String, Symbol), Integer])
|
121
|
+
|
122
|
+
# Mythical plugin
|
123
|
+
T.assert_type!(Wand.mythicals, T::Array[Wand])
|
@@ -0,0 +1,31 @@
|
|
1
|
+
# See https://help.github.com/articles/ignoring-files for more about ignoring files.
|
2
|
+
#
|
3
|
+
# If you find yourself ignoring temporary files generated by your text editor
|
4
|
+
# or operating system, you probably want to add a global ignore instead:
|
5
|
+
# git config --global core.excludesfile '~/.gitignore_global'
|
6
|
+
|
7
|
+
# Ignore bundler config.
|
8
|
+
/.bundle
|
9
|
+
|
10
|
+
# Ignore the default SQLite database.
|
11
|
+
/db/*.sqlite3
|
12
|
+
/db/*.sqlite3-journal
|
13
|
+
|
14
|
+
# Ignore all logfiles and tempfiles.
|
15
|
+
/log/*
|
16
|
+
/tmp/*
|
17
|
+
!/log/.keep
|
18
|
+
!/tmp/.keep
|
19
|
+
|
20
|
+
# Ignore uploaded files in development
|
21
|
+
/storage/*
|
22
|
+
!/storage/.keep
|
23
|
+
|
24
|
+
/node_modules
|
25
|
+
/yarn-error.log
|
26
|
+
|
27
|
+
/public/assets
|
28
|
+
.byebug_history
|
29
|
+
|
30
|
+
# Ignore master key for decrypting credentials and more.
|
31
|
+
/config/master.key
|
data/spec/support/v5.2/Gemfile
CHANGED
@@ -1,16 +1,16 @@
|
|
1
1
|
source 'https://rubygems.org'
|
2
2
|
git_source(:github) { |repo| "https://github.com/#{repo}.git" }
|
3
3
|
|
4
|
-
|
4
|
+
ruby '2.6.3'
|
5
5
|
|
6
|
+
# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
|
7
|
+
gem 'rails', '~> 5.2.3'
|
6
8
|
# Use sqlite3 as the database for Active Record
|
7
|
-
gem 'sqlite3'
|
9
|
+
gem 'sqlite3'
|
8
10
|
# Use Puma as the app server
|
9
11
|
gem 'puma', '~> 3.11'
|
10
12
|
# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder
|
11
|
-
|
12
|
-
# Use Redis adapter to run Action Cable in production
|
13
|
-
# gem 'redis', '~> 4.0'
|
13
|
+
gem 'jbuilder', '~> 2.5'
|
14
14
|
# Use ActiveModel has_secure_password
|
15
15
|
# gem 'bcrypt', '~> 3.1.7'
|
16
16
|
|
@@ -20,36 +20,20 @@ gem 'puma', '~> 3.11'
|
|
20
20
|
# Use Capistrano for deployment
|
21
21
|
# gem 'capistrano-rails', group: :development
|
22
22
|
|
23
|
-
# Reduces boot times through caching; required in config/boot.rb
|
24
|
-
# gem 'bootsnap', '>= 1.1.0', require: false
|
25
|
-
|
26
|
-
# Use Rack CORS for handling Cross-Origin Resource Sharing (CORS), making cross-origin AJAX possible
|
27
|
-
# gem 'rack-cors'
|
28
|
-
|
29
23
|
group :development, :test do
|
30
24
|
# Call 'byebug' anywhere in the code to stop execution and get a debugger console
|
31
25
|
gem 'byebug', platforms: [:mri, :mingw, :x64_mingw]
|
32
26
|
end
|
33
27
|
|
34
28
|
group :development do
|
35
|
-
#
|
36
|
-
|
37
|
-
# gem 'spring'
|
38
|
-
# gem 'spring-watcher-listen', '~> 2.0.0'
|
29
|
+
# Access an interactive console on exception pages or by calling 'console' anywhere in the code.
|
30
|
+
gem 'web-console', '>= 3.3.0'
|
39
31
|
end
|
40
32
|
|
41
|
-
gem 'sorbet-rails', path: '../../../.'
|
42
33
|
|
43
34
|
# Windows does not include zoneinfo files, so bundle the tzinfo-data gem
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
gem 'sorbet', sorbet_version
|
50
|
-
gem 'sorbet-runtime', sorbet_version
|
51
|
-
else
|
52
|
-
# prefer to test against latest version because sorbet is updated frequently
|
53
|
-
gem 'sorbet'
|
54
|
-
gem 'sorbet-runtime'
|
55
|
-
end
|
35
|
+
gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby]
|
36
|
+
|
37
|
+
gem 'sorbet-rails', path: '../../../.'
|
38
|
+
gem 'sorbet'
|
39
|
+
gem 'sorbet-runtime'
|
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: ../../..
|
3
3
|
specs:
|
4
|
-
sorbet-rails (0.
|
4
|
+
sorbet-rails (0.5.0)
|
5
5
|
parlour (~> 0.6.0)
|
6
6
|
|
7
7
|
GEM
|
@@ -49,6 +49,7 @@ GEM
|
|
49
49
|
minitest (~> 5.1)
|
50
50
|
tzinfo (~> 1.1)
|
51
51
|
arel (9.0.0)
|
52
|
+
bindex (0.8.1)
|
52
53
|
builder (3.2.3)
|
53
54
|
byebug (11.0.1)
|
54
55
|
concurrent-ruby (1.1.5)
|
@@ -58,6 +59,8 @@ GEM
|
|
58
59
|
activesupport (>= 4.2.0)
|
59
60
|
i18n (1.6.0)
|
60
61
|
concurrent-ruby (~> 1.0)
|
62
|
+
jbuilder (2.9.1)
|
63
|
+
activesupport (>= 4.2.0)
|
61
64
|
loofah (2.2.3)
|
62
65
|
crass (~> 1.0.2)
|
63
66
|
nokogiri (>= 1.5.9)
|
@@ -67,10 +70,10 @@ GEM
|
|
67
70
|
mimemagic (~> 0.3.2)
|
68
71
|
method_source (0.9.2)
|
69
72
|
mimemagic (0.3.3)
|
70
|
-
mini_mime (1.0.
|
73
|
+
mini_mime (1.0.2)
|
71
74
|
mini_portile2 (2.4.0)
|
72
75
|
minitest (5.11.3)
|
73
|
-
nio4r (2.
|
76
|
+
nio4r (2.4.0)
|
74
77
|
nokogiri (1.10.3)
|
75
78
|
mini_portile2 (~> 2.4.0)
|
76
79
|
parlour (0.6.1)
|
@@ -96,7 +99,7 @@ GEM
|
|
96
99
|
rails-dom-testing (2.0.3)
|
97
100
|
activesupport (>= 4.2.0)
|
98
101
|
nokogiri (>= 1.6)
|
99
|
-
rails-html-sanitizer (1.0
|
102
|
+
rails-html-sanitizer (1.2.0)
|
100
103
|
loofah (~> 2.2, >= 2.2.2)
|
101
104
|
railties (5.2.3)
|
102
105
|
actionpack (= 5.2.3)
|
@@ -105,11 +108,11 @@ GEM
|
|
105
108
|
rake (>= 0.8.7)
|
106
109
|
thor (>= 0.19.0, < 2.0)
|
107
110
|
rainbow (3.0.0)
|
108
|
-
rake (12.3.
|
109
|
-
sorbet (0.4.
|
110
|
-
sorbet-static (= 0.4.
|
111
|
-
sorbet-runtime (0.4.
|
112
|
-
sorbet-static (0.4.
|
111
|
+
rake (12.3.3)
|
112
|
+
sorbet (0.4.4602)
|
113
|
+
sorbet-static (= 0.4.4602)
|
114
|
+
sorbet-runtime (0.4.4602)
|
115
|
+
sorbet-static (0.4.4602-universal-darwin-14)
|
113
116
|
sprockets (3.7.2)
|
114
117
|
concurrent-ruby (~> 1.0)
|
115
118
|
rack (> 1, < 3)
|
@@ -122,6 +125,11 @@ GEM
|
|
122
125
|
thread_safe (0.3.6)
|
123
126
|
tzinfo (1.2.5)
|
124
127
|
thread_safe (~> 0.1)
|
128
|
+
web-console (3.7.0)
|
129
|
+
actionview (>= 5.0)
|
130
|
+
activemodel (>= 5.0)
|
131
|
+
bindex (>= 0.4.0)
|
132
|
+
railties (>= 5.0)
|
125
133
|
websocket-driver (0.7.1)
|
126
134
|
websocket-extensions (>= 0.1.0)
|
127
135
|
websocket-extensions (0.1.4)
|
@@ -131,12 +139,18 @@ PLATFORMS
|
|
131
139
|
|
132
140
|
DEPENDENCIES
|
133
141
|
byebug
|
142
|
+
jbuilder (~> 2.5)
|
134
143
|
puma (~> 3.11)
|
135
144
|
rails (~> 5.2.3)
|
136
145
|
sorbet
|
137
146
|
sorbet-rails!
|
138
147
|
sorbet-runtime
|
139
|
-
sqlite3
|
148
|
+
sqlite3
|
149
|
+
tzinfo-data
|
150
|
+
web-console (>= 3.3.0)
|
151
|
+
|
152
|
+
RUBY VERSION
|
153
|
+
ruby 2.6.3p62
|
140
154
|
|
141
155
|
BUNDLED WITH
|
142
156
|
2.0.2
|
File without changes
|
@@ -0,0 +1,15 @@
|
|
1
|
+
/*
|
2
|
+
* This is a manifest file that'll be compiled into application.css, which will include all the files
|
3
|
+
* listed below.
|
4
|
+
*
|
5
|
+
* Any CSS and SCSS file within this directory, lib/assets/stylesheets, or any plugin's
|
6
|
+
* vendor/assets/stylesheets directory can be referenced here using a relative path.
|
7
|
+
*
|
8
|
+
* You're free to add application-wide styles to this file and they'll appear at the bottom of the
|
9
|
+
* compiled file so the styles you add here take precedence over styles defined in any other CSS/SCSS
|
10
|
+
* files in this directory. Styles in this file should be added after the last require_* statement.
|
11
|
+
* It is generally better to create a new file per style scope.
|
12
|
+
*
|
13
|
+
*= require_tree .
|
14
|
+
*= require_self
|
15
|
+
*/
|
File without changes
|
File without changes
|