diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 359924fd..6c2af0f6 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -21,12 +21,20 @@ jobs: - "6.1" - "7.0" - "7.1" + - "7.2" - main exclude: - ruby: jruby-9.4 rails: "7.1" + - ruby: jruby-9.4 + rails: "7.2" - ruby: jruby-9.4 rails: main + # Rails >= 7.2 requires Ruby 3.1 + - ruby: "3.0" + rails: "7.2" + - ruby: "3.0" + rails: "main" runs-on: 'ubuntu-latest' diff --git a/Appraisals b/Appraisals index 3a099570..8ec0aa55 100644 --- a/Appraisals +++ b/Appraisals @@ -1,13 +1,13 @@ appraise "6.1" do gem "activerecord", "~> 6.1.0" gem "activerecord-jdbcsqlite3-adapter", "~> 61.0", platforms: [:jruby] - gem "sqlite3", platforms: [:ruby] + gem "sqlite3", "~> 1.4", platforms: [:ruby] end appraise "7.0" do gem "activerecord", "~> 7.0.0" gem "activerecord-jdbcsqlite3-adapter", "~> 70.0", platforms: [:jruby] - gem "sqlite3", platforms: [:ruby] + gem "sqlite3", "~> 1.4", platforms: [:ruby] end appraise "7.1" do @@ -15,6 +15,14 @@ appraise "7.1" do # When version 71 is released, uncomment this and also allow it in the GitHub # Action build workflow. # gem "activerecord-jdbcsqlite3-adapter", "~> 71.0", platforms: [:jruby] + gem "sqlite3", "~> 1.4", platforms: [:ruby] +end + +appraise "7.2" do + gem "activerecord", "~> 7.2.0" + # When version 71 is released, uncomment this and also allow it in the GitHub + # Action build workflow. + # gem "activerecord-jdbcsqlite3-adapter", "~> 71.0", platforms: [:jruby] gem "sqlite3", platforms: [:ruby] end diff --git a/Gemfile.lock b/Gemfile.lock index c738ba21..48fc87b1 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -7,105 +7,106 @@ PATH GEM remote: https://rubygems.org/ specs: - activemodel (6.1.3) - activesupport (= 6.1.3) - activerecord (6.1.3) - activemodel (= 6.1.3) - activesupport (= 6.1.3) - activesupport (6.1.3) - concurrent-ruby (~> 1.0, >= 1.0.2) + activemodel (7.2.0) + activesupport (= 7.2.0) + activerecord (7.2.0) + activemodel (= 7.2.0) + activesupport (= 7.2.0) + timeout (>= 0.4.0) + activesupport (7.2.0) + base64 + bigdecimal + concurrent-ruby (~> 1.0, >= 1.3.1) + connection_pool (>= 2.2.5) + drb i18n (>= 1.6, < 2) + logger (>= 1.4.2) minitest (>= 5.1) - tzinfo (~> 2.0) - zeitwerk (~> 2.3) - appraisal (2.3.0) + securerandom (>= 0.3) + tzinfo (~> 2.0, >= 2.0.5) + appraisal (2.5.0) bundler rake thor (>= 0.14.0) - aruba (1.0.4) - childprocess (>= 2.0, < 5.0) - contracts (~> 0.16.0) - cucumber (>= 2.4, < 6.0) + aruba (2.2.0) + bundler (>= 1.17, < 3.0) + contracts (>= 0.16.0, < 0.18.0) + cucumber (>= 8.0, < 10.0) rspec-expectations (~> 3.4) thor (~> 1.0) ast (2.4.2) - builder (3.2.4) - childprocess (4.0.0) - concurrent-ruby (1.1.8) - contracts (0.16.0) - cucumber (5.3.0) - builder (~> 3.2, >= 3.2.4) - cucumber-core (~> 8.0, >= 8.0.1) - cucumber-create-meta (~> 2.0, >= 2.0.2) - cucumber-cucumber-expressions (~> 10.3, >= 10.3.0) - cucumber-gherkin (~> 15.0, >= 15.0.2) - cucumber-html-formatter (~> 9.0, >= 9.0.0) - cucumber-messages (~> 13.1, >= 13.1.0) - cucumber-wire (~> 4.0, >= 4.0.1) - diff-lcs (~> 1.4, >= 1.4.4) - multi_test (~> 0.1, >= 0.1.2) - sys-uname (~> 1.2, >= 1.2.1) - cucumber-core (8.0.1) - cucumber-gherkin (~> 15.0, >= 15.0.2) - cucumber-messages (~> 13.0, >= 13.0.1) - cucumber-tag-expressions (~> 2.0, >= 2.0.4) - cucumber-create-meta (2.0.4) - cucumber-messages (~> 13.1, >= 13.1.0) - sys-uname (~> 1.2, >= 1.2.1) - cucumber-cucumber-expressions (10.3.0) - cucumber-gherkin (15.0.2) - cucumber-messages (~> 13.0, >= 13.0.1) - cucumber-html-formatter (9.0.0) - cucumber-messages (~> 13.0, >= 13.0.1) - cucumber-messages (13.2.1) - protobuf-cucumber (~> 3.10, >= 3.10.8) - cucumber-tag-expressions (2.0.4) - cucumber-wire (4.0.1) - cucumber-core (~> 8.0, >= 8.0.1) - cucumber-cucumber-expressions (~> 10.3, >= 10.3.0) - cucumber-messages (~> 13.0, >= 13.0.1) - diff-lcs (1.4.4) - docile (1.3.5) - ffi (1.14.2) - i18n (1.8.9) + base64 (0.2.0) + bigdecimal (3.1.8) + builder (3.3.0) + concurrent-ruby (1.3.4) + connection_pool (2.4.1) + contracts (0.17) + cucumber (9.2.0) + builder (~> 3.2) + cucumber-ci-environment (> 9, < 11) + cucumber-core (> 13, < 14) + cucumber-cucumber-expressions (~> 17.0) + cucumber-gherkin (> 24, < 28) + cucumber-html-formatter (> 20.3, < 22) + cucumber-messages (> 19, < 25) + diff-lcs (~> 1.5) + mini_mime (~> 1.1) + multi_test (~> 1.1) + sys-uname (~> 1.2) + cucumber-ci-environment (10.0.1) + cucumber-core (13.0.3) + cucumber-gherkin (>= 27, < 28) + cucumber-messages (>= 20, < 23) + cucumber-tag-expressions (> 5, < 7) + cucumber-cucumber-expressions (17.1.0) + bigdecimal + cucumber-gherkin (27.0.0) + cucumber-messages (>= 19.1.4, < 23) + cucumber-html-formatter (21.7.0) + cucumber-messages (> 19, < 27) + cucumber-messages (22.0.0) + cucumber-tag-expressions (6.1.0) + diff-lcs (1.5.1) + docile (1.4.1) + drb (2.2.1) + ffi (1.17.0) + i18n (1.14.5) concurrent-ruby (~> 1.0) - json (2.7.1) + json (2.7.2) language_server-protocol (3.17.0.3) lint_roller (1.1.0) - middleware (0.1.0) - minitest (5.14.3) - multi_test (0.1.2) - parallel (1.24.0) - parser (3.3.0.5) + logger (1.6.0) + mini_mime (1.1.5) + mini_portile2 (2.8.7) + minitest (5.24.1) + multi_test (1.1.0) + parallel (1.26.2) + parser (3.3.4.2) ast (~> 2.4.1) racc - protobuf-cucumber (3.10.8) - activesupport (>= 3.2) - middleware - thor - thread_safe - racc (1.7.3) + racc (1.8.1) rainbow (3.1.1) - rake (13.0.3) - regexp_parser (2.9.0) - rexml (3.2.6) - rspec (3.10.0) - rspec-core (~> 3.10.0) - rspec-expectations (~> 3.10.0) - rspec-mocks (~> 3.10.0) - rspec-core (3.10.1) - rspec-support (~> 3.10.0) - rspec-expectations (3.10.1) + rake (13.2.1) + regexp_parser (2.9.2) + rexml (3.3.5) + strscan + rspec (3.13.0) + rspec-core (~> 3.13.0) + rspec-expectations (~> 3.13.0) + rspec-mocks (~> 3.13.0) + rspec-core (3.13.0) + rspec-support (~> 3.13.0) + rspec-expectations (3.13.1) diff-lcs (>= 1.2.0, < 2.0) - rspec-support (~> 3.10.0) + rspec-support (~> 3.13.0) rspec-its (1.3.0) rspec-core (>= 3.0.0) rspec-expectations (>= 3.0.0) - rspec-mocks (3.10.2) + rspec-mocks (3.13.1) diff-lcs (>= 1.2.0, < 2.0) - rspec-support (~> 3.10.0) - rspec-support (3.10.2) - rubocop (1.60.2) + rspec-support (~> 3.13.0) + rspec-support (3.13.1) + rubocop (1.64.1) json (~> 2.3) language_server-protocol (>= 3.17.0) parallel (~> 1.10) @@ -113,43 +114,45 @@ GEM rainbow (>= 2.2.2, < 4.0) regexp_parser (>= 1.8, < 3.0) rexml (>= 3.2.5, < 4.0) - rubocop-ast (>= 1.30.0, < 2.0) + rubocop-ast (>= 1.31.1, < 2.0) ruby-progressbar (~> 1.7) unicode-display_width (>= 2.4.0, < 3.0) - rubocop-ast (1.30.0) - parser (>= 3.2.1.0) - rubocop-performance (1.20.2) + rubocop-ast (1.32.0) + parser (>= 3.3.1.0) + rubocop-performance (1.21.1) rubocop (>= 1.48.1, < 2.0) - rubocop-ast (>= 1.30.0, < 2.0) + rubocop-ast (>= 1.31.1, < 2.0) ruby-progressbar (1.13.0) - simplecov (0.21.2) + securerandom (0.3.1) + simplecov (0.22.0) docile (~> 1.1) simplecov-html (~> 0.11) simplecov_json_formatter (~> 0.1) simplecov-html (0.12.3) - simplecov_json_formatter (0.1.2) - sqlite3 (1.4.2) - standard (1.34.0) + simplecov_json_formatter (0.1.4) + sqlite3 (2.0.3) + mini_portile2 (~> 2.8.0) + standard (1.39.2) language_server-protocol (~> 3.17.0.2) lint_roller (~> 1.0) - rubocop (~> 1.60) + rubocop (~> 1.64.0) standard-custom (~> 1.0.0) - standard-performance (~> 1.3) + standard-performance (~> 1.4) standard-custom (1.0.2) lint_roller (~> 1.0) rubocop (~> 1.50) - standard-performance (1.3.1) + standard-performance (1.4.0) lint_roller (~> 1.1) - rubocop-performance (~> 1.20.2) - sys-uname (1.2.2) + rubocop-performance (~> 1.21.0) + strscan (3.1.0) + sys-uname (1.3.0) ffi (~> 1.1) - thor (1.1.0) - thread_safe (0.3.6) - tzinfo (2.0.4) + thor (1.3.1) + timeout (0.4.1) + tzinfo (2.0.6) concurrent-ruby (~> 1.0) unicode-display_width (2.5.0) - yard (0.9.26) - zeitwerk (2.4.2) + yard (0.9.36) PLATFORMS ruby diff --git a/gemfiles/6.1.gemfile b/gemfiles/6.1.gemfile index 6deb0e32..cbc3ee3d 100644 --- a/gemfiles/6.1.gemfile +++ b/gemfiles/6.1.gemfile @@ -3,7 +3,7 @@ source "https://rubygems.org" gem "activerecord-jdbcsqlite3-adapter", "~> 61.0", platforms: [:jruby] -gem "sqlite3", platforms: [:ruby] +gem "sqlite3", "~> 1.4", platforms: [:ruby] gem "activerecord", "~> 6.1.0" gemspec name: "factory_bot", path: "../" diff --git a/gemfiles/6.1.gemfile.lock b/gemfiles/6.1.gemfile.lock index 04add1e8..9a010fcb 100644 --- a/gemfiles/6.1.gemfile.lock +++ b/gemfiles/6.1.gemfile.lock @@ -7,133 +7,141 @@ PATH GEM remote: https://rubygems.org/ specs: - activemodel (6.1.3) - activesupport (= 6.1.3) - activerecord (6.1.3) - activemodel (= 6.1.3) - activesupport (= 6.1.3) - activesupport (6.1.3) + activemodel (6.1.7.8) + activesupport (= 6.1.7.8) + activerecord (6.1.7.8) + activemodel (= 6.1.7.8) + activesupport (= 6.1.7.8) + activesupport (6.1.7.8) concurrent-ruby (~> 1.0, >= 1.0.2) i18n (>= 1.6, < 2) minitest (>= 5.1) tzinfo (~> 2.0) zeitwerk (~> 2.3) - appraisal (2.3.0) + appraisal (2.5.0) bundler rake thor (>= 0.14.0) - aruba (1.0.4) - childprocess (>= 2.0, < 5.0) - contracts (~> 0.16.0) - cucumber (>= 2.4, < 6.0) + aruba (2.2.0) + bundler (>= 1.17, < 3.0) + contracts (>= 0.16.0, < 0.18.0) + cucumber (>= 8.0, < 10.0) rspec-expectations (~> 3.4) thor (~> 1.0) ast (2.4.2) - builder (3.2.4) - childprocess (4.0.0) - concurrent-ruby (1.1.8) - contracts (0.16.0) - cucumber (5.3.0) - builder (~> 3.2, >= 3.2.4) - cucumber-core (~> 8.0, >= 8.0.1) - cucumber-create-meta (~> 2.0, >= 2.0.2) - cucumber-cucumber-expressions (~> 10.3, >= 10.3.0) - cucumber-gherkin (~> 15.0, >= 15.0.2) - cucumber-html-formatter (~> 9.0, >= 9.0.0) - cucumber-messages (~> 13.1, >= 13.1.0) - cucumber-wire (~> 4.0, >= 4.0.1) - diff-lcs (~> 1.4, >= 1.4.4) - multi_test (~> 0.1, >= 0.1.2) - sys-uname (~> 1.2, >= 1.2.1) - cucumber-core (8.0.1) - cucumber-gherkin (~> 15.0, >= 15.0.2) - cucumber-messages (~> 13.0, >= 13.0.1) - cucumber-tag-expressions (~> 2.0, >= 2.0.4) - cucumber-create-meta (2.0.4) - cucumber-messages (~> 13.1, >= 13.1.0) - sys-uname (~> 1.2, >= 1.2.1) - cucumber-cucumber-expressions (10.3.0) - cucumber-gherkin (15.0.2) - cucumber-messages (~> 13.0, >= 13.0.1) - cucumber-html-formatter (9.0.0) - cucumber-messages (~> 13.0, >= 13.0.1) - cucumber-messages (13.2.1) - protobuf-cucumber (~> 3.10, >= 3.10.8) - cucumber-tag-expressions (2.0.4) - cucumber-wire (4.0.1) - cucumber-core (~> 8.0, >= 8.0.1) - cucumber-cucumber-expressions (~> 10.3, >= 10.3.0) - cucumber-messages (~> 13.0, >= 13.0.1) - diff-lcs (1.4.4) - docile (1.3.5) - ffi (1.14.2) - i18n (1.8.9) + bigdecimal (3.1.8) + builder (3.3.0) + concurrent-ruby (1.3.4) + contracts (0.17) + cucumber (9.2.0) + builder (~> 3.2) + cucumber-ci-environment (> 9, < 11) + cucumber-core (> 13, < 14) + cucumber-cucumber-expressions (~> 17.0) + cucumber-gherkin (> 24, < 28) + cucumber-html-formatter (> 20.3, < 22) + cucumber-messages (> 19, < 25) + diff-lcs (~> 1.5) + mini_mime (~> 1.1) + multi_test (~> 1.1) + sys-uname (~> 1.2) + cucumber-ci-environment (10.0.1) + cucumber-core (13.0.3) + cucumber-gherkin (>= 27, < 28) + cucumber-messages (>= 20, < 23) + cucumber-tag-expressions (> 5, < 7) + cucumber-cucumber-expressions (17.1.0) + bigdecimal + cucumber-gherkin (27.0.0) + cucumber-messages (>= 19.1.4, < 23) + cucumber-html-formatter (21.7.0) + cucumber-messages (> 19, < 27) + cucumber-messages (22.0.0) + cucumber-tag-expressions (6.1.0) + diff-lcs (1.5.1) + docile (1.4.1) + ffi (1.17.0) + i18n (1.14.5) concurrent-ruby (~> 1.0) - middleware (0.1.0) - minitest (5.14.3) - multi_test (0.1.2) - parallel (1.20.1) - parser (3.0.0.0) + json (2.7.2) + language_server-protocol (3.17.0.3) + lint_roller (1.1.0) + mini_mime (1.1.5) + mini_portile2 (2.8.7) + minitest (5.24.1) + multi_test (1.1.0) + parallel (1.26.2) + parser (3.3.4.2) ast (~> 2.4.1) - protobuf-cucumber (3.10.8) - activesupport (>= 3.2) - middleware - thor - thread_safe - rainbow (3.0.0) - rake (13.0.3) - regexp_parser (2.0.3) - rexml (3.2.5) - rspec (3.10.0) - rspec-core (~> 3.10.0) - rspec-expectations (~> 3.10.0) - rspec-mocks (~> 3.10.0) - rspec-core (3.10.1) - rspec-support (~> 3.10.0) - rspec-expectations (3.10.1) + racc + racc (1.8.1) + rainbow (3.1.1) + rake (13.2.1) + regexp_parser (2.9.2) + rexml (3.3.5) + strscan + rspec (3.13.0) + rspec-core (~> 3.13.0) + rspec-expectations (~> 3.13.0) + rspec-mocks (~> 3.13.0) + rspec-core (3.13.0) + rspec-support (~> 3.13.0) + rspec-expectations (3.13.1) diff-lcs (>= 1.2.0, < 2.0) - rspec-support (~> 3.10.0) + rspec-support (~> 3.13.0) rspec-its (1.3.0) rspec-core (>= 3.0.0) rspec-expectations (>= 3.0.0) - rspec-mocks (3.10.2) + rspec-mocks (3.13.1) diff-lcs (>= 1.2.0, < 2.0) - rspec-support (~> 3.10.0) - rspec-support (3.10.2) - rubocop (1.10.0) + rspec-support (~> 3.13.0) + rspec-support (3.13.1) + rubocop (1.64.1) + json (~> 2.3) + language_server-protocol (>= 3.17.0) parallel (~> 1.10) - parser (>= 3.0.0.0) + parser (>= 3.3.0.2) rainbow (>= 2.2.2, < 4.0) regexp_parser (>= 1.8, < 3.0) - rexml - rubocop-ast (>= 1.2.0, < 2.0) + rexml (>= 3.2.5, < 4.0) + rubocop-ast (>= 1.31.1, < 2.0) ruby-progressbar (~> 1.7) - unicode-display_width (>= 1.4.0, < 3.0) - rubocop-ast (1.4.1) - parser (>= 2.7.1.5) - rubocop-performance (1.9.2) - rubocop (>= 0.90.0, < 2.0) - rubocop-ast (>= 0.4.0) - ruby-progressbar (1.11.0) - simplecov (0.21.2) + unicode-display_width (>= 2.4.0, < 3.0) + rubocop-ast (1.32.0) + parser (>= 3.3.1.0) + rubocop-performance (1.21.1) + rubocop (>= 1.48.1, < 2.0) + rubocop-ast (>= 1.31.1, < 2.0) + ruby-progressbar (1.13.0) + simplecov (0.22.0) docile (~> 1.1) simplecov-html (~> 0.11) simplecov_json_formatter (~> 0.1) simplecov-html (0.12.3) - simplecov_json_formatter (0.1.2) - sqlite3 (1.4.2) - standard (0.13.0) - rubocop (= 1.10.0) - rubocop-performance (= 1.9.2) - sys-uname (1.2.2) + simplecov_json_formatter (0.1.4) + sqlite3 (1.7.3) + mini_portile2 (~> 2.8.0) + standard (1.39.2) + language_server-protocol (~> 3.17.0.2) + lint_roller (~> 1.0) + rubocop (~> 1.64.0) + standard-custom (~> 1.0.0) + standard-performance (~> 1.4) + standard-custom (1.0.2) + lint_roller (~> 1.0) + rubocop (~> 1.50) + standard-performance (1.4.0) + lint_roller (~> 1.1) + rubocop-performance (~> 1.21.0) + strscan (3.1.0) + sys-uname (1.3.0) ffi (~> 1.1) - thor (1.1.0) - thread_safe (0.3.6) - tzinfo (2.0.4) + thor (1.3.1) + tzinfo (2.0.6) concurrent-ruby (~> 1.0) - unicode-display_width (2.0.0) - yard (0.9.26) - zeitwerk (2.4.2) + unicode-display_width (2.5.0) + yard (0.9.36) + zeitwerk (2.6.17) PLATFORMS ruby @@ -149,7 +157,7 @@ DEPENDENCIES rspec rspec-its simplecov - sqlite3 + sqlite3 (~> 1.4) standard yard diff --git a/gemfiles/7.0.gemfile b/gemfiles/7.0.gemfile index f440fcc1..d54da96b 100644 --- a/gemfiles/7.0.gemfile +++ b/gemfiles/7.0.gemfile @@ -3,7 +3,7 @@ source "https://rubygems.org" gem "activerecord-jdbcsqlite3-adapter", "~> 70.0", platforms: [:jruby] -gem "sqlite3", platforms: [:ruby] +gem "sqlite3", "~> 1.4", platforms: [:ruby] gem "activerecord", "~> 7.0.0" gemspec name: "factory_bot", path: "../" diff --git a/gemfiles/7.0.gemfile.lock b/gemfiles/7.0.gemfile.lock index 6d46ea93..ed9da641 100644 --- a/gemfiles/7.0.gemfile.lock +++ b/gemfiles/7.0.gemfile.lock @@ -7,109 +7,109 @@ PATH GEM remote: https://rubygems.org/ specs: - activemodel (7.0.6) - activesupport (= 7.0.6) - activerecord (7.0.6) - activemodel (= 7.0.6) - activesupport (= 7.0.6) - activesupport (7.0.6) + activemodel (7.0.8.4) + activesupport (= 7.0.8.4) + activerecord (7.0.8.4) + activemodel (= 7.0.8.4) + activesupport (= 7.0.8.4) + activesupport (7.0.8.4) concurrent-ruby (~> 1.0, >= 1.0.2) i18n (>= 1.6, < 2) minitest (>= 5.1) tzinfo (~> 2.0) - appraisal (2.4.1) + appraisal (2.5.0) bundler rake thor (>= 0.14.0) - aruba (2.1.0) + aruba (2.2.0) bundler (>= 1.17, < 3.0) - childprocess (>= 2.0, < 5.0) contracts (>= 0.16.0, < 0.18.0) - cucumber (>= 4.0, < 9.0) + cucumber (>= 8.0, < 10.0) rspec-expectations (~> 3.4) thor (~> 1.0) ast (2.4.2) - builder (3.2.4) - childprocess (4.1.0) - concurrent-ruby (1.2.2) + bigdecimal (3.1.8) + builder (3.3.0) + concurrent-ruby (1.3.4) contracts (0.17) - cucumber (8.0.0) - builder (~> 3.2, >= 3.2.4) - cucumber-ci-environment (~> 9.0, >= 9.0.4) - cucumber-core (~> 11.0, >= 11.0.0) - cucumber-cucumber-expressions (~> 15.1, >= 15.1.1) - cucumber-gherkin (~> 23.0, >= 23.0.1) - cucumber-html-formatter (~> 19.1, >= 19.1.0) - cucumber-messages (~> 18.0, >= 18.0.0) - diff-lcs (~> 1.5, >= 1.5.0) - mime-types (~> 3.4, >= 3.4.1) - multi_test (~> 1.1, >= 1.1.0) - sys-uname (~> 1.2, >= 1.2.2) - cucumber-ci-environment (9.1.0) - cucumber-core (11.0.0) - cucumber-gherkin (~> 23.0, >= 23.0.1) - cucumber-messages (~> 18.0, >= 18.0.0) - cucumber-tag-expressions (~> 4.1, >= 4.1.0) - cucumber-cucumber-expressions (15.2.0) - cucumber-gherkin (23.0.1) - cucumber-messages (~> 18.0, >= 18.0.0) - cucumber-html-formatter (19.2.0) - cucumber-messages (~> 18.0, >= 18.0.0) - cucumber-messages (18.0.0) - cucumber-tag-expressions (4.1.0) - diff-lcs (1.5.0) - docile (1.4.0) - ffi (1.15.5) - i18n (1.14.1) + cucumber (9.2.0) + builder (~> 3.2) + cucumber-ci-environment (> 9, < 11) + cucumber-core (> 13, < 14) + cucumber-cucumber-expressions (~> 17.0) + cucumber-gherkin (> 24, < 28) + cucumber-html-formatter (> 20.3, < 22) + cucumber-messages (> 19, < 25) + diff-lcs (~> 1.5) + mini_mime (~> 1.1) + multi_test (~> 1.1) + sys-uname (~> 1.2) + cucumber-ci-environment (10.0.1) + cucumber-core (13.0.3) + cucumber-gherkin (>= 27, < 28) + cucumber-messages (>= 20, < 23) + cucumber-tag-expressions (> 5, < 7) + cucumber-cucumber-expressions (17.1.0) + bigdecimal + cucumber-gherkin (27.0.0) + cucumber-messages (>= 19.1.4, < 23) + cucumber-html-formatter (21.7.0) + cucumber-messages (> 19, < 27) + cucumber-messages (22.0.0) + cucumber-tag-expressions (6.1.0) + diff-lcs (1.5.1) + docile (1.4.1) + ffi (1.17.0-x86_64-linux-gnu) + i18n (1.14.5) concurrent-ruby (~> 1.0) - json (2.6.3) + json (2.7.2) language_server-protocol (3.17.0.3) - lint_roller (1.0.0) - mime-types (3.4.1) - mime-types-data (~> 3.2015) - mime-types-data (3.2023.0218.1) - minitest (5.18.1) + lint_roller (1.1.0) + mini_mime (1.1.5) + minitest (5.24.1) multi_test (1.1.0) - parallel (1.23.0) - parser (3.2.2.3) + parallel (1.26.2) + parser (3.3.4.2) ast (~> 2.4.1) racc - racc (1.7.1) + racc (1.8.1) rainbow (3.1.1) - rake (13.0.6) - regexp_parser (2.8.0) - rexml (3.2.5) - rspec (3.10.0) - rspec-core (~> 3.10.0) - rspec-expectations (~> 3.10.0) - rspec-mocks (~> 3.10.0) - rspec-core (3.10.1) - rspec-support (~> 3.10.0) - rspec-expectations (3.10.1) + rake (13.2.1) + regexp_parser (2.9.2) + rexml (3.3.5) + strscan + rspec (3.13.0) + rspec-core (~> 3.13.0) + rspec-expectations (~> 3.13.0) + rspec-mocks (~> 3.13.0) + rspec-core (3.13.0) + rspec-support (~> 3.13.0) + rspec-expectations (3.13.1) diff-lcs (>= 1.2.0, < 2.0) - rspec-support (~> 3.10.0) + rspec-support (~> 3.13.0) rspec-its (1.3.0) rspec-core (>= 3.0.0) rspec-expectations (>= 3.0.0) - rspec-mocks (3.10.2) + rspec-mocks (3.13.1) diff-lcs (>= 1.2.0, < 2.0) - rspec-support (~> 3.10.0) - rspec-support (3.10.2) - rubocop (1.52.0) + rspec-support (~> 3.13.0) + rspec-support (3.13.1) + rubocop (1.64.1) json (~> 2.3) + language_server-protocol (>= 3.17.0) parallel (~> 1.10) - parser (>= 3.2.0.0) + parser (>= 3.3.0.2) rainbow (>= 2.2.2, < 4.0) regexp_parser (>= 1.8, < 3.0) rexml (>= 3.2.5, < 4.0) - rubocop-ast (>= 1.28.0, < 2.0) + rubocop-ast (>= 1.31.1, < 2.0) ruby-progressbar (~> 1.7) unicode-display_width (>= 2.4.0, < 3.0) - rubocop-ast (1.29.0) - parser (>= 3.2.1.0) - rubocop-performance (1.18.0) - rubocop (>= 1.7.0, < 2.0) - rubocop-ast (>= 0.4.0) + rubocop-ast (1.32.0) + parser (>= 3.3.1.0) + rubocop-performance (1.21.1) + rubocop (>= 1.48.1, < 2.0) + rubocop-ast (>= 1.31.1, < 2.0) ruby-progressbar (1.13.0) simplecov (0.22.0) docile (~> 1.1) @@ -117,27 +117,27 @@ GEM simplecov_json_formatter (~> 0.1) simplecov-html (0.12.3) simplecov_json_formatter (0.1.4) - sqlite3 (1.6.3-x86_64-linux) - standard (1.29.0) + sqlite3 (1.7.3-x86_64-linux) + standard (1.39.2) language_server-protocol (~> 3.17.0.2) lint_roller (~> 1.0) - rubocop (~> 1.52.0) + rubocop (~> 1.64.0) standard-custom (~> 1.0.0) - standard-performance (~> 1.1.0) - standard-custom (1.0.1) + standard-performance (~> 1.4) + standard-custom (1.0.2) lint_roller (~> 1.0) - standard-performance (1.1.0) - lint_roller (~> 1.0) - rubocop-performance (~> 1.18.0) - sys-uname (1.2.3) + rubocop (~> 1.50) + standard-performance (1.4.0) + lint_roller (~> 1.1) + rubocop-performance (~> 1.21.0) + strscan (3.1.0) + sys-uname (1.3.0) ffi (~> 1.1) - thor (1.2.2) + thor (1.3.1) tzinfo (2.0.6) concurrent-ruby (~> 1.0) - unicode-display_width (2.4.2) - webrick (1.7.0) - yard (0.9.28) - webrick (~> 1.7.0) + unicode-display_width (2.5.0) + yard (0.9.36) PLATFORMS x86_64-linux @@ -153,7 +153,7 @@ DEPENDENCIES rspec rspec-its simplecov - sqlite3 + sqlite3 (~> 1.4) standard yard diff --git a/gemfiles/7.1.gemfile b/gemfiles/7.1.gemfile index 72f4fdad..b460615c 100644 --- a/gemfiles/7.1.gemfile +++ b/gemfiles/7.1.gemfile @@ -3,7 +3,7 @@ source "https://rubygems.org" gem "activerecord-jdbcsqlite3-adapter", platforms: [:jruby] -gem "sqlite3", platforms: [:ruby] +gem "sqlite3", "~> 1.4", platforms: [:ruby] gem "activerecord", "~> 7.1.0" gemspec name: "factory_bot", path: "../" diff --git a/gemfiles/7.1.gemfile.lock b/gemfiles/7.1.gemfile.lock index 4ded833f..51190ec0 100644 --- a/gemfiles/7.1.gemfile.lock +++ b/gemfiles/7.1.gemfile.lock @@ -7,13 +7,13 @@ PATH GEM remote: https://rubygems.org/ specs: - activemodel (7.1.2) - activesupport (= 7.1.2) - activerecord (7.1.2) - activemodel (= 7.1.2) - activesupport (= 7.1.2) + activemodel (7.1.3.4) + activesupport (= 7.1.3.4) + activerecord (7.1.3.4) + activemodel (= 7.1.3.4) + activesupport (= 7.1.3.4) timeout (>= 0.4.0) - activesupport (7.1.2) + activesupport (7.1.3.4) base64 bigdecimal concurrent-ruby (~> 1.0, >= 1.0.2) @@ -35,119 +35,120 @@ GEM thor (~> 1.0) ast (2.4.2) base64 (0.2.0) - bigdecimal (3.1.4) - builder (3.2.4) - concurrent-ruby (1.2.2) + bigdecimal (3.1.8) + builder (3.3.0) + concurrent-ruby (1.3.4) connection_pool (2.4.1) contracts (0.17) - cucumber (9.1.0) - builder (~> 3.2, >= 3.2.4) - cucumber-ci-environment (~> 9.2, >= 9.2.0) - cucumber-core (~> 12.0) + cucumber (9.2.0) + builder (~> 3.2) + cucumber-ci-environment (> 9, < 11) + cucumber-core (> 13, < 14) cucumber-cucumber-expressions (~> 17.0) - cucumber-gherkin (>= 24, < 27) - cucumber-html-formatter (~> 20.4, >= 20.4.0) - cucumber-messages (>= 19, < 23) - diff-lcs (~> 1.5, >= 1.5.0) - mini_mime (~> 1.1, >= 1.1.5) - multi_test (~> 1.1, >= 1.1.0) - sys-uname (~> 1.2, >= 1.2.3) - cucumber-ci-environment (9.2.0) - cucumber-core (12.0.0) - cucumber-gherkin (>= 25, < 27) + cucumber-gherkin (> 24, < 28) + cucumber-html-formatter (> 20.3, < 22) + cucumber-messages (> 19, < 25) + diff-lcs (~> 1.5) + mini_mime (~> 1.1) + multi_test (~> 1.1) + sys-uname (~> 1.2) + cucumber-ci-environment (10.0.1) + cucumber-core (13.0.3) + cucumber-gherkin (>= 27, < 28) cucumber-messages (>= 20, < 23) - cucumber-tag-expressions (~> 5.0, >= 5.0.4) - cucumber-cucumber-expressions (17.0.1) - cucumber-gherkin (26.2.0) - cucumber-messages (>= 19.1.4, < 22.1) - cucumber-html-formatter (20.4.0) - cucumber-messages (>= 18.0, < 22.1) + cucumber-tag-expressions (> 5, < 7) + cucumber-cucumber-expressions (17.1.0) + bigdecimal + cucumber-gherkin (27.0.0) + cucumber-messages (>= 19.1.4, < 23) + cucumber-html-formatter (21.7.0) + cucumber-messages (> 19, < 27) cucumber-messages (22.0.0) - cucumber-tag-expressions (5.0.6) - diff-lcs (1.5.0) - docile (1.4.0) - drb (2.2.0) - ruby2_keywords - ffi (1.16.3) - i18n (1.14.1) + cucumber-tag-expressions (6.1.0) + diff-lcs (1.5.1) + docile (1.4.1) + drb (2.2.1) + ffi (1.17.0-x86_64-linux-gnu) + i18n (1.14.5) concurrent-ruby (~> 1.0) - json (2.7.1) + json (2.7.2) language_server-protocol (3.17.0.3) lint_roller (1.1.0) mini_mime (1.1.5) - minitest (5.20.0) + minitest (5.24.1) multi_test (1.1.0) mutex_m (0.2.0) - parallel (1.23.0) - parser (3.2.2.4) + parallel (1.26.2) + parser (3.3.4.2) ast (~> 2.4.1) racc - racc (1.7.3) + racc (1.8.1) rainbow (3.1.1) - rake (13.1.0) - regexp_parser (2.8.3) - rexml (3.2.6) - rspec (3.12.0) - rspec-core (~> 3.12.0) - rspec-expectations (~> 3.12.0) - rspec-mocks (~> 3.12.0) - rspec-core (3.12.2) - rspec-support (~> 3.12.0) - rspec-expectations (3.12.3) + rake (13.2.1) + regexp_parser (2.9.2) + rexml (3.3.5) + strscan + rspec (3.13.0) + rspec-core (~> 3.13.0) + rspec-expectations (~> 3.13.0) + rspec-mocks (~> 3.13.0) + rspec-core (3.13.0) + rspec-support (~> 3.13.0) + rspec-expectations (3.13.1) diff-lcs (>= 1.2.0, < 2.0) - rspec-support (~> 3.12.0) + rspec-support (~> 3.13.0) rspec-its (1.3.0) rspec-core (>= 3.0.0) rspec-expectations (>= 3.0.0) - rspec-mocks (3.12.6) + rspec-mocks (3.13.1) diff-lcs (>= 1.2.0, < 2.0) - rspec-support (~> 3.12.0) - rspec-support (3.12.1) - rubocop (1.57.2) + rspec-support (~> 3.13.0) + rspec-support (3.13.1) + rubocop (1.64.1) json (~> 2.3) language_server-protocol (>= 3.17.0) parallel (~> 1.10) - parser (>= 3.2.2.4) + parser (>= 3.3.0.2) rainbow (>= 2.2.2, < 4.0) regexp_parser (>= 1.8, < 3.0) rexml (>= 3.2.5, < 4.0) - rubocop-ast (>= 1.28.1, < 2.0) + rubocop-ast (>= 1.31.1, < 2.0) ruby-progressbar (~> 1.7) unicode-display_width (>= 2.4.0, < 3.0) - rubocop-ast (1.30.0) - parser (>= 3.2.1.0) - rubocop-performance (1.19.1) - rubocop (>= 1.7.0, < 2.0) - rubocop-ast (>= 0.4.0) + rubocop-ast (1.32.0) + parser (>= 3.3.1.0) + rubocop-performance (1.21.1) + rubocop (>= 1.48.1, < 2.0) + rubocop-ast (>= 1.31.1, < 2.0) ruby-progressbar (1.13.0) - ruby2_keywords (0.0.5) simplecov (0.22.0) docile (~> 1.1) simplecov-html (~> 0.11) simplecov_json_formatter (~> 0.1) simplecov-html (0.12.3) simplecov_json_formatter (0.1.4) - sqlite3 (1.7.0-x86_64-linux) - standard (1.32.1) + sqlite3 (1.7.3-x86_64-linux) + standard (1.39.2) language_server-protocol (~> 3.17.0.2) lint_roller (~> 1.0) - rubocop (~> 1.57.2) + rubocop (~> 1.64.0) standard-custom (~> 1.0.0) - standard-performance (~> 1.2) + standard-performance (~> 1.4) standard-custom (1.0.2) lint_roller (~> 1.0) rubocop (~> 1.50) - standard-performance (1.2.1) + standard-performance (1.4.0) lint_roller (~> 1.1) - rubocop-performance (~> 1.19.1) - sys-uname (1.2.3) + rubocop-performance (~> 1.21.0) + strscan (3.1.0) + sys-uname (1.3.0) ffi (~> 1.1) - thor (1.3.0) + thor (1.3.1) timeout (0.4.1) tzinfo (2.0.6) concurrent-ruby (~> 1.0) unicode-display_width (2.5.0) - yard (0.9.34) + yard (0.9.36) PLATFORMS x86_64-linux @@ -163,7 +164,7 @@ DEPENDENCIES rspec rspec-its simplecov - sqlite3 + sqlite3 (~> 1.4) standard yard diff --git a/gemfiles/7.2.gemfile b/gemfiles/7.2.gemfile new file mode 100644 index 00000000..4bad774b --- /dev/null +++ b/gemfiles/7.2.gemfile @@ -0,0 +1,9 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "activerecord-jdbcsqlite3-adapter", platforms: [:jruby] +gem "sqlite3", platforms: [:ruby] +gem "activerecord", "~> 7.2.0" + +gemspec name: "factory_bot", path: "../" diff --git a/gemfiles/7.2.gemfile.lock b/gemfiles/7.2.gemfile.lock new file mode 100644 index 00000000..ebec94c0 --- /dev/null +++ b/gemfiles/7.2.gemfile.lock @@ -0,0 +1,174 @@ +PATH + remote: .. + specs: + factory_bot (6.4.6) + activesupport (>= 5.0.0) + +GEM + remote: https://rubygems.org/ + specs: + activemodel (7.2.0) + activesupport (= 7.2.0) + activerecord (7.2.0) + activemodel (= 7.2.0) + activesupport (= 7.2.0) + timeout (>= 0.4.0) + activesupport (7.2.0) + base64 + bigdecimal + concurrent-ruby (~> 1.0, >= 1.3.1) + connection_pool (>= 2.2.5) + drb + i18n (>= 1.6, < 2) + logger (>= 1.4.2) + minitest (>= 5.1) + securerandom (>= 0.3) + tzinfo (~> 2.0, >= 2.0.5) + appraisal (2.5.0) + bundler + rake + thor (>= 0.14.0) + aruba (2.2.0) + bundler (>= 1.17, < 3.0) + contracts (>= 0.16.0, < 0.18.0) + cucumber (>= 8.0, < 10.0) + rspec-expectations (~> 3.4) + thor (~> 1.0) + ast (2.4.2) + base64 (0.2.0) + bigdecimal (3.1.8) + builder (3.3.0) + concurrent-ruby (1.3.4) + connection_pool (2.4.1) + contracts (0.17) + cucumber (9.2.0) + builder (~> 3.2) + cucumber-ci-environment (> 9, < 11) + cucumber-core (> 13, < 14) + cucumber-cucumber-expressions (~> 17.0) + cucumber-gherkin (> 24, < 28) + cucumber-html-formatter (> 20.3, < 22) + cucumber-messages (> 19, < 25) + diff-lcs (~> 1.5) + mini_mime (~> 1.1) + multi_test (~> 1.1) + sys-uname (~> 1.2) + cucumber-ci-environment (10.0.1) + cucumber-core (13.0.3) + cucumber-gherkin (>= 27, < 28) + cucumber-messages (>= 20, < 23) + cucumber-tag-expressions (> 5, < 7) + cucumber-cucumber-expressions (17.1.0) + bigdecimal + cucumber-gherkin (27.0.0) + cucumber-messages (>= 19.1.4, < 23) + cucumber-html-formatter (21.7.0) + cucumber-messages (> 19, < 27) + cucumber-messages (22.0.0) + cucumber-tag-expressions (6.1.0) + diff-lcs (1.5.1) + docile (1.4.1) + drb (2.2.1) + ffi (1.17.0-x86_64-linux-gnu) + i18n (1.14.5) + concurrent-ruby (~> 1.0) + json (2.7.2) + language_server-protocol (3.17.0.3) + lint_roller (1.1.0) + logger (1.6.0) + mini_mime (1.1.5) + minitest (5.24.1) + multi_test (1.1.0) + parallel (1.26.2) + parser (3.3.4.2) + ast (~> 2.4.1) + racc + racc (1.8.1) + rainbow (3.1.1) + rake (13.2.1) + regexp_parser (2.9.2) + rexml (3.3.5) + strscan + rspec (3.13.0) + rspec-core (~> 3.13.0) + rspec-expectations (~> 3.13.0) + rspec-mocks (~> 3.13.0) + rspec-core (3.13.0) + rspec-support (~> 3.13.0) + rspec-expectations (3.13.1) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-its (1.3.0) + rspec-core (>= 3.0.0) + rspec-expectations (>= 3.0.0) + rspec-mocks (3.13.1) + diff-lcs (>= 1.2.0, < 2.0) + rspec-support (~> 3.13.0) + rspec-support (3.13.1) + rubocop (1.64.1) + json (~> 2.3) + language_server-protocol (>= 3.17.0) + parallel (~> 1.10) + parser (>= 3.3.0.2) + rainbow (>= 2.2.2, < 4.0) + regexp_parser (>= 1.8, < 3.0) + rexml (>= 3.2.5, < 4.0) + rubocop-ast (>= 1.31.1, < 2.0) + ruby-progressbar (~> 1.7) + unicode-display_width (>= 2.4.0, < 3.0) + rubocop-ast (1.32.0) + parser (>= 3.3.1.0) + rubocop-performance (1.21.1) + rubocop (>= 1.48.1, < 2.0) + rubocop-ast (>= 1.31.1, < 2.0) + ruby-progressbar (1.13.0) + securerandom (0.3.1) + simplecov (0.22.0) + docile (~> 1.1) + simplecov-html (~> 0.11) + simplecov_json_formatter (~> 0.1) + simplecov-html (0.12.3) + simplecov_json_formatter (0.1.4) + sqlite3 (2.0.3-x86_64-linux-gnu) + standard (1.39.2) + language_server-protocol (~> 3.17.0.2) + lint_roller (~> 1.0) + rubocop (~> 1.64.0) + standard-custom (~> 1.0.0) + standard-performance (~> 1.4) + standard-custom (1.0.2) + lint_roller (~> 1.0) + rubocop (~> 1.50) + standard-performance (1.4.0) + lint_roller (~> 1.1) + rubocop-performance (~> 1.21.0) + strscan (3.1.0) + sys-uname (1.3.0) + ffi (~> 1.1) + thor (1.3.1) + timeout (0.4.1) + tzinfo (2.0.6) + concurrent-ruby (~> 1.0) + unicode-display_width (2.5.0) + yard (0.9.36) + +PLATFORMS + x86_64-linux + +DEPENDENCIES + activerecord (~> 7.2.0) + activerecord-jdbcsqlite3-adapter + appraisal + aruba + cucumber + factory_bot! + rake + rspec + rspec-its + simplecov + sqlite3 + standard + yard + +BUNDLED WITH + 2.5.16 diff --git a/gemfiles/main.gemfile.lock b/gemfiles/main.gemfile.lock index 42beb6d4..8e8dd2ef 100644 --- a/gemfiles/main.gemfile.lock +++ b/gemfiles/main.gemfile.lock @@ -1,22 +1,24 @@ GIT remote: https://github.com/rails/rails.git - revision: 5621c93bfc8e8aefab90223dcf0edf4b10e5dcf6 + revision: a32822f6ae15a64ad0290cce65598e4466b880ff branch: main specs: - activemodel (7.2.0.alpha) - activesupport (= 7.2.0.alpha) - activerecord (7.2.0.alpha) - activemodel (= 7.2.0.alpha) - activesupport (= 7.2.0.alpha) + activemodel (8.0.0.alpha) + activesupport (= 8.0.0.alpha) + activerecord (8.0.0.alpha) + activemodel (= 8.0.0.alpha) + activesupport (= 8.0.0.alpha) timeout (>= 0.4.0) - activesupport (7.2.0.alpha) + activesupport (8.0.0.alpha) base64 bigdecimal - concurrent-ruby (~> 1.0, >= 1.0.2) + concurrent-ruby (~> 1.0, >= 1.3.1) connection_pool (>= 2.2.5) drb i18n (>= 1.6, < 2) + logger (>= 1.4.2) minitest (>= 5.1) + securerandom (>= 0.3) tzinfo (~> 2.0, >= 2.0.5) PATH @@ -40,120 +42,125 @@ GEM thor (~> 1.0) ast (2.4.2) base64 (0.2.0) - bigdecimal (3.1.4) - builder (3.2.4) - concurrent-ruby (1.2.2) + bigdecimal (3.1.8) + builder (3.3.0) + concurrent-ruby (1.3.4) connection_pool (2.4.1) contracts (0.17) - cucumber (9.1.0) - builder (~> 3.2, >= 3.2.4) - cucumber-ci-environment (~> 9.2, >= 9.2.0) - cucumber-core (~> 12.0) + cucumber (9.2.0) + builder (~> 3.2) + cucumber-ci-environment (> 9, < 11) + cucumber-core (> 13, < 14) cucumber-cucumber-expressions (~> 17.0) - cucumber-gherkin (>= 24, < 27) - cucumber-html-formatter (~> 20.4, >= 20.4.0) - cucumber-messages (>= 19, < 23) - diff-lcs (~> 1.5, >= 1.5.0) - mini_mime (~> 1.1, >= 1.1.5) - multi_test (~> 1.1, >= 1.1.0) - sys-uname (~> 1.2, >= 1.2.3) - cucumber-ci-environment (9.2.0) - cucumber-core (12.0.0) - cucumber-gherkin (>= 25, < 27) + cucumber-gherkin (> 24, < 28) + cucumber-html-formatter (> 20.3, < 22) + cucumber-messages (> 19, < 25) + diff-lcs (~> 1.5) + mini_mime (~> 1.1) + multi_test (~> 1.1) + sys-uname (~> 1.2) + cucumber-ci-environment (10.0.1) + cucumber-core (13.0.3) + cucumber-gherkin (>= 27, < 28) cucumber-messages (>= 20, < 23) - cucumber-tag-expressions (~> 5.0, >= 5.0.4) - cucumber-cucumber-expressions (17.0.1) - cucumber-gherkin (26.2.0) - cucumber-messages (>= 19.1.4, < 22.1) - cucumber-html-formatter (20.4.0) - cucumber-messages (>= 18.0, < 22.1) + cucumber-tag-expressions (> 5, < 7) + cucumber-cucumber-expressions (17.1.0) + bigdecimal + cucumber-gherkin (27.0.0) + cucumber-messages (>= 19.1.4, < 23) + cucumber-html-formatter (21.7.0) + cucumber-messages (> 19, < 27) cucumber-messages (22.0.0) - cucumber-tag-expressions (5.0.6) - diff-lcs (1.5.0) - docile (1.4.0) - drb (2.2.0) - ruby2_keywords - ffi (1.16.3) - i18n (1.14.1) + cucumber-tag-expressions (6.1.0) + diff-lcs (1.5.1) + docile (1.4.1) + drb (2.2.1) + ffi (1.17.0) + ffi (1.17.0-x86_64-linux-gnu) + i18n (1.14.5) concurrent-ruby (~> 1.0) - json (2.7.1) + json (2.7.2) language_server-protocol (3.17.0.3) lint_roller (1.1.0) + logger (1.6.0) mini_mime (1.1.5) - mini_portile2 (2.8.5) - minitest (5.20.0) + mini_portile2 (2.8.7) + minitest (5.24.1) multi_test (1.1.0) - parallel (1.23.0) - parser (3.2.2.4) + parallel (1.26.2) + parser (3.3.4.2) ast (~> 2.4.1) racc - racc (1.7.3) + racc (1.8.1) rainbow (3.1.1) - rake (13.1.0) - regexp_parser (2.8.3) - rexml (3.2.6) - rspec (3.12.0) - rspec-core (~> 3.12.0) - rspec-expectations (~> 3.12.0) - rspec-mocks (~> 3.12.0) - rspec-core (3.12.2) - rspec-support (~> 3.12.0) - rspec-expectations (3.12.3) + rake (13.2.1) + regexp_parser (2.9.2) + rexml (3.3.5) + strscan + rspec (3.13.0) + rspec-core (~> 3.13.0) + rspec-expectations (~> 3.13.0) + rspec-mocks (~> 3.13.0) + rspec-core (3.13.0) + rspec-support (~> 3.13.0) + rspec-expectations (3.13.1) diff-lcs (>= 1.2.0, < 2.0) - rspec-support (~> 3.12.0) + rspec-support (~> 3.13.0) rspec-its (1.3.0) rspec-core (>= 3.0.0) rspec-expectations (>= 3.0.0) - rspec-mocks (3.12.6) + rspec-mocks (3.13.1) diff-lcs (>= 1.2.0, < 2.0) - rspec-support (~> 3.12.0) - rspec-support (3.12.1) - rubocop (1.57.2) + rspec-support (~> 3.13.0) + rspec-support (3.13.1) + rubocop (1.64.1) json (~> 2.3) language_server-protocol (>= 3.17.0) parallel (~> 1.10) - parser (>= 3.2.2.4) + parser (>= 3.3.0.2) rainbow (>= 2.2.2, < 4.0) regexp_parser (>= 1.8, < 3.0) rexml (>= 3.2.5, < 4.0) - rubocop-ast (>= 1.28.1, < 2.0) + rubocop-ast (>= 1.31.1, < 2.0) ruby-progressbar (~> 1.7) unicode-display_width (>= 2.4.0, < 3.0) - rubocop-ast (1.30.0) - parser (>= 3.2.1.0) - rubocop-performance (1.19.1) - rubocop (>= 1.7.0, < 2.0) - rubocop-ast (>= 0.4.0) + rubocop-ast (1.32.0) + parser (>= 3.3.1.0) + rubocop-performance (1.21.1) + rubocop (>= 1.48.1, < 2.0) + rubocop-ast (>= 1.31.1, < 2.0) ruby-progressbar (1.13.0) - ruby2_keywords (0.0.5) + securerandom (0.3.1) simplecov (0.22.0) docile (~> 1.1) simplecov-html (~> 0.11) simplecov_json_formatter (~> 0.1) simplecov-html (0.12.3) simplecov_json_formatter (0.1.4) - sqlite3 (1.6.9) + sqlite3 (2.0.3) mini_portile2 (~> 2.8.0) - standard (1.32.1) + sqlite3 (2.0.3-x86_64-linux-gnu) + standard (1.39.2) language_server-protocol (~> 3.17.0.2) lint_roller (~> 1.0) - rubocop (~> 1.57.2) + rubocop (~> 1.64.0) standard-custom (~> 1.0.0) - standard-performance (~> 1.2) + standard-performance (~> 1.4) standard-custom (1.0.2) lint_roller (~> 1.0) rubocop (~> 1.50) - standard-performance (1.2.1) + standard-performance (1.4.0) lint_roller (~> 1.1) - rubocop-performance (~> 1.19.1) - sys-uname (1.2.3) + rubocop-performance (~> 1.21.0) + strscan (3.1.0) + sys-uname (1.3.0) ffi (~> 1.1) - thor (1.3.0) + thor (1.3.1) timeout (0.4.1) tzinfo (2.0.6) concurrent-ruby (~> 1.0) unicode-display_width (2.5.0) - yard (0.9.34) + yard (0.9.36) PLATFORMS ruby diff --git a/lib/factory_bot.rb b/lib/factory_bot.rb index 3d76cd9e..b5c75145 100644 --- a/lib/factory_bot.rb +++ b/lib/factory_bot.rb @@ -1,4 +1,5 @@ require "set" +require "active_support" require "active_support/core_ext/module/delegation" require "active_support/core_ext/module/attribute_accessors" require "active_support/deprecation" diff --git a/spec/acceptance/enum_traits_spec.rb b/spec/acceptance/enum_traits_spec.rb index 3f347251..5c6a20ec 100644 --- a/spec/acceptance/enum_traits_spec.rb +++ b/spec/acceptance/enum_traits_spec.rb @@ -1,9 +1,17 @@ describe "enum traits" do + def define_model_with_enum(class_name, field, values) + define_model(class_name, status: :integer) do + if ActiveRecord::VERSION::STRING >= "7.0" + enum field, values + else + enum field => values + end + end + end + context "when automatically_define_enum_traits is true" do it "builds traits automatically for model enum field" do - define_model("Task", status: :integer) do - enum status: {queued: 0, started: 1, finished: 2} - end + define_model_with_enum("Task", :status, {queued: 0, started: 1, finished: 2}) FactoryBot.define do factory :task @@ -19,9 +27,7 @@ end it "prefers user defined traits over automatically built traits" do - define_model("Task", status: :integer) do - enum status: {queued: 0, started: 1, finished: 2} - end + define_model_with_enum("Task", :status, {queued: 0, started: 1, finished: 2}) FactoryBot.define do factory :task do @@ -118,9 +124,7 @@ def each(&block) context "when automatically_define_enum_traits is false" do it "raises an error for undefined traits" do with_temporary_assignment(FactoryBot, :automatically_define_enum_traits, false) do - define_model("Task", status: :integer) do - enum status: {queued: 0, started: 1, finished: 2} - end + define_model_with_enum("Task", :status, {queued: 0, started: 1, finished: 2}) FactoryBot.define do factory :task @@ -138,9 +142,7 @@ def each(&block) it "builds traits for each enumerated value when traits_for_enum are specified" do with_temporary_assignment(FactoryBot, :automatically_define_enum_traits, false) do - define_model("Task", status: :integer) do - enum status: {queued: 0, started: 1, finished: 2} - end + define_model_with_enum("Task", :status, {queued: 0, started: 1, finished: 2}) FactoryBot.define do factory :task do