diff --git a/.github/workflows/e-navigator.yml b/.github/workflows/ruby-on-rails--e-navigator.yml similarity index 77% rename from .github/workflows/e-navigator.yml rename to .github/workflows/ruby-on-rails--e-navigator.yml index f1245b38..07f97c10 100644 --- a/.github/workflows/e-navigator.yml +++ b/.github/workflows/ruby-on-rails--e-navigator.yml @@ -5,7 +5,7 @@ # This workflow will download a prebuilt Ruby version, install dependencies and run tests with Rake # For more information see: https://github.com/marketplace/actions/setup-ruby-jruby-and-truffleruby -name: e-Navigator +name: Ruby on Rails - e-Navigator on: push: @@ -21,9 +21,9 @@ on: - ruby-on-rails/e-navigator/Rakefile - ruby-on-rails/e-navigator/.rubocop.yml - ruby-on-rails/e-navigator/.rubocop_todo.yml - # - ruby-on-rails/e-navigator/Steepfile + - ruby-on-rails/e-navigator/Steepfile - ruby-on-rails/e-navigator/**/*.rb - # - ruby-on-rails/e-navigator/**/*.rbs + - ruby-on-rails/e-navigator/**/*.rbs - ruby-on-rails/e-navigator/**/*.rake - ruby-on-rails/e-navigator/**/*.yml - ruby-on-rails/e-navigator/**/*.js @@ -41,9 +41,9 @@ on: - ruby-on-rails/e-navigator/Rakefile - ruby-on-rails/e-navigator/.rubocop.yml - ruby-on-rails/e-navigator/.rubocop_todo.yml - # - ruby-on-rails/e-navigator/Steepfile + - ruby-on-rails/e-navigator/Steepfile - ruby-on-rails/e-navigator/**/*.rb - # - ruby-on-rails/e-navigator/**/*.rbs + - ruby-on-rails/e-navigator/**/*.rbs - ruby-on-rails/e-navigator/**/*.rake - ruby-on-rails/e-navigator/**/*.yml - ruby-on-rails/e-navigator/**/*.js @@ -61,7 +61,7 @@ jobs: outputs: ruby-changes: ${{ steps.change-detection.outputs.ruby }} rubocop-changes: ${{ steps.change-detection.outputs.rubocop}} - # steep-changes: ${{ steps.change-detection.outputs.steep}} + steep-changes: ${{ steps.change-detection.outputs.steep}} steps: - uses: actions/checkout@v6 - name: Change Detection @@ -96,18 +96,18 @@ jobs: - ruby-on-rails/e-navigator/.rubocop_todo.yml - ruby-on-rails/e-navigator/**/*.rb - ruby-on-rails/e-navigator/**/*.rake - # steep: - # - .github/actions/setup-ruby-on-rails/action.yml - # - .github/workflows/e-navigator.yml - # - .ruby-version - # - ruby-on-rails/e-navigator/.ruby-version - # - ruby-on-rails/e-navigator/Gemfile - # - ruby-on-rails/e-navigator/Gemfile.lock - # - ruby-on-rails/e-navigator/Rakefile - # - ruby-on-rails/e-navigator/Steepfile - # - ruby-on-rails/e-navigator/**/*.rb - # - ruby-on-rails/e-navigator/**/*.rbs - # - ruby-on-rails/e-navigator/**/*.rake + steep: + - .github/actions/setup-ruby-on-rails/action.yml + - .github/workflows/e-navigator.yml + - .ruby-version + - ruby-on-rails/e-navigator/.ruby-version + - ruby-on-rails/e-navigator/Gemfile + - ruby-on-rails/e-navigator/Gemfile.lock + - ruby-on-rails/e-navigator/Rakefile + - ruby-on-rails/e-navigator/Steepfile + - ruby-on-rails/e-navigator/**/*.rb + - ruby-on-rails/e-navigator/**/*.rbs + - ruby-on-rails/e-navigator/**/*.rake minitest: timeout-minutes: 10 runs-on: ubuntu-latest @@ -150,19 +150,19 @@ jobs: - name: RuboCop working-directory: ./ruby-on-rails/e-navigator run: bundle exec rubocop - # steep: - # timeout-minutes: 10 - # runs-on: ubuntu-latest - # needs: change-detection - # if: needs.change-detection.outputs.steep-changes == 'true' - # steps: - # - uses: actions/checkout@v6 - # - uses: ./.github/actions/setup-ruby-on-rails - # with: - # working-directory: ./ruby-on-rails/e-navigator - # job-name: steep - # - name: Steep - # working-directory: ./ruby-on-rails/e-navigator - # run: | - # bundle exec rbs-inline --output sig/generated/ . - # bundle exec steep check + steep: + timeout-minutes: 10 + runs-on: ubuntu-latest + needs: change-detection + if: needs.change-detection.outputs.steep-changes == 'true' + steps: + - uses: actions/checkout@v6 + - uses: ./.github/actions/setup-ruby-on-rails + with: + working-directory: ./ruby-on-rails/e-navigator + job-name: steep + - name: Steep + working-directory: ./ruby-on-rails/e-navigator + run: | + bundle exec rbs-inline --output sig/generated/ . + bundle exec steep check diff --git a/.gitignore b/.gitignore index 4d1d766c..e40eb293 100644 --- a/.gitignore +++ b/.gitignore @@ -1,31 +1,4 @@ # Ruby on Rails -## Perfect Ruby on Rails -ruby-on-rails/perfect-ruby-on-rails/.bundle -ruby-on-rails/perfect-ruby-on-rails/.pnpm-store -ruby-on-rails/perfect-ruby-on-rails/log/* -ruby-on-rails/perfect-ruby-on-rails/tmp/* -!ruby-on-rails/perfect-ruby-on-rails/log/.keep -!ruby-on-rails/perfect-ruby-on-rails/tmp/.keep -ruby-on-rails/perfect-ruby-on-rails/tmp/pids/* -!ruby-on-rails/perfect-ruby-on-rails/tmp/pids/ -!ruby-on-rails/perfect-ruby-on-rails/tmp/pids/.keep -ruby-on-rails/perfect-ruby-on-rails/storage/* -!ruby-on-rails/perfect-ruby-on-rails/storage/.keep -ruby-on-rails/perfect-ruby-on-rails/public/assets/ -ruby-on-rails/perfect-ruby-on-rails/public/packs/ -ruby-on-rails/perfect-ruby-on-rails/.byebug_history -ruby-on-rails/perfect-ruby-on-rails/config/master.key -ruby-on-rails/perfect-ruby-on-rails/app/assets/builds/* -!ruby-on-rails/perfect-ruby-on-rails/app/assets/builds/.keep -ruby-on-rails/perfect-ruby-on-rails/node_modules/ -ruby-on-rails/perfect-ruby-on-rails/.env - -## RESTful API -ruby-on-rails/restful-api/config/master.key -ruby-on-rails/restful-api/tmp/* -ruby-on-rails/restful-api/log/* -ruby-on-rails/restful-api/.bundle -ruby-on-rails/restful-api/.env ## e-Navigator ruby-on-rails/e-navigator/*.DS_Store @@ -103,6 +76,36 @@ ruby-on-rails/e-navigator/doc/ ruby-on-rails/e-navigator/rdoc/ ruby-on-rails/e-navigator/.bundle/ ruby-on-rails/e-navigator/lib/bundler/man/ +ruby-on-rails/e-navigator/sig/ +ruby-on-rails/e-navigator/vendor/ + +## Perfect Ruby on Rails +ruby-on-rails/perfect-ruby-on-rails/.bundle +ruby-on-rails/perfect-ruby-on-rails/.pnpm-store +ruby-on-rails/perfect-ruby-on-rails/log/* +ruby-on-rails/perfect-ruby-on-rails/tmp/* +!ruby-on-rails/perfect-ruby-on-rails/log/.keep +!ruby-on-rails/perfect-ruby-on-rails/tmp/.keep +ruby-on-rails/perfect-ruby-on-rails/tmp/pids/* +!ruby-on-rails/perfect-ruby-on-rails/tmp/pids/ +!ruby-on-rails/perfect-ruby-on-rails/tmp/pids/.keep +ruby-on-rails/perfect-ruby-on-rails/storage/* +!ruby-on-rails/perfect-ruby-on-rails/storage/.keep +ruby-on-rails/perfect-ruby-on-rails/public/assets/ +ruby-on-rails/perfect-ruby-on-rails/public/packs/ +ruby-on-rails/perfect-ruby-on-rails/.byebug_history +ruby-on-rails/perfect-ruby-on-rails/config/master.key +ruby-on-rails/perfect-ruby-on-rails/app/assets/builds/* +!ruby-on-rails/perfect-ruby-on-rails/app/assets/builds/.keep +ruby-on-rails/perfect-ruby-on-rails/node_modules/ +ruby-on-rails/perfect-ruby-on-rails/.env + +## RESTful API +ruby-on-rails/restful-api/config/master.key +ruby-on-rails/restful-api/tmp/* +ruby-on-rails/restful-api/log/* +ruby-on-rails/restful-api/.bundle +ruby-on-rails/restful-api/.env # Python python/**/__pycache__/ diff --git a/README.md b/README.md index 5d4a7b78..7405c155 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,8 @@ [![Actions Status: JavaScript](https://github.com/hayat01sh1da/tutorials/workflows/JavaScript/badge.svg)](https://github.com/hayat01sh1da/tutorials/actions?query=workflow%3A%22JavaScript%22) [![Actions Status: Python](https://github.com/hayat01sh1da/tutorials/workflows/Python/badge.svg)](https://github.com/hayat01sh1da/tutorials/actions?query=workflow%3A%22Python%22) -[![Actions Status: e-Navigator](https://github.com/hayat01sh1da/tutorials/workflows/e-Navigator/badge.svg)](https://github.com/hayat01sh1da/tutorials/actions?query=workflow%3A%22e-Navigator%22) -[![Actions Status: Perfect Ruby on Rails](https://github.com/hayat01sh1da/tutorials/workflows/Perfect%20Ruby%20on%20Rails/badge.svg)](https://github.com/hayat01sh1da/tutorials/actions?query=workflow%3A%22Perfect%20Ruby%20on%20Rails%22) -[![Actions Status: RESTful API](https://github.com/hayat01sh1da/tutorials/workflows/RESTful%20API/badge.svg)](https://github.com/hayat01sh1da/tutorials/actions?query=workflow%3A%22RESTful%20API%22) +[![Actions Status: Ruby on Rails - e-Navigator](https://github.com/hayat01sh1da/tutorials/workflows/Ruby%20on%20Rails%20-%20e-Navigator/badge.svg)](https://github.com/hayat01sh1da/tutorials/actions?query=workflow%3A%22Ruby%20on%20Rails%20-%20e-Navigator%22) +[![Actions Status: Ruby on Rails - Perfect Ruby on Rails](https://github.com/hayat01sh1da/tutorials/workflows/Ruby%20on%20Rails%20-%20Perfect%20Ruby%20on%20Rails/badge.svg)](https://github.com/hayat01sh1da/tutorials/actions?query=workflow%3A%22Ruby%20on%20Rails%20-%20Perfect%20Ruby%20on%20Rails%22) +[![Actions Status: Ruby on Rails - RESTful API](https://github.com/hayat01sh1da/tutorials/workflows/Ruby%20on%20Rails%20-%20RESTful%20API/badge.svg)](https://github.com/hayat01sh1da/tutorials/actions?query=workflow%3A%22Ruby%20on%20Rails%20-%20RESTful%20API%22) [![Actions Status: TypeScript](https://github.com/hayat01sh1da/tutorials/workflows/TypeScript/badge.svg)](https://github.com/hayat01sh1da/tutorials/actions?query=workflow%3A%22TypeScript%22) [![Actions Status: CodeQL](https://github.com/hayat01sh1da/tutorials/workflows/CodeQL/badge.svg)](https://github.com/hayat01sh1da/tutorials/actions?query=workflow%3A%22CodeQL%22) diff --git a/ruby-on-rails/e-navigator/Gemfile b/ruby-on-rails/e-navigator/Gemfile index bb6039b1..ebbb1a11 100644 --- a/ruby-on-rails/e-navigator/Gemfile +++ b/ruby-on-rails/e-navigator/Gemfile @@ -29,6 +29,11 @@ gem 'dotenv-rails', '~> 3.2.0' gem 'bootsnap', '~> 1.24.1', require: false group :development, :test do + # Debug tool used with binding.irb. Explicit require avoids eager loading `debug/prelude` + # which interferes with the Docker boot process. + # [Ref] https://ruby.github.io/irb/#label-Debugging+with+IRB + # [Ref] https://github.com/ruby/debug#debug-command-on-the-debug-console + # [Ref] https://guides.rubyonrails.org/debugging_rails_applications.html#debugging-with-the-debug-gem gem 'debug', platforms: %i[ mri windows ], require: false end @@ -42,7 +47,9 @@ group :development do gem 'rubocop-minitest', '~> 0.39.0', require: false gem 'rubocop-performance', '~> 1.26.0', require: false gem 'rubocop-rails', '~> 2.34.3', require: false - + # Typechecking + gem 'rbs-inline', '~> 0.13.0', require: false + gem 'steep', '~> 1.10.0', require: false # Provides methods for benchmarking Ruby code, giving detailed reports on the time taken for each task gem 'benchmark', '~> 0.5.0' end diff --git a/ruby-on-rails/e-navigator/Gemfile.lock b/ruby-on-rails/e-navigator/Gemfile.lock index 1858d54f..a5811aa7 100644 --- a/ruby-on-rails/e-navigator/Gemfile.lock +++ b/ruby-on-rails/e-navigator/Gemfile.lock @@ -100,6 +100,7 @@ GEM concurrent-ruby (1.3.6) connection_pool (3.0.2) crass (1.0.6) + csv (3.3.5) date (3.5.1) debug (1.11.1) irb (~> 1.10) @@ -124,6 +125,8 @@ GEM factory_bot_rails (6.5.1) factory_bot (~> 6.5) railties (>= 6.1.0) + ffi (1.17.4-x86_64-linux-gnu) + fileutils (1.8.0) globalid (1.3.0) activesupport (>= 6.1) i18n (1.14.8) @@ -144,6 +147,10 @@ GEM json (2.19.5) language_server-protocol (3.17.0.5) lint_roller (1.1.0) + listen (3.10.0) + logger + rb-fsevent (~> 0.10, >= 0.10.3) + rb-inotify (~> 0.9, >= 0.9.10) logger (1.7.0) loofah (2.25.1) crass (~> 1.0.2) @@ -161,6 +168,7 @@ GEM drb (~> 2.0) prism (~> 1.5) msgpack (1.8.0) + mutex_m (0.3.0) mysql2 (0.5.7) bigdecimal net-imap (0.6.4) @@ -239,6 +247,15 @@ GEM zeitwerk (~> 2.6) rainbow (3.1.1) rake (13.4.2) + rb-fsevent (0.11.2) + rb-inotify (0.11.1) + ffi (~> 1.0) + rbs (3.10.4) + logger + tsort + rbs-inline (0.13.0) + prism (>= 0.29) + rbs (>= 3.8.0) rdoc (7.2.0) erb psych (>= 4.0.0) @@ -287,7 +304,27 @@ GEM rexml (~> 3.2, >= 3.2.5) rubyzip (>= 1.2.2, < 4.0) websocket (~> 1.0) + steep (1.10.0) + activesupport (>= 5.1) + concurrent-ruby (>= 1.1.10) + csv (>= 3.0.9) + fileutils (>= 1.1.0) + json (>= 2.1.0) + language_server-protocol (>= 3.17.0.4, < 4.0) + listen (~> 3.0) + logger (>= 1.3.0) + mutex_m (>= 0.3.0) + parser (>= 3.1) + rainbow (>= 2.2.2, < 4.0) + rbs (~> 3.9) + securerandom (>= 0.1) + strscan (>= 1.0.0) + terminal-table (>= 2, < 5) + uri (>= 0.12.0) stringio (3.2.0) + strscan (3.1.8) + terminal-table (4.0.0) + unicode-display_width (>= 1.1.1, < 4) thor (1.5.0) timeout (0.6.1) tsort (0.2.0) @@ -338,11 +375,13 @@ DEPENDENCIES puma (~> 8.0.1) rails (~> 8.1.3) rails-controller-testing (~> 1.0.5) + rbs-inline (~> 0.13.0) rubocop (~> 1.86.1) rubocop-minitest (~> 0.39.0) rubocop-performance (~> 1.26.0) rubocop-rails (~> 2.34.3) selenium-webdriver (~> 4.43.0) + steep (~> 1.10.0) turbo-rails (~> 2.0.16) tzinfo-data web-console (~> 4.3.0) @@ -374,6 +413,7 @@ CHECKSUMS concurrent-ruby (1.3.6) sha256=6b56837e1e7e5292f9864f34b69c5a2cbc75c0cf5338f1ce9903d10fa762d5ab connection_pool (3.0.2) sha256=33fff5ba71a12d2aa26cb72b1db8bba2a1a01823559fb01d29eb74c286e62e0a crass (1.0.6) sha256=dc516022a56e7b3b156099abc81b6d2b08ea1ed12676ac7a5657617f012bd45d + csv (3.3.5) sha256=6e5134ac3383ef728b7f02725d9872934f523cb40b961479f69cf3afa6c8e73f date (3.5.1) sha256=750d06384d7b9c15d562c76291407d89e368dda4d4fff957eb94962d325a0dc0 debug (1.11.1) sha256=2e0b0ac6119f2207a6f8ac7d4a73ca8eb4e440f64da0a3136c30343146e952b6 devise (5.0.4) sha256=d605f2b85854e74e56ee789e2d398702bc2d06e6bcd894717a670a3199c74cc1 @@ -385,6 +425,8 @@ CHECKSUMS erubi (1.13.1) sha256=a082103b0885dbc5ecf1172fede897f9ebdb745a4b97a5e8dc63953db1ee4ad9 factory_bot (6.5.6) sha256=12beb373214dccc086a7a63763d6718c49769d5606f0501e0a4442676917e077 factory_bot_rails (6.5.1) sha256=d3cc4851eae4dea8a665ec4a4516895045e710554d2b5ac9e68b94d351bc6d68 + ffi (1.17.4-x86_64-linux-gnu) sha256=9d3db14c2eae074b382fa9c083fe95aec6e0a1451da249eab096c34002bc752d + fileutils (1.8.0) sha256=8c6b1df54e2540bdb2f39258f08af78853aa70bad52b4d394bbc6424593c6e02 globalid (1.3.0) sha256=05c639ad6eb4594522a0b07983022f04aa7254626ab69445a0e493aa3786ff11 i18n (1.14.8) sha256=285778639134865c5e0f6269e0b818256017e8cde89993fdfcbfb64d088824a5 importmap-rails (2.2.3) sha256=7101be2a4dc97cf1558fb8f573a718404c5f6bcfe94f304bf1f39e444feeb16a @@ -394,6 +436,7 @@ CHECKSUMS json (2.19.5) sha256=218a18553e4801d579ca7e0f5bc72bafd776d7397238a1fb4e74db5b0a812c59 language_server-protocol (3.17.0.5) sha256=fd1e39a51a28bf3eec959379985a72e296e9f9acfce46f6a79d31ca8760803cc lint_roller (1.1.0) sha256=2c0c845b632a7d172cb849cc90c1bce937a28c5c8ccccb50dfd46a485003cc87 + listen (3.10.0) sha256=c6e182db62143aeccc2e1960033bebe7445309c7272061979bb098d03760c9d2 logger (1.7.0) sha256=196edec7cc44b66cfb40f9755ce11b392f21f7967696af15d274dde7edff0203 loofah (2.25.1) sha256=d436c73dbd0c1147b16c4a41db097942d217303e1f7728704b37e4df9f6d2e04 mail (2.9.0) sha256=6fa6673ecd71c60c2d996260f9ee3dd387d4673b8169b502134659ece6d34941 @@ -402,6 +445,7 @@ CHECKSUMS mini_mime (1.1.5) sha256=8681b7e2e4215f2a159f9400b5816d85e9d8c6c6b491e96a12797e798f8bccef minitest (6.0.6) sha256=153ea36d1d987a62942382b61075745042a2b3123b1cd48f4c3675af9cc7d6f1 msgpack (1.8.0) sha256=e64ce0212000d016809f5048b48eb3a65ffb169db22238fb4b72472fecb2d732 + mutex_m (0.3.0) sha256=cfcb04ac16b69c4813777022fdceda24e9f798e48092a2b817eb4c0a782b0751 mysql2 (0.5.7) sha256=ba09ede515a0ae8a7192040a1b778c0fb0f025fa5877e9be895cd325fa5e9d7b net-imap (0.6.4) sha256=9a5598c67a3022c284d98430ef1d4948e7dbdb62596f61081ea8ca933270a02b net-pop (0.1.2) sha256=848b4e982013c15b2f0382792268763b748cce91c9e91e36b0f27ed26420dff3 @@ -431,6 +475,10 @@ CHECKSUMS railties (8.1.3) sha256=913eb0e0cb520aac687ffd74916bd726d48fa21f47833c6292576ef6a286de22 rainbow (3.1.1) sha256=039491aa3a89f42efa1d6dec2fc4e62ede96eb6acd95e52f1ad581182b79bc6a rake (13.4.2) sha256=cb825b2bd5f1f8e91ca37bddb4b9aaf345551b4731da62949be002fa89283701 + rb-fsevent (0.11.2) sha256=43900b972e7301d6570f64b850a5aa67833ee7d87b458ee92805d56b7318aefe + rb-inotify (0.11.1) sha256=a0a700441239b0ff18eb65e3866236cd78613d6b9f78fea1f9ac47a85e47be6e + rbs (3.10.4) sha256=b17d7c4be4bb31a11a3b529830f0aa206a807ca42f2e7921a3027dfc6b7e5ce8 + rbs-inline (0.13.0) sha256=aba6e48c2d1b75276e8557376164f4b4ba96dd0204e779a5cee2af442bd30442 rdoc (7.2.0) sha256=8650f76cd4009c3b54955eb5d7e3a075c60a57276766ebf36f9085e8c9f23192 regexp_parser (2.12.0) sha256=35a916a1d63190ab5c9009457136ae5f3c0c7512d60291d0d1378ba18ce08ebb reline (0.6.3) sha256=1198b04973565b36ec0f11542ab3f5cfeeec34823f4e54cebde90968092b1835 @@ -445,7 +493,10 @@ CHECKSUMS rubyzip (3.3.0) sha256=a372fc67892a4f8c0bc8ec906b720353d8e48807a64b2e63adf99b1e3583a034 securerandom (0.4.1) sha256=cc5193d414a4341b6e225f0cb4446aceca8e50d5e1888743fac16987638ea0b1 selenium-webdriver (4.43.0) sha256=a634377b964b701c6ac0a009ce3a08fa34ec1e1e7fe9a6d57e3088d14529a65c + steep (1.10.0) sha256=1b295b55f9aaff1b8d3ee42453ee55bc2a1078fda0268f288edb2dc014f4d7d1 stringio (3.2.0) sha256=c37cb2e58b4ffbd33fe5cd948c05934af997b36e0b6ca6fdf43afa234cf222e1 + strscan (3.1.8) sha256=aae2db611a225559f21ffbb71765c9a4e60fd262534a9ea84f4f11c7f32f679e + terminal-table (4.0.0) sha256=f504793203f8251b2ea7c7068333053f0beeea26093ec9962e62ea79f94301d2 thor (1.5.0) sha256=e3a9e55fe857e44859ce104a84675ab6e8cd59c650a49106a05f55f136425e73 timeout (0.6.1) sha256=78f57368a7e7bbadec56971f78a3f5ecbcfb59b7fcbb0a3ed6ddc08a5094accb tsort (0.2.0) sha256=9650a793f6859a43b6641671278f79cfead60ac714148aabe4e3f0060480089f diff --git a/ruby-on-rails/e-navigator/Steepfile b/ruby-on-rails/e-navigator/Steepfile new file mode 100644 index 00000000..9fd64fa0 --- /dev/null +++ b/ruby-on-rails/e-navigator/Steepfile @@ -0,0 +1,11 @@ +D = Steep::Diagnostic + +target :app do + check "app" + check "test" + signature "sig" + + library "minitest" + + configure_code_diagnostics(D::Ruby.default) +end diff --git a/ruby-on-rails/e-navigator/app/controllers/application_controller.rb b/ruby-on-rails/e-navigator/app/controllers/application_controller.rb index 822ebeb6..5bfaaaf2 100644 --- a/ruby-on-rails/e-navigator/app/controllers/application_controller.rb +++ b/ruby-on-rails/e-navigator/app/controllers/application_controller.rb @@ -1,3 +1,5 @@ +# rbs_inline: enabled + class ApplicationController < ActionController::Base before_action :configure_permitted_parameters, if: :devise_controller? before_action :authenticate_user! diff --git a/ruby-on-rails/e-navigator/app/controllers/interviews_controller.rb b/ruby-on-rails/e-navigator/app/controllers/interviews_controller.rb index b3bcd03d..01003c4f 100644 --- a/ruby-on-rails/e-navigator/app/controllers/interviews_controller.rb +++ b/ruby-on-rails/e-navigator/app/controllers/interviews_controller.rb @@ -1,3 +1,5 @@ +# rbs_inline: enabled + class InterviewsController < ApplicationController before_action :set_user, only: [:index, :new, :create, :select_approver] before_action :set_interview, only: [:edit, :update, :destroy, :approve] diff --git a/ruby-on-rails/e-navigator/app/controllers/users/confirmations_controller.rb b/ruby-on-rails/e-navigator/app/controllers/users/confirmations_controller.rb index fa535c0a..df8b4a5f 100644 --- a/ruby-on-rails/e-navigator/app/controllers/users/confirmations_controller.rb +++ b/ruby-on-rails/e-navigator/app/controllers/users/confirmations_controller.rb @@ -1,4 +1,5 @@ # frozen_string_literal: true +# rbs_inline: enabled class Users::ConfirmationsController < Devise::ConfirmationsController # GET /resource/confirmation/new diff --git a/ruby-on-rails/e-navigator/app/controllers/users/omniauth_callbacks_controller.rb b/ruby-on-rails/e-navigator/app/controllers/users/omniauth_callbacks_controller.rb index 565c6ed2..39a241c6 100644 --- a/ruby-on-rails/e-navigator/app/controllers/users/omniauth_callbacks_controller.rb +++ b/ruby-on-rails/e-navigator/app/controllers/users/omniauth_callbacks_controller.rb @@ -1,4 +1,5 @@ # frozen_string_literal: true +# rbs_inline: enabled class Users::OmniauthCallbacksController < Devise::OmniauthCallbacksController # You should configure your model like this: diff --git a/ruby-on-rails/e-navigator/app/controllers/users/passwords_controller.rb b/ruby-on-rails/e-navigator/app/controllers/users/passwords_controller.rb index 1475feec..58650ac5 100644 --- a/ruby-on-rails/e-navigator/app/controllers/users/passwords_controller.rb +++ b/ruby-on-rails/e-navigator/app/controllers/users/passwords_controller.rb @@ -1,4 +1,5 @@ # frozen_string_literal: true +# rbs_inline: enabled class Users::PasswordsController < Devise::PasswordsController # GET /resource/password/new diff --git a/ruby-on-rails/e-navigator/app/controllers/users/registrations_controller.rb b/ruby-on-rails/e-navigator/app/controllers/users/registrations_controller.rb index 1ee7273e..56e19774 100644 --- a/ruby-on-rails/e-navigator/app/controllers/users/registrations_controller.rb +++ b/ruby-on-rails/e-navigator/app/controllers/users/registrations_controller.rb @@ -1,4 +1,5 @@ # frozen_string_literal: true +# rbs_inline: enabled class Users::RegistrationsController < Devise::RegistrationsController # before_action :configure_sign_up_params, only: [:create] diff --git a/ruby-on-rails/e-navigator/app/controllers/users/sessions_controller.rb b/ruby-on-rails/e-navigator/app/controllers/users/sessions_controller.rb index 3fcf6a32..54a64da1 100644 --- a/ruby-on-rails/e-navigator/app/controllers/users/sessions_controller.rb +++ b/ruby-on-rails/e-navigator/app/controllers/users/sessions_controller.rb @@ -1,4 +1,5 @@ # frozen_string_literal: true +# rbs_inline: enabled class Users::SessionsController < Devise::SessionsController # before_action :configure_sign_in_params, only: [:create] diff --git a/ruby-on-rails/e-navigator/app/controllers/users/unlocks_controller.rb b/ruby-on-rails/e-navigator/app/controllers/users/unlocks_controller.rb index 2c410dc0..65ea82b6 100644 --- a/ruby-on-rails/e-navigator/app/controllers/users/unlocks_controller.rb +++ b/ruby-on-rails/e-navigator/app/controllers/users/unlocks_controller.rb @@ -1,4 +1,5 @@ # frozen_string_literal: true +# rbs_inline: enabled class Users::UnlocksController < Devise::UnlocksController # GET /resource/unlock/new diff --git a/ruby-on-rails/e-navigator/app/controllers/users_controller.rb b/ruby-on-rails/e-navigator/app/controllers/users_controller.rb index b6fcdce2..73aa907e 100644 --- a/ruby-on-rails/e-navigator/app/controllers/users_controller.rb +++ b/ruby-on-rails/e-navigator/app/controllers/users_controller.rb @@ -1,3 +1,5 @@ +# rbs_inline: enabled + class UsersController < ApplicationController # GET /users def index diff --git a/ruby-on-rails/e-navigator/app/helpers/application_helper.rb b/ruby-on-rails/e-navigator/app/helpers/application_helper.rb index 4fe8129b..14a7476d 100644 --- a/ruby-on-rails/e-navigator/app/helpers/application_helper.rb +++ b/ruby-on-rails/e-navigator/app/helpers/application_helper.rb @@ -1,3 +1,5 @@ +# rbs_inline: enabled + module ApplicationHelper def devise_mapping diff --git a/ruby-on-rails/e-navigator/app/helpers/home_helper.rb b/ruby-on-rails/e-navigator/app/helpers/home_helper.rb index 23de56ac..9d10be11 100644 --- a/ruby-on-rails/e-navigator/app/helpers/home_helper.rb +++ b/ruby-on-rails/e-navigator/app/helpers/home_helper.rb @@ -1,2 +1,4 @@ +# rbs_inline: enabled + module HomeHelper end diff --git a/ruby-on-rails/e-navigator/app/helpers/interviews_helper.rb b/ruby-on-rails/e-navigator/app/helpers/interviews_helper.rb index 9820ca3a..b6743370 100644 --- a/ruby-on-rails/e-navigator/app/helpers/interviews_helper.rb +++ b/ruby-on-rails/e-navigator/app/helpers/interviews_helper.rb @@ -1,2 +1,4 @@ +# rbs_inline: enabled + module InterviewsHelper end diff --git a/ruby-on-rails/e-navigator/app/jobs/application_job.rb b/ruby-on-rails/e-navigator/app/jobs/application_job.rb index a009ace5..159e3e7c 100644 --- a/ruby-on-rails/e-navigator/app/jobs/application_job.rb +++ b/ruby-on-rails/e-navigator/app/jobs/application_job.rb @@ -1,2 +1,4 @@ +# rbs_inline: enabled + class ApplicationJob < ActiveJob::Base end diff --git a/ruby-on-rails/e-navigator/app/mailers/application_mailer.rb b/ruby-on-rails/e-navigator/app/mailers/application_mailer.rb index 6ba1d0dd..d600319c 100644 --- a/ruby-on-rails/e-navigator/app/mailers/application_mailer.rb +++ b/ruby-on-rails/e-navigator/app/mailers/application_mailer.rb @@ -1,3 +1,5 @@ +# rbs_inline: enabled + class ApplicationMailer < ActionMailer::Base default from: 'reminder@example.com' layout 'mailer' diff --git a/ruby-on-rails/e-navigator/app/mailers/interview_mailer.rb b/ruby-on-rails/e-navigator/app/mailers/interview_mailer.rb index 1d58b44f..e91aea26 100644 --- a/ruby-on-rails/e-navigator/app/mailers/interview_mailer.rb +++ b/ruby-on-rails/e-navigator/app/mailers/interview_mailer.rb @@ -1,3 +1,5 @@ +# rbs_inline: enabled + class InterviewMailer < ApplicationMailer helper ApplicationHelper diff --git a/ruby-on-rails/e-navigator/app/models/application_record.rb b/ruby-on-rails/e-navigator/app/models/application_record.rb index 71a1a03c..d9f3bc09 100644 --- a/ruby-on-rails/e-navigator/app/models/application_record.rb +++ b/ruby-on-rails/e-navigator/app/models/application_record.rb @@ -1,3 +1,5 @@ +# rbs_inline: enabled + class ApplicationRecord < ActiveRecord::Base self.abstract_class = true end \ No newline at end of file diff --git a/ruby-on-rails/e-navigator/app/models/interview.rb b/ruby-on-rails/e-navigator/app/models/interview.rb index 96b4afb5..fdbc4de9 100644 --- a/ruby-on-rails/e-navigator/app/models/interview.rb +++ b/ruby-on-rails/e-navigator/app/models/interview.rb @@ -1,3 +1,5 @@ +# rbs_inline: enabled + class Interview < ApplicationRecord belongs_to :user validates :user_id, presence: true diff --git a/ruby-on-rails/e-navigator/app/models/user.rb b/ruby-on-rails/e-navigator/app/models/user.rb index 090bdafb..85d52060 100644 --- a/ruby-on-rails/e-navigator/app/models/user.rb +++ b/ruby-on-rails/e-navigator/app/models/user.rb @@ -1,3 +1,5 @@ +# rbs_inline: enabled + class User < ApplicationRecord # Include default devise modules. Others available are: # :confirmable, :lockable, :timeoutable and :omniauthable diff --git a/ruby-on-rails/e-navigator/test/controllers/application_controller_test.rb b/ruby-on-rails/e-navigator/test/controllers/application_controller_test.rb index f98f4b51..d17b328f 100644 --- a/ruby-on-rails/e-navigator/test/controllers/application_controller_test.rb +++ b/ruby-on-rails/e-navigator/test/controllers/application_controller_test.rb @@ -1,3 +1,5 @@ +# rbs_inline: enabled + require 'test_helper' class ApplicationControllerTest < ActionDispatch::IntegrationTest diff --git a/ruby-on-rails/e-navigator/test/controllers/interviews_controller_test.rb b/ruby-on-rails/e-navigator/test/controllers/interviews_controller_test.rb index 58d158ed..fa13b841 100644 --- a/ruby-on-rails/e-navigator/test/controllers/interviews_controller_test.rb +++ b/ruby-on-rails/e-navigator/test/controllers/interviews_controller_test.rb @@ -1,3 +1,5 @@ +# rbs_inline: enabled + require 'test_helper' class InterviewsControllerTest < ActionDispatch::IntegrationTest diff --git a/ruby-on-rails/e-navigator/test/controllers/users_controller_test.rb b/ruby-on-rails/e-navigator/test/controllers/users_controller_test.rb index 861f0dc6..f9043373 100644 --- a/ruby-on-rails/e-navigator/test/controllers/users_controller_test.rb +++ b/ruby-on-rails/e-navigator/test/controllers/users_controller_test.rb @@ -1,3 +1,5 @@ +# rbs_inline: enabled + require 'test_helper' class UsersControllerTest < ActionDispatch::IntegrationTest diff --git a/ruby-on-rails/e-navigator/test/helpers/application_helper_test.rb b/ruby-on-rails/e-navigator/test/helpers/application_helper_test.rb index 4bcf997d..25d38ce8 100644 --- a/ruby-on-rails/e-navigator/test/helpers/application_helper_test.rb +++ b/ruby-on-rails/e-navigator/test/helpers/application_helper_test.rb @@ -1,3 +1,5 @@ +# rbs_inline: enabled + require 'test_helper' class ApplicationHelperTest < ActionView::TestCase diff --git a/ruby-on-rails/e-navigator/test/integration/interview_flow_test.rb b/ruby-on-rails/e-navigator/test/integration/interview_flow_test.rb index 9d6d1e22..2ea29dc5 100644 --- a/ruby-on-rails/e-navigator/test/integration/interview_flow_test.rb +++ b/ruby-on-rails/e-navigator/test/integration/interview_flow_test.rb @@ -1,3 +1,5 @@ +# rbs_inline: enabled + require 'test_helper' class InterviewFlowTest < ActionDispatch::IntegrationTest diff --git a/ruby-on-rails/e-navigator/test/integration/user_flow_test.rb b/ruby-on-rails/e-navigator/test/integration/user_flow_test.rb index b0aeb3b1..ba8ea740 100644 --- a/ruby-on-rails/e-navigator/test/integration/user_flow_test.rb +++ b/ruby-on-rails/e-navigator/test/integration/user_flow_test.rb @@ -1,3 +1,5 @@ +# rbs_inline: enabled + require 'test_helper' class UserFlowTest < ActionDispatch::IntegrationTest diff --git a/ruby-on-rails/e-navigator/test/jobs/application_job_test.rb b/ruby-on-rails/e-navigator/test/jobs/application_job_test.rb index aaceac1c..41fd84c5 100644 --- a/ruby-on-rails/e-navigator/test/jobs/application_job_test.rb +++ b/ruby-on-rails/e-navigator/test/jobs/application_job_test.rb @@ -1,3 +1,5 @@ +# rbs_inline: enabled + require 'test_helper' class ApplicationJobTest < ActiveJob::TestCase diff --git a/ruby-on-rails/e-navigator/test/mailers/application_mailer_test.rb b/ruby-on-rails/e-navigator/test/mailers/application_mailer_test.rb index 057fa62c..193a1a4e 100644 --- a/ruby-on-rails/e-navigator/test/mailers/application_mailer_test.rb +++ b/ruby-on-rails/e-navigator/test/mailers/application_mailer_test.rb @@ -1,3 +1,5 @@ +# rbs_inline: enabled + require 'test_helper' class ApplicationMailerTest < ActionMailer::TestCase diff --git a/ruby-on-rails/e-navigator/test/mailers/interview_mailer_test.rb b/ruby-on-rails/e-navigator/test/mailers/interview_mailer_test.rb index f136594c..e0b35697 100644 --- a/ruby-on-rails/e-navigator/test/mailers/interview_mailer_test.rb +++ b/ruby-on-rails/e-navigator/test/mailers/interview_mailer_test.rb @@ -1,3 +1,5 @@ +# rbs_inline: enabled + require 'test_helper' class InterviewMailerTest < ActionMailer::TestCase diff --git a/ruby-on-rails/e-navigator/test/models/application_record_test.rb b/ruby-on-rails/e-navigator/test/models/application_record_test.rb index 68773c64..eb9018b0 100644 --- a/ruby-on-rails/e-navigator/test/models/application_record_test.rb +++ b/ruby-on-rails/e-navigator/test/models/application_record_test.rb @@ -1,3 +1,5 @@ +# rbs_inline: enabled + require 'test_helper' class ApplicationRecordTest < ActiveSupport::TestCase diff --git a/ruby-on-rails/e-navigator/test/models/interview_test.rb b/ruby-on-rails/e-navigator/test/models/interview_test.rb index eedf3d35..1f18dc23 100644 --- a/ruby-on-rails/e-navigator/test/models/interview_test.rb +++ b/ruby-on-rails/e-navigator/test/models/interview_test.rb @@ -1,3 +1,5 @@ +# rbs_inline: enabled + require 'test_helper' class InterviewTest < ActiveSupport::TestCase diff --git a/ruby-on-rails/e-navigator/test/models/user_test.rb b/ruby-on-rails/e-navigator/test/models/user_test.rb index 7c13d542..210aa37b 100644 --- a/ruby-on-rails/e-navigator/test/models/user_test.rb +++ b/ruby-on-rails/e-navigator/test/models/user_test.rb @@ -1,3 +1,5 @@ +# rbs_inline: enabled + require 'test_helper' class UserTest < ActiveSupport::TestCase diff --git a/ruby-on-rails/e-navigator/test/test_helper.rb b/ruby-on-rails/e-navigator/test/test_helper.rb index a5483e86..3e0ded9d 100644 --- a/ruby-on-rails/e-navigator/test/test_helper.rb +++ b/ruby-on-rails/e-navigator/test/test_helper.rb @@ -1,3 +1,5 @@ +# rbs_inline: enabled + ENV['RAILS_ENV'] ||= 'test' require_relative '../config/environment' require 'rails/test_help'