diff --git a/.dockerignore b/.dockerignore index efbe56bf9f..d50e7b1245 100644 --- a/.dockerignore +++ b/.dockerignore @@ -26,7 +26,6 @@ features help log/*.log spec -spec_legacy tmp frontend/node_modules node_modules diff --git a/Gemfile b/Gemfile index 5a6c16906f..a925e989ec 100644 --- a/Gemfile +++ b/Gemfile @@ -216,7 +216,6 @@ group :test do # and other niceties gem 'test-prof', '~> 1.0.0' - gem 'database_cleaner', '~> 2.0' # only useful for legacy_spec gem 'rack_session_access' gem 'rspec', '~> 3.11.0' # also add to development group, so "spec" rake task gets loaded diff --git a/Gemfile.lock b/Gemfile.lock index 1262f21c5b..2ad26aa1e9 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -391,12 +391,6 @@ GEM danger-plugin-api (~> 1.0) danger-plugin-api (1.0.0) danger (> 2.0) - database_cleaner (2.0.1) - database_cleaner-active_record (~> 2.0.0) - database_cleaner-active_record (2.0.1) - activerecord (>= 5.a) - database_cleaner-core (~> 2.0.0) - database_cleaner-core (2.0.1) date_validator (0.12.0) activemodel (>= 3) activesupport (>= 3) @@ -1034,7 +1028,6 @@ DEPENDENCIES dalli (~> 3.2.0) danger-brakeman dashboards! - database_cleaner (~> 2.0) date_validator (~> 0.12.0) deckar01-task_list (~> 2.3.1) delayed_cron_job (~> 0.9.0) diff --git a/docker/ci/entrypoint.sh b/docker/ci/entrypoint.sh index a225fcc7b7..daf7d4ad37 100755 --- a/docker/ci/entrypoint.sh +++ b/docker/ci/entrypoint.sh @@ -62,7 +62,6 @@ if [ "$1" == "run-units" ]; then shift execute "time bundle exec rake zeitwerk:check" execute "cd frontend && npm install && npm run test" - execute "time bundle exec rspec -I spec_legacy spec_legacy" if ! execute "time bundle exec rake parallel:units" ; then execute "cat tmp/parallel_summary.log" cleanup diff --git a/docs/development/running-tests/README.md b/docs/development/running-tests/README.md index a2f483544e..c986b1403e 100644 --- a/docs/development/running-tests/README.md +++ b/docs/development/running-tests/README.md @@ -71,12 +71,6 @@ You will be able to run failing tests locally in a similar fashion for all error -**Errors in the legacy specs** - -For the `legacy specs` job, please [see the section on running legacy specs](#legacy-specs). - - - **Helper to extract all failing tests** There is a small ruby script that will parse the logs of a GitHub Actions run and output all `rspec` tests that failed for you to run in one command. @@ -85,8 +79,6 @@ There is a small ruby script that will parse the logs of a GitHub Actions run an ./script/github_pr_errors ``` -Note that it will output legacy specs and specs together, which need to be run separately. - ## Tests failing on GitHub Actions CI and passing locally @@ -354,19 +346,6 @@ You can run the specs with the following commands: * `SPEC_OPTS="--seed 12935" bundle exec rake spec` Run the core specs with the seed 12935. Use this to control in what order the tests are run to identify order-dependent failures. You will find the seed that GitHub Actions CI used in their log output. - -## Legacy specs - -**Note:** *We do not write new tests in this category. Tests are expected to be removed from these two groups whenever they break.* - -The legacy specs use `minitest` and reside under `spec_legacy/` in the application root. No new tests are to be added here, but old ones removed whenever we refactor code. - -To run all legacy specs, use this command: - -```bash -RAILS_ENV=test bundle exec rake spec -I spec_legacy spec_legacy/ -``` - ## Parallel testing Running tests in parallel makes usage of all available cores of the machine. diff --git a/lib/tasks/parallel_testing.rake b/lib/tasks/parallel_testing.rake index b1e8ace25e..279eb511f1 100644 --- a/lib/tasks/parallel_testing.rake +++ b/lib/tasks/parallel_testing.rake @@ -110,7 +110,6 @@ namespace :parallel do desc 'Run all suites in parallel (one after another)' task all: ['parallel:plugins:specs', 'parallel:plugins:features', - :spec_legacy, :rspec] namespace :plugins do @@ -150,15 +149,6 @@ namespace :parallel do end end - desc 'Run legacy specs in parallel' - task :spec_legacy do - ParallelParser.with_args(ARGV) do |options| - ARGV.each { |a| task(a.to_sym) {} } - - run_specs options, 'spec_legacy', '', additional_options: '-I spec_legacy' - end - end - desc 'Run spec in parallel (custom task)' task :specs do ParallelParser.with_args(ARGV) do |options| diff --git a/lib/tasks/testing.rake b/lib/tasks/testing.rake index 3ba140fc0f..b10847fd8c 100644 --- a/lib/tasks/testing.rake +++ b/lib/tasks/testing.rake @@ -29,31 +29,10 @@ namespace :test do desc 'runs all tests' namespace :suite do - task run: [:spec, 'spec:legacy'] + task run: [:spec] end end -task('spec:legacy').clear - -namespace :spec do - require 'rspec/core/rake_task' - - desc 'Run the code examples in spec_legacy' - task legacy: %w(legacy:unit legacy:functional legacy:integration) - namespace :legacy do - %w(unit functional integration).each do |type| - desc "Run the code examples in spec_legacy/#{type}" - RSpec::Core::RakeTask.new(type => 'spec:prepare') do |t| - t.pattern = "spec_legacy/#{type}/**/*_spec.rb" - t.rspec_opts = '-I spec_legacy' - end - end - end -rescue LoadError - # when you bundle without development and test (e.g. to create a deployment - # artefact) still all tasks get loaded. To avoid an error we rescue here. -end - %w(spec).each do |type| if Rake::Task.task_defined?("#{type}:prepare") Rake::Task["#{type}:prepare"].enhance(['assets:prepare_op']) diff --git a/nix/gemset.nix b/nix/gemset.nix index a0f338ed24..42eed32f42 100644 --- a/nix/gemset.nix +++ b/nix/gemset.nix @@ -801,38 +801,6 @@ }; version = "1.0.0"; }; - database_cleaner = { - dependencies = ["database_cleaner-active_record"]; - groups = ["test"]; - platforms = []; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "1x4r22rnpwnm9yln88vhzqj4cl3sbd26c4j50g9k6wp7y01rln4w"; - type = "gem"; - }; - version = "2.0.1"; - }; - database_cleaner-active_record = { - dependencies = ["activerecord" "database_cleaner-core"]; - groups = ["default" "test"]; - platforms = []; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "1jg7jd7w65hdarzbi8f252la3qgsnd2sjavhlmc82kwzfx37k38m"; - type = "gem"; - }; - version = "2.0.0"; - }; - database_cleaner-core = { - groups = ["default" "test"]; - platforms = []; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "0v44bn386ipjjh4m2kl53dal8g4d41xajn2jggnmjbhn6965fil6"; - type = "gem"; - }; - version = "2.0.1"; - }; date_validator = { dependencies = ["activemodel" "activesupport"]; groups = ["default"]; diff --git a/spec_legacy/fixtures/enabled_modules.yml b/spec_legacy/fixtures/enabled_modules.yml deleted file mode 100644 index 71d24d4b85..0000000000 --- a/spec_legacy/fixtures/enabled_modules.yml +++ /dev/null @@ -1,125 +0,0 @@ -#-- copyright -# OpenProject is an open source project management software. -# Copyright (C) 2012-2022 the OpenProject GmbH -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License version 3. -# -# OpenProject is a fork of ChiliProject, which is a fork of Redmine. The copyright follows: -# Copyright (C) 2006-2013 Jean-Philippe Lang -# Copyright (C) 2010-2013 the ChiliProject Team -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# See COPYRIGHT and LICENSE files for more details. -#++ - ---- -enabled_modules_001: - name: work_package_tracking - project_id: 1 - id: 1 -enabled_modules_002: - name: costs - project_id: 1 - id: 2 -enabled_modules_003: - name: news - project_id: 1 - id: 3 -enabled_modules_006: - name: wiki - project_id: 1 - id: 6 -enabled_modules_007: - name: repository - project_id: 1 - id: 7 -enabled_modules_008: - name: forums - project_id: 1 - id: 8 -enabled_modules_009: - name: repository - project_id: 3 - id: 9 -enabled_modules_010: - name: wiki - project_id: 3 - id: 10 -enabled_modules_011: - name: work_package_tracking - project_id: 2 - id: 11 -enabled_modules_012: - name: costs - project_id: 3 - id: 12 -enabled_modules_013: - name: work_package_tracking - project_id: 3 - id: 13 -enabled_modules_014: - name: work_package_tracking - project_id: 5 - id: 14 -enabled_modules_015: - name: wiki - project_id: 2 - id: 15 -enabled_modules_016: - name: forums - project_id: 2 - id: 16 -enabled_modules_017: - name: calendar - project_id: 1 - id: 17 -enabled_modules_019: - name: calendar - project_id: 2 - id: 19 -enabled_modules_021: - name: calendar - project_id: 3 - id: 21 -enabled_modules_023: - name: calendar - project_id: 5 - id: 23 -enabled_modules_025: - name: news - project_id: 2 - id: 25 -enabled_modules_026: - name: activity - project_id: 1 - id: 26 -enabled_modules_027: - name: activity - project_id: 2 - id: 27 -enabled_modules_028: - name: activity - project_id: 3 - id: 28 -enabled_modules_029: - name: activity - project_id: 4 - id: 29 -enabled_modules_030: - name: activity - project_id: 5 - id: 30 diff --git a/spec_legacy/fixtures/enumerations.yml b/spec_legacy/fixtures/enumerations.yml deleted file mode 100644 index 0a8c6ac6cb..0000000000 --- a/spec_legacy/fixtures/enumerations.yml +++ /dev/null @@ -1,96 +0,0 @@ -#-- copyright -# OpenProject is an open source project management software. -# Copyright (C) 2012-2022 the OpenProject GmbH -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License version 3. -# -# OpenProject is a fork of ChiliProject, which is a fork of Redmine. The copyright follows: -# Copyright (C) 2006-2013 Jean-Philippe Lang -# Copyright (C) 2010-2013 the ChiliProject Team -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# See COPYRIGHT and LICENSE files for more details. -#++ - ---- -enumerations_004: - name: Low - id: 4 - type: IssuePriority - active: true - position: 1 -enumerations_005: - name: Normal - id: 5 - type: IssuePriority - is_default: true - active: true - position: 2 -enumerations_006: - name: High - id: 6 - type: IssuePriority - active: true - position: 3 -enumerations_007: - name: Urgent - id: 7 - type: IssuePriority - active: true - position: 4 -enumerations_008: - name: Immediate - id: 8 - type: IssuePriority - active: true - position: 5 -enumerations_009: - name: Design - id: 9 - type: TimeEntryActivity - position: 1 - active: true -enumerations_010: - name: Development - id: 10 - type: TimeEntryActivity - position: 2 - is_default: true - active: true -enumerations_011: - name: QA - id: 11 - type: TimeEntryActivity - position: 3 - active: true -enumerations_012: - name: Default Enumeration - id: 12 - type: Enumeration - is_default: true - active: true -enumerations_013: - name: Another Enumeration - id: 13 - type: Enumeration - active: true -enumerations_014: - name: Inactive Activity - id: 14 - type: TimeEntryActivity - position: 4 - active: false diff --git a/spec_legacy/fixtures/member_roles.yml b/spec_legacy/fixtures/member_roles.yml deleted file mode 100644 index 7a3441dfa4..0000000000 --- a/spec_legacy/fixtures/member_roles.yml +++ /dev/null @@ -1,77 +0,0 @@ -#-- copyright -# OpenProject is an open source project management software. -# Copyright (C) 2012-2022 the OpenProject GmbH -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License version 3. -# -# OpenProject is a fork of ChiliProject, which is a fork of Redmine. The copyright follows: -# Copyright (C) 2006-2013 Jean-Philippe Lang -# Copyright (C) 2010-2013 the ChiliProject Team -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# See COPYRIGHT and LICENSE files for more details. -#++ - ---- -member_roles_001: - id: 1 - role_id: 1 - member_id: 1 -member_roles_002: - id: 2 - role_id: 2 - member_id: 2 -member_roles_003: - id: 3 - role_id: 2 - member_id: 3 -member_roles_004: - id: 4 - role_id: 2 - member_id: 4 -member_roles_005: - id: 5 - role_id: 1 - member_id: 5 -member_roles_006: - id: 6 - role_id: 1 - member_id: 6 -member_roles_007: - id: 7 - role_id: 2 - member_id: 6 -member_roles_008: - id: 8 - role_id: 1 - member_id: 7 - inherited_from: 6 -member_roles_009: - id: 9 - role_id: 2 - member_id: 7 - inherited_from: 7 -member_roles_010: - id: 10 - role_id: 2 - member_id: 9 - inherited_from: -member_roles_011: - id: 11 - role_id: 2 - member_id: 10 - inherited_from: 10 diff --git a/spec_legacy/fixtures/members.yml b/spec_legacy/fixtures/members.yml deleted file mode 100644 index c8379d83c9..0000000000 --- a/spec_legacy/fixtures/members.yml +++ /dev/null @@ -1,90 +0,0 @@ -#-- copyright -# OpenProject is an open source project management software. -# Copyright (C) 2012-2022 the OpenProject GmbH -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License version 3. -# -# OpenProject is a fork of ChiliProject, which is a fork of Redmine. The copyright follows: -# Copyright (C) 2006-2013 Jean-Philippe Lang -# Copyright (C) 2010-2013 the ChiliProject Team -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# See COPYRIGHT and LICENSE files for more details. -#++ - ---- -members_001: - created_at: 2006-07-19 19:35:33 +02:00 - updated_at: 2006-07-19 19:35:33 +02:00 - project_id: 1 - id: 1 - user_id: 2 -members_002: - created_at: 2006-07-19 19:35:36 +02:00 - updated_at: 2006-07-19 19:35:36 +02:00 - project_id: 1 - id: 2 - user_id: 3 -members_003: - created_at: 2006-07-19 19:35:36 +02:00 - updated_at: 2006-07-19 19:35:36 +02:00 - project_id: 2 - id: 3 - user_id: 2 -members_004: - id: 4 - created_at: 2006-07-19 19:35:36 +02:00 - updated_at: 2006-07-19 19:35:36 +02:00 - project_id: 1 - # Locked user - user_id: 5 -members_005: - id: 5 - created_at: 2006-07-19 19:35:33 +02:00 - updated_at: 2006-07-19 19:35:33 +02:00 - project_id: 5 - user_id: 2 -members_006: - id: 6 - created_at: 2006-07-19 19:35:33 +02:00 - updated_at: 2006-07-19 19:35:33 +02:00 - project_id: 5 - user_id: 10 -members_007: - id: 7 - created_at: 2006-07-19 19:35:33 +02:00 - updated_at: 2006-07-19 19:35:33 +02:00 - project_id: 5 - user_id: 8 -members_008: - created_at: 2006-07-19 19:35:33 +02:00 - updated_at: 2006-07-19 19:35:33 +02:00 - project_id: 5 - id: 8 - user_id: 1 -members_009: - id: 9 - created_at: 2006-07-19 19:35:33 +02:00 - updated_at: 2006-07-19 19:35:33 +02:00 - project_id: 2 - user_id: 11 -members_010: - id: 10 - created_at: 2006-07-19 19:35:33 +02:00 - updated_at: 2006-07-19 19:35:33 +02:00 - project_id: 2 - user_id: 8 diff --git a/spec_legacy/fixtures/projects.yml b/spec_legacy/fixtures/projects.yml deleted file mode 100644 index 3199bf54be..0000000000 --- a/spec_legacy/fixtures/projects.yml +++ /dev/null @@ -1,96 +0,0 @@ -#-- copyright -# OpenProject is an open source project management software. -# Copyright (C) 2012-2022 the OpenProject GmbH -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License version 3. -# -# OpenProject is a fork of ChiliProject, which is a fork of Redmine. The copyright follows: -# Copyright (C) 2006-2013 Jean-Philippe Lang -# Copyright (C) 2010-2013 the ChiliProject Team -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# See COPYRIGHT and LICENSE files for more details. -#++ - ---- -projects_001: - created_at: 2006-07-19 19:13:59 +02:00 - name: eCookbook - updated_at: 2006-07-19 22:53:01 +02:00 - id: 1 - description: Recipes management application - public: true - identifier: ecookbook - parent_id: - lft: 1 - rgt: 10 -projects_002: - created_at: 2006-07-19 19:14:19 +02:00 - name: OnlineStore - updated_at: 2006-07-19 19:14:19 +02:00 - id: 2 - description: E-commerce web site - public: false - identifier: onlinestore - parent_id: - lft: 11 - rgt: 12 -projects_003: - created_at: 2006-07-19 19:15:21 +02:00 - name: eCookbook Subproject 1 - updated_at: 2006-07-19 19:18:12 +02:00 - id: 3 - description: eCookBook Subproject 1 - public: true - identifier: subproject1 - parent_id: 1 - lft: 6 - rgt: 7 -projects_004: - created_at: 2006-07-19 19:15:51 +02:00 - name: eCookbook Subproject 2 - updated_at: 2006-07-19 19:17:07 +02:00 - id: 4 - description: eCookbook Subproject 2 - public: true - identifier: subproject2 - parent_id: 1 - lft: 8 - rgt: 9 -projects_005: - created_at: 2006-07-19 19:15:51 +02:00 - name: Private child of eCookbook - updated_at: 2006-07-19 19:17:07 +02:00 - id: 5 - description: This is a private subproject of a public project - public: false - identifier: private-child - parent_id: 1 - lft: 2 - rgt: 5 -projects_006: - created_at: 2006-07-19 19:15:51 +02:00 - name: Child of private child - updated_at: 2006-07-19 19:17:07 +02:00 - id: 6 - description: This is a public subproject of a private project - public: true - identifier: project6 - parent_id: 5 - lft: 3 - rgt: 4 - diff --git a/spec_legacy/fixtures/projects_types.yml b/spec_legacy/fixtures/projects_types.yml deleted file mode 100644 index 44fb12e637..0000000000 --- a/spec_legacy/fixtures/projects_types.yml +++ /dev/null @@ -1,76 +0,0 @@ -#-- copyright -# OpenProject is an open source project management software. -# Copyright (C) 2012-2022 the OpenProject GmbH -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License version 3. -# -# OpenProject is a fork of ChiliProject, which is a fork of Redmine. The copyright follows: -# Copyright (C) 2006-2013 Jean-Philippe Lang -# Copyright (C) 2010-2013 the ChiliProject Team -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# See COPYRIGHT and LICENSE files for more details. -#++ - ---- -projects_types_001: - project_id: 4 - type_id: 3 -projects_types_002: - project_id: 1 - type_id: 1 -projects_types_003: - project_id: 5 - type_id: 1 -projects_types_004: - project_id: 1 - type_id: 2 -projects_types_005: - project_id: 5 - type_id: 2 -projects_types_006: - project_id: 5 - type_id: 3 -projects_types_007: - project_id: 2 - type_id: 1 -projects_types_008: - project_id: 2 - type_id: 2 -projects_types_009: - project_id: 2 - type_id: 3 -projects_types_010: - project_id: 3 - type_id: 2 -projects_types_011: - project_id: 3 - type_id: 3 -projects_types_012: - project_id: 4 - type_id: 1 -projects_types_013: - project_id: 4 - type_id: 2 -projects_types_014: - project_id: 1 - type_id: 3 -projects_types_015: - project_id: 6 - type_id: 999 - - diff --git a/spec_legacy/fixtures/relations.yml b/spec_legacy/fixtures/relations.yml deleted file mode 100644 index 03c9806b22..0000000000 --- a/spec_legacy/fixtures/relations.yml +++ /dev/null @@ -1,40 +0,0 @@ -#-- copyright -# OpenProject is an open source project management software. -# Copyright (C) 2012-2022 the OpenProject GmbH -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License version 3. -# -# OpenProject is a fork of ChiliProject, which is a fork of Redmine. The copyright follows: -# Copyright (C) 2006-2013 Jean-Philippe Lang -# Copyright (C) 2010-2013 the ChiliProject Team -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# See COPYRIGHT and LICENSE files for more details. -#++ - -relation_001: - id: 1 - from_id: 10 - to_id: 9 - relation_type: 'blocks' - delay: -relation_002: - id: 2 - from_id: 2 - to_id: 3 - relation_type: 'relates' - delay: diff --git a/spec_legacy/fixtures/role_permissions.yml b/spec_legacy/fixtures/role_permissions.yml deleted file mode 100644 index b7f78e83b0..0000000000 --- a/spec_legacy/fixtures/role_permissions.yml +++ /dev/null @@ -1,561 +0,0 @@ -#-- copyright -# OpenProject is an open source project management software. -# Copyright (C) 2012-2022 the OpenProject GmbH -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License version 3. -# -# OpenProject is a fork of ChiliProject, which is a fork of Redmine. The copyright follows: -# Copyright (C) 2006-2013 Jean-Philippe Lang -# Copyright (C) 2010-2013 the ChiliProject Team -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# See COPYRIGHT and LICENSE files for more details. -#++ - ---- -role_permission001: - id: 1 - role_id: 1 - permission: 'add_project' -role_permission002: - id: 2 - role_id: 1 - permission: 'edit_project' -role_permission003: - id: 3 - role_id: 1 - permission: 'select_project_modules' -role_permission004: - id: 4 - role_id: 1 - permission: 'manage_members' -role_permission005: - id: 5 - role_id: 1 - permission: 'manage_versions' -role_permission006: - id: 6 - role_id: 1 - permission: 'manage_categories' -role_permission007: - id: 7 - role_id: 1 - permission: 'view_work_packages' -role_permission008: - id: 8 - role_id: 1 - permission: 'add_work_packages' -role_permission009: - id: 9 - role_id: 1 - permission: 'edit_work_packages' -role_permission010: - id: 10 - role_id: 1 - permission: 'manage_work_package_relations' -role_permission011: - id: 11 - role_id: 1 - permission: 'manage_subtasks' -role_permission012: - id: 12 - role_id: 1 - permission: 'add_work_package_notes' -role_permission013: - id: 13 - role_id: 1 - permission: 'move_work_package' -role_permission014: - id: 14 - role_id: 1 - permission: 'move_work_packages' -role_permission015: - id: 15 - role_id: 1 - permission: 'delete_work_packages' -role_permission016: - id: 16 - role_id: 1 - permission: 'view_work_package_watchers' -role_permission017: - id: 17 - role_id: 1 - permission: 'add_work_package_watchers' -role_permission018: - id: 18 - role_id: 1 - permission: 'delete_work_package_watchers' -role_permission019: - id: 19 - role_id: 1 - permission: 'manage_public_queries' -role_permission020: - id: 20 - role_id: 1 - permission: 'save_queries' -role_permission021: - id: 21 - role_id: 1 - permission: 'view_calendar' -role_permission022: - id: 22 - role_id: 1 - permission: 'log_own_time' -role_permission023: - id: 23 - role_id: 1 - permission: 'view_time_entries' -role_permission024: - id: 24 - role_id: 1 - permission: 'edit_time_entries' -role_permission025: - id: 25 - role_id: 1 - permission: 'delete_time_entries' -role_permission026: - id: 26 - role_id: 1 - permission: 'manage_news' -role_permission027: - id: 27 - role_id: 1 - permission: 'comment_news' -role_permission028: - id: 28 - role_id: 1 - permission: 'view_wiki_pages' -role_permission029: - id: 29 - role_id: 1 - permission: 'export_wiki_pages' -role_permission030: - id: 30 - role_id: 1 - permission: 'view_wiki_edits' -role_permission031: - id: 31 - role_id: 1 - permission: 'edit_wiki_pages' -role_permission032: - id: 32 - role_id: 1 - permission: 'delete_wiki_pages_attachments' -role_permission033: - id: 33 - role_id: 1 - permission: 'protect_wiki_pages' -role_permission034: - id: 34 - role_id: 1 - permission: 'delete_wiki_pages' -role_permission035: - id: 35 - role_id: 1 - permission: 'rename_wiki_pages' -role_permission036: - id: 36 - role_id: 1 - permission: 'add_messages' -role_permission037: - id: 37 - role_id: 1 - permission: 'edit_messages' -role_permission038: - id: 38 - role_id: 1 - permission: 'delete_messages' -role_permission039: - id: 39 - role_id: 1 - permission: 'manage_forums' -role_permission040: - id: 40 - role_id: 1 - permission: 'browse_repository' -role_permission041: - id: 41 - role_id: 1 - permission: 'manage_repository' -role_permission042: - id: 42 - role_id: 1 - permission: 'view_changesets' -role_permission043: - id: 43 - role_id: 1 - permission: 'manage_project_activities' -role_permission044: - id: 44 - role_id: 1 - permission: 'export_work_packages' -role_permission045: - id: 45 - role_id: 1 - permission: 'list_attachments' - -role_permission100: - id: 100 - role_id: 2 - permission: 'edit_project' -role_permission101: - id: 101 - role_id: 2 - permission: 'manage_members' -role_permission102: - id: 102 - role_id: 2 - permission: 'manage_versions' -role_permission103: - id: 103 - role_id: 2 - permission: 'manage_categories' -role_permission104: - id: 104 - role_id: 2 - permission: 'view_work_packages' -role_permission105: - id: 105 - role_id: 2 - permission: 'add_work_packages' -role_permission106: - id: 106 - role_id: 2 - permission: 'edit_work_packages' -role_permission107: - id: 107 - role_id: 2 - permission: 'manage_work_package_relations' -role_permission108: - id: 108 - role_id: 2 - permission: 'manage_subtasks' -role_permission109: - id: 109 - role_id: 2 - permission: 'add_work_package_notes' -role_permission110: - id: 110 - role_id: 2 - permission: 'move_work_packages' -role_permission111: - id: 111 - role_id: 2 - permission: 'delete_work_packages' -role_permission112: - id: 112 - role_id: 2 - permission: 'view_work_package_watchers' -role_permission113: - id: 113 - role_id: 2 - permission: 'save_queries' -role_permission114: - id: 114 - role_id: 2 - permission: 'view_calendar' -role_permission115: - id: 115 - role_id: 2 - permission: 'log_own_time' -role_permission116: - id: 116 - role_id: 2 - permission: 'view_time_entries' -role_permission117: - id: 117 - role_id: 2 - permission: 'edit_own_time_entries' -role_permission118: - id: 118 - role_id: 2 - permission: 'manage_news' -role_permission119: - id: 119 - role_id: 2 - permission: 'comment_news' -role_permission120: - id: 120 - role_id: 2 - permission: 'view_wiki_pages' -role_permission121: - id: 121 - role_id: 2 - permission: 'view_wiki_edits' -role_permission122: - id: 122 - role_id: 2 - permission: 'edit_wiki_pages' -role_permission123: - id: 123 - role_id: 2 - permission: 'protect_wiki_pages' -role_permission124: - id: 124 - role_id: 2 - permission: 'delete_wiki_pages' -role_permission125: - id: 125 - role_id: 2 - permission: 'add_messages' -role_permission126: - id: 126 - role_id: 2 - permission: 'edit_own_messages' -role_permission127: - id: 127 - role_id: 2 - permission: 'delete_own_messages' -role_permission128: - id: 128 - role_id: 2 - permission: 'manage_forums' -role_permission129: - id: 129 - role_id: 2 - permission: 'browse_repository' -role_permission130: - id: 130 - role_id: 2 - permission: 'view_changesets' -role_permission131: - id: 131 - role_id: 2 - permission: 'list_attachments' -role_permission132: - id: 132 - role_id: 2 - permission: 'assign_versions' -role_permission133: - id: 133 - role_id: 2 - permission: 'work_package_assigned' - -role_permission200: - id: 200 - role_id: 3 - permission: 'edit_project' -role_permission201: - id: 201 - role_id: 3 - permission: 'manage_members' -role_permission202: - id: 202 - role_id: 3 - permission: 'manage_versions' -role_permission203: - id: 203 - role_id: 3 - permission: 'manage_categories' -role_permission204: - id: 204 - role_id: 3 - permission: 'view_work_packages' -role_permission205: - id: 205 - role_id: 3 - permission: 'add_work_packages' -role_permission206: - id: 206 - role_id: 3 - permission: 'edit_work_packages' -role_permission207: - id: 207 - role_id: 3 - permission: 'manage_work_package_relations' -role_permission208: - id: 208 - role_id: 3 - permission: 'add_work_package_notes' -role_permission209: - id: 209 - role_id: 3 - permission: 'move_work_packages' -role_permission210: - id: 210 - role_id: 3 - permission: 'view_work_package_watchers' -role_permission211: - id: 211 - role_id: 3 - permission: 'save_queries' -role_permission212: - id: 212 - role_id: 3 - permission: 'view_calendar' -role_permission213: - id: 213 - role_id: 3 - permission: 'log_own_time' -role_permission214: - id: 214 - role_id: 3 - permission: 'view_time_entries' -role_permission215: - id: 215 - role_id: 3 - permission: 'manage_news' -role_permission216: - id: 216 - role_id: 3 - permission: 'comment_news' -role_permission217: - id: 217 - role_id: 3 - permission: 'view_wiki_pages' -role_permission218: - id: 218 - role_id: 3 - permission: 'view_wiki_edits' -role_permission219: - id: 219 - role_id: 3 - permission: 'edit_wiki_pages' -role_permission220: - id: 220 - role_id: 3 - permission: 'delete_wiki_pages' -role_permission221: - id: 221 - role_id: 3 - permission: 'add_messages' -role_permission222: - id: 222 - role_id: 3 - permission: 'manage_boards' -role_permission223: - id: 223 - role_id: 3 - permission: 'browse_repository' -role_permission224: - id: 224 - role_id: 3 - permission: 'view_changesets' -role_permission225: - id: 225 - role_id: 3 - permission: 'list_attachments' - -role_permission226: - id: 226 - role_id: 4 - permission: 'view_work_packages' -role_permission227: - id: 227 - role_id: 4 - permission: 'add_work_packages' -role_permission228: - id: 228 - role_id: 4 - permission: 'edit_work_packages' -role_permission229: - id: 229 - role_id: 4 - permission: 'manage_work_package_relations' -role_permission230: - id: 230 - role_id: 4 - permission: 'add_work_package_notes' -role_permission231: - id: 231 - role_id: 4 - permission: 'move_work_packages' -role_permission232: - id: 232 - role_id: 4 - permission: 'save_queries' -role_permission233: - id: 233 - role_id: 4 - permission: 'view_calendar' -role_permission234: - id: 234 - role_id: 4 - permission: 'log_own_time' -role_permission235: - id: 235 - role_id: 4 - permission: 'view_time_entries' -role_permission236: - id: 236 - role_id: 4 - permission: 'comment_news' -role_permission237: - id: 237 - role_id: 4 - permission: 'view_wiki_pages' -role_permission238: - id: 238 - role_id: 4 - permission: 'view_wiki_edits' -role_permission239: - id: 239 - role_id: 4 - permission: 'edit_wiki_pages' -role_permission240: - id: 240 - role_id: 4 - permission: 'add_messages' -role_permission241: - id: 241 - role_id: 4 - permission: 'browse_repository' -role_permission242: - id: 242 - role_id: 4 - permission: 'view_changesets' -role_permission243: - id: 243 - role_id: 4 - permission: 'list_attachments' - -role_permission500: - id: 500 - role_id: 5 - permission: 'view_work_packages' -role_permission501: - id: 501 - role_id: 5 - permission: 'add_work_package_notes' -role_permission502: - id: 502 - role_id: 5 - permission: 'view_calendar' -role_permission503: - id: 503 - role_id: 5 - permission: 'view_time_entries' -role_permission504: - id: 504 - role_id: 5 - permission: 'view_wiki_pages' -role_permission505: - id: 505 - role_id: 5 - permission: 'view_wiki_edits' -role_permission506: - id: 506 - role_id: 5 - permission: 'browse_repository' -role_permission507: - id: 507 - role_id: 5 - permission: 'view_changesets' -role_permission508: - id: 508 - role_id: 5 - permission: 'list_attachments' diff --git a/spec_legacy/fixtures/roles.yml b/spec_legacy/fixtures/roles.yml deleted file mode 100644 index 26b34f3194..0000000000 --- a/spec_legacy/fixtures/roles.yml +++ /dev/null @@ -1,55 +0,0 @@ -#-- copyright -# OpenProject is an open source project management software. -# Copyright (C) 2012-2022 the OpenProject GmbH -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License version 3. -# -# OpenProject is a fork of ChiliProject, which is a fork of Redmine. The copyright follows: -# Copyright (C) 2006-2013 Jean-Philippe Lang -# Copyright (C) 2010-2013 the ChiliProject Team -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# See COPYRIGHT and LICENSE files for more details. -#++ - ---- -roles_001: - name: Manager - id: 1 - builtin: 0 - position: 1 -roles_002: - name: Developer - id: 2 - builtin: 0 - position: 2 -roles_003: - name: Reporter - id: 3 - builtin: 0 - position: 3 -roles_004: - name: Non member - id: 4 - builtin: 1 - position: 4 -roles_005: - name: Anonymous - id: 5 - builtin: 2 - position: 5 - diff --git a/spec_legacy/fixtures/statuses.yml b/spec_legacy/fixtures/statuses.yml deleted file mode 100644 index b4c0bd86a5..0000000000 --- a/spec_legacy/fixtures/statuses.yml +++ /dev/null @@ -1,65 +0,0 @@ -#-- copyright -# OpenProject is an open source project management software. -# Copyright (C) 2012-2022 the OpenProject GmbH -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License version 3. -# -# OpenProject is a fork of ChiliProject, which is a fork of Redmine. The copyright follows: -# Copyright (C) 2006-2013 Jean-Philippe Lang -# Copyright (C) 2010-2013 the ChiliProject Team -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# See COPYRIGHT and LICENSE files for more details. -#++ - ---- -statuses_001: - id: 1 - name: New - is_default: true - is_closed: false - position: 1 -statuses_002: - id: 2 - name: Assigned - is_default: false - is_closed: false - position: 2 -statuses_003: - id: 3 - name: Resolved - is_default: false - is_closed: false - position: 3 -statuses_004: - name: Feedback - id: 4 - is_default: false - is_closed: false - position: 4 -statuses_005: - id: 5 - name: Closed - is_default: false - is_closed: true - position: 5 -statuses_006: - id: 6 - name: Rejected - is_default: false - is_closed: true - position: 6 diff --git a/spec_legacy/fixtures/tokens.yml b/spec_legacy/fixtures/tokens.yml deleted file mode 100644 index 6e5a9e1798..0000000000 --- a/spec_legacy/fixtures/tokens.yml +++ /dev/null @@ -1,41 +0,0 @@ -#-- copyright -# OpenProject is an open source project management software. -# Copyright (C) 2012-2022 the OpenProject GmbH -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License version 3. -# -# OpenProject is a fork of ChiliProject, which is a fork of Redmine. The copyright follows: -# Copyright (C) 2006-2013 Jean-Philippe Lang -# Copyright (C) 2010-2013 the ChiliProject Team -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# See COPYRIGHT and LICENSE files for more details. -#++ - ---- -tokens_001: - created_at: 2007-01-21 00:39:12 +01:00 - type: Token::Invitation - id: 1 - value: DwMJ2yIxBNeAk26znMYzYmz5dAiIina0GFrPnGTM - user_id: 1 -tokens_002: - created_at: 2007-01-21 00:39:52 +01:00 - id: 2 - value: sahYSIaoYrsZUef86sTHrLISdznW6ApF36h5WSnm - type: Token::Recovery - user_id: 2 diff --git a/spec_legacy/fixtures/types.yml b/spec_legacy/fixtures/types.yml deleted file mode 100644 index 7d77fa3fc9..0000000000 --- a/spec_legacy/fixtures/types.yml +++ /dev/null @@ -1,50 +0,0 @@ -#-- copyright -# OpenProject is an open source project management software. -# Copyright (C) 2012-2022 the OpenProject GmbH -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License version 3. -# -# OpenProject is a fork of ChiliProject, which is a fork of Redmine. The copyright follows: -# Copyright (C) 2006-2013 Jean-Philippe Lang -# Copyright (C) 2010-2013 the ChiliProject Team -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# See COPYRIGHT and LICENSE files for more details. -#++ - ---- -types_001: - name: Bug - id: 1 - position: 1 - is_default: true -types_002: - name: Feature request - id: 2 - position: 2 - is_default: true -types_003: - name: Support request - id: 3 - position: 3 - is_default: true -types_999: - name: None - id: 999 - is_standard: true - position: 0 - is_default: true diff --git a/spec_legacy/fixtures/user_passwords.yml b/spec_legacy/fixtures/user_passwords.yml deleted file mode 100644 index 60b74ca3f2..0000000000 --- a/spec_legacy/fixtures/user_passwords.yml +++ /dev/null @@ -1,100 +0,0 @@ -#-- copyright -# OpenProject is an open source project management software. -# Copyright (C) 2012-2022 the OpenProject GmbH -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License version 3. -# -# OpenProject is a fork of ChiliProject, which is a fork of Redmine. The copyright follows: -# Copyright (C) 2006-2013 Jean-Philippe Lang -# Copyright (C) 2010-2013 the ChiliProject Team -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# See COPYRIGHT and LICENSE files for more details. -#++ - ---- -user_passwords_004: - created_at: 2006-07-19 19:34:07 +02:00 - # password = foo - type: UserPassword::SHA1 - salt: 3126f764c3c5ac61cbfc103f25f934cf - hashed_password: 9e4dd7eeb172c12a0691a6d9d3a269f7e9fe671b - updated_at: 2006-07-19 19:34:07 +02:00 - id: 4 - user_id: 4 -user_passwords_001: - created_at: 2006-07-19 19:12:21 +02:00 - # password = adminADMIN! - type: UserPassword::SHA1 - salt: a19f9743f4b7b043a2fd07b8eb13a1df - hashed_password: b4596ce83c0e154e5ce9d3dd5636fde4d6f38b75 - updated_at: 2006-07-19 22:57:52 +02:00 - id: 1 - user_id: 1 -user_passwords_002: - created_at: 2006-07-19 19:32:09 +02:00 - # password = jsmith - type: UserPassword::SHA1 - salt: 67eb4732624d5a7753dcea7ce0bb7d7d - hashed_password: bfbe06043353a677d0215b26a5800d128d5413bc - updated_at: 2006-07-19 22:42:15 +02:00 - id: 2 - user_id: 2 -user_passwords_003: - created_at: 2006-07-19 19:33:19 +02:00 - # password = foo - type: UserPassword::SHA1 - salt: 7599f9963ec07b5a3b55b354407120c0 - hashed_password: 8f659c8d7c072f189374edacfa90d6abbc26d8ed - updated_at: 2006-07-19 19:33:19 +02:00 - id: 3 - user_id: 3 -user_passwords_005: - id: 5 - user_id: 5 - created_at: 2006-07-19 19:33:19 +02:00 - type: UserPassword::SHA1 - hashed_password: 1 - updated_at: 2006-07-19 19:33:19 +02:00 -user_passwords_006: - id: 6 - user_id: 6 - created_at: 2006-07-19 19:33:19 +02:00 - type: UserPassword::SHA1 - hashed_password: 1 - updated_at: 2006-07-19 19:33:19 +02:00 -user_passwords_007: - id: 7 - user_id: 7 - type: UserPassword::SHA1 - hashed_password: 1 - created_at: 2006-07-19 19:33:19 +02:00 - updated_at: 2006-07-19 19:33:19 +02:00 -user_passwords_008: - id: 8 - user_id: 8 - type: UserPassword::SHA1 - created_at: 2006-07-19 19:33:19 +02:00 - hashed_password: 1 - updated_at: 2006-07-19 19:33:19 +02:00 -user_passwords_009: - id: 9 - user_id: 9 - type: UserPassword::SHA1 - created_at: 2006-07-19 19:33:19 +02:00 - hashed_password: 1 - updated_at: 2006-07-19 19:33:19 +02:00 diff --git a/spec_legacy/fixtures/users.yml b/spec_legacy/fixtures/users.yml deleted file mode 100644 index 3f5baac3a5..0000000000 --- a/spec_legacy/fixtures/users.yml +++ /dev/null @@ -1,173 +0,0 @@ -#-- copyright -# OpenProject is an open source project management software. -# Copyright (C) 2012-2022 the OpenProject GmbH -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License version 3. -# -# OpenProject is a fork of ChiliProject, which is a fork of Redmine. The copyright follows: -# Copyright (C) 2006-2013 Jean-Philippe Lang -# Copyright (C) 2010-2013 the ChiliProject Team -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# See COPYRIGHT and LICENSE files for more details. -#++ - ---- -users_004: - created_at: 2006-07-19 19:34:07 +02:00 - status: 1 - last_login_on: - language: en - updated_at: 2006-07-19 19:34:07 +02:00 - admin: false - mail: rhill@somenet.foo - lastname: Hill - firstname: Robert - id: 4 - auth_source_id: - login: rhill - type: User - first_login: false -users_001: - created_at: 2006-07-19 19:12:21 +02:00 - status: 1 - last_login_on: 2006-07-19 22:57:52 +02:00 - language: en - updated_at: 2006-07-19 22:57:52 +02:00 - admin: true - mail: admin@somenet.foo - lastname: Admin - firstname: redMine - id: 1 - auth_source_id: - login: admin - type: User - first_login: false -users_002: - created_at: 2006-07-19 19:32:09 +02:00 - status: 1 - last_login_on: 2006-07-19 22:42:15 +02:00 - language: en - updated_at: 2006-07-19 22:42:15 +02:00 - admin: false - mail: jsmith@somenet.foo - lastname: Smith - firstname: John - id: 2 - auth_source_id: - login: jsmith - type: User - first_login: false -users_003: - created_at: 2006-07-19 19:33:19 +02:00 - status: 1 - last_login_on: - language: en - updated_at: 2006-07-19 19:33:19 +02:00 - admin: false - mail: dlopper@somenet.foo - lastname: Lopper - firstname: Dave - id: 3 - auth_source_id: - login: dlopper - type: User - first_login: false -users_005: - id: 5 - created_at: 2006-07-19 19:33:19 +02:00 - # Locked - status: 3 - last_login_on: - language: en - updated_at: 2006-07-19 19:33:19 +02:00 - admin: false - mail: dlopper2@somenet.foo - lastname: Lopper2 - firstname: Dave2 - auth_source_id: - login: dlopper2 - type: User - first_login: false -users_006: - id: 6 - created_at: 2006-07-19 19:33:19 +02:00 - status: 1 - last_login_on: - language: '' - updated_at: 2006-07-19 19:33:19 +02:00 - admin: false - mail: '' - lastname: Anonymous - firstname: '' - auth_source_id: - login: '' - type: AnonymousUser - first_login: false -users_007: - id: 7 - created_at: 2006-07-19 19:33:19 +02:00 - status: 1 - last_login_on: - language: '' - updated_at: 2006-07-19 19:33:19 +02:00 - admin: false - mail: someone@foo.bar - lastname: One - firstname: Some - auth_source_id: - login: someone - type: User - first_login: false -users_008: - id: 8 - created_at: 2006-07-19 19:33:19 +02:00 - status: 1 - last_login_on: - language: 'de' - updated_at: 2006-07-19 19:33:19 +02:00 - admin: false - mail: miscuser8@foo.bar - lastname: Misc - firstname: User - auth_source_id: - login: miscuser8 - type: User - first_login: false -users_009: - id: 9 - created_at: 2006-07-19 19:33:19 +02:00 - status: 1 - last_login_on: - language: 'de' - updated_at: 2006-07-19 19:33:19 +02:00 - admin: false - mail: miscuser9@foo.bar - lastname: Misc - firstname: User - auth_source_id: - login: miscuser9 - type: User - first_login: false -groups_010: - id: 10 - lastname: A Team - type: Group -groups_011: - id: 11 - lastname: B Team - type: Group diff --git a/spec_legacy/legacy_spec_helper.rb b/spec_legacy/legacy_spec_helper.rb deleted file mode 100644 index 4bc6b40d7c..0000000000 --- a/spec_legacy/legacy_spec_helper.rb +++ /dev/null @@ -1,96 +0,0 @@ -#-- copyright -# OpenProject is an open source project management software. -# Copyright (C) 2012-2022 the OpenProject GmbH -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License version 3. -# -# OpenProject is a fork of ChiliProject, which is a fork of Redmine. The copyright follows: -# Copyright (C) 2006-2013 Jean-Philippe Lang -# Copyright (C) 2010-2013 the ChiliProject Team -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# See COPYRIGHT and LICENSE files for more details. -#++ - -ENV['RAILS_ENV'] = 'test' - -require File.expand_path('../config/environment', __dir__) - -require 'fileutils' -require 'rspec/mocks' -require 'factory_bot_rails' - -require_relative './support/legacy_assertions' - -require 'rspec/rails' -require 'shoulda/matchers' - -# Required shared support helpers from spec/ -Dir[Rails.root.join('spec/support/shared/*.rb')].each { |f| require f } - -RSpec.configure do |config| - config.expect_with :rspec, :minitest - - config.fixture_path = "#{::Rails.root}/spec_legacy/fixtures" - - config.use_transactional_fixtures = true - config.use_instantiated_fixtures = false - - config.before(:suite) do - DatabaseCleaner.clean_with(:truncation) - end - - # Clear fixtures so that normal specs can run without needing truncation - config.after(:suite) do - DatabaseCleaner.clean_with(:truncation) - end - - config.include LegacyAssertionsAndHelpers - config.include ActiveSupport::Testing::Assertions - config.include Shoulda::Context::Assertions - # included in order to use #fixture_file_upload - config.include ActionDispatch::TestProcess - # Allow factories to be used without FactoryBot. - config.include FactoryBot::Syntax::Methods - - config.include RSpec::Rails::RequestExampleGroup, file_path: %r(spec_legacy/integration) - config.include Shoulda::Matchers::ActionController, file_path: %r(spec_legacy/integration) - config.extend Shoulda::Matchers::ActionController, file_path: %r(spec_legacy/integration) - - config.include(Module.new do - extend ActiveSupport::Concern - - # FIXME: hack to ensure subject is an ActionDispatch::TestResponse (RSpec-port) - included do - subject { self } - end - end, file_path: %r(spec_legacy/integration)) - - config.before(:suite) do |_example| - Delayed::Worker.delay_jobs = false - end - - config.before(:each) do - reset_global_state! - - I18n.locale = 'en' - end - - # colorized rspec output - config.color = true - config.formatter = 'progress' -end diff --git a/spec_legacy/support/legacy_assertions.rb b/spec_legacy/support/legacy_assertions.rb deleted file mode 100644 index e570417665..0000000000 --- a/spec_legacy/support/legacy_assertions.rb +++ /dev/null @@ -1,116 +0,0 @@ -#-- copyright -# OpenProject is an open source project management software. -# Copyright (C) 2012-2022 the OpenProject GmbH -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License version 3. -# -# OpenProject is a fork of ChiliProject, which is a fork of Redmine. The copyright follows: -# Copyright (C) 2006-2013 Jean-Philippe Lang -# Copyright (C) 2010-2013 the ChiliProject Team -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# See COPYRIGHT and LICENSE files for more details. -#++ -module LegacyAssertionsAndHelpers - extend ActiveSupport::Concern - - ## - # Resets any global state that may have been changed through tests and the change of which - # should not affect other tests. - def reset_global_state! - User.current = User.anonymous # reset current user in case it was changed in a test - ActionMailer::Base.deliveries.clear - RequestStore.clear! - end - - def with_legacy_settings(options, &) - saved_settings = options.keys.inject({}) do |h, k| - h[k] = Setting[k].dup - h - end - options.each { |k, v| Setting[k] = v } - yield - ensure - saved_settings.each { |k, v| Setting[k] = v } - end - - # Shoulda macros - def should_assign_to(variable, &block) - # it "assign the instance variable '#{variable}'" do - assert @controller.instance_variables.map(&:to_s).include?("@#{variable}") - if block - expected_result = instance_eval(&block) - assert_equal @controller.instance_variable_get('@' + variable.to_s), expected_result - end - # end - end - - def should_render_404 - should respond_with :not_found - should render_template 'common/error' - end - - def should_respond_with_content_type(content_type) - # it "respond with content type '#{content_type}'" do - assert_equal response.content_type, content_type - # end - end - - def assert_error_tag(options = {}) - assert_select('body', { attributes: { id: 'errorExplanation' } }.merge(options)) - end - - def credentials(login, password = nil) - if password.nil? - password = (login == 'admin' ? 'adminADMIN!' : login) - end - { 'HTTP_AUTHORIZATION' => ActionController::HttpAuthentication::Basic.encode_credentials(login, password) } - end - - def repository_configured?(vendor) - self.class.repository_configured?(vendor) - end - - module ClassMethods - def ldap_configured? - return false if !!ENV['CI'] - - @test_ldap = Net::LDAP.new(host: '127.0.0.1', port: 389) - @test_ldap.bind - rescue Exception => e - # LDAP is not listening - nil - end - - # Returns the path to the test +vendor+ repository - def repository_path(vendor) - File.join(Rails.root.to_s.gsub(%r{config/\.\.}, ''), "/tmp/test/#{vendor.downcase}_repository") - end - - # Returns the url of the subversion test repository - def subversion_repository_url - path = repository_path('subversion') - path = '/' + path unless path.starts_with?('/') - "file://#{path}" - end - - # Returns true if the +vendor+ test repository is configured - def repository_configured?(vendor) - File.directory?(repository_path(vendor)) - end - end -end