summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.rubocop.yml6
-rw-r--r--app/assets/javascripts/lib/utils/datetime_utility.js10
-rw-r--r--app/assets/stylesheets/snippets.scss9
-rw-r--r--app/mailers/emails/projects.rb2
-rw-r--r--app/mailers/notify.rb4
-rw-r--r--app/models/ci/job_artifact.rb2
-rw-r--r--app/services/issuable/clone/attributes_rewriter.rb15
-rw-r--r--app/workers/concerns/worker_attributes.rb (renamed from app/models/concerns/worker_attributes.rb)0
-rw-r--r--changelogs/unreleased/33596-package-ci-package-pipeline-api.yml5
-rw-r--r--changelogs/unreleased/add-get-date-in-future-util.yml5
-rw-r--r--changelogs/unreleased/embed-snippet-font.yml5
-rw-r--r--doc/api/packages.md15
-rw-r--r--lib/gitlab/metrics/prometheus.rb10
-rw-r--r--qa/qa/specs/features/browser_ui/2_plan/issue/mentions_spec.rb5
-rw-r--r--spec/controllers/autocomplete_controller_spec.rb4
-rw-r--r--spec/factories/analytics/cycle_analytics/project_stages.rb2
-rw-r--r--spec/factories/aws/roles.rb2
-rw-r--r--spec/factories/badge.rb4
-rw-r--r--spec/factories/chat_names.rb2
-rw-r--r--spec/factories/chat_teams.rb2
-rw-r--r--spec/factories/ci/bridge.rb2
-rw-r--r--spec/factories/ci/build_need.rb2
-rw-r--r--spec/factories/ci/build_trace_chunks.rb2
-rw-r--r--spec/factories/ci/build_trace_section_names.rb2
-rw-r--r--spec/factories/ci/builds.rb2
-rw-r--r--spec/factories/ci/group_variables.rb2
-rw-r--r--spec/factories/ci/job_artifacts.rb2
-rw-r--r--spec/factories/ci/job_variables.rb2
-rw-r--r--spec/factories/ci/pipeline_schedule.rb2
-rw-r--r--spec/factories/ci/pipeline_schedule_variables.rb2
-rw-r--r--spec/factories/ci/pipeline_variables.rb2
-rw-r--r--spec/factories/ci/pipelines.rb2
-rw-r--r--spec/factories/ci/resource.rb2
-rw-r--r--spec/factories/ci/resource_group.rb2
-rw-r--r--spec/factories/ci/runner_projects.rb2
-rw-r--r--spec/factories/ci/runners.rb2
-rw-r--r--spec/factories/ci/sources/pipelines.rb2
-rw-r--r--spec/factories/ci/stages.rb4
-rw-r--r--spec/factories/ci/trigger_requests.rb2
-rw-r--r--spec/factories/ci/triggers.rb2
-rw-r--r--spec/factories/ci/variables.rb2
-rw-r--r--spec/factories/clusters/applications/helm.rb18
-rw-r--r--spec/factories/clusters/clusters.rb2
-rw-r--r--spec/factories/clusters/kubernetes_namespaces.rb2
-rw-r--r--spec/factories/clusters/platforms/kubernetes.rb2
-rw-r--r--spec/factories/clusters/projects.rb2
-rw-r--r--spec/factories/clusters/providers/aws.rb2
-rw-r--r--spec/factories/clusters/providers/gcp.rb2
-rw-r--r--spec/factories/commit_statuses.rb4
-rw-r--r--spec/factories/deployments.rb2
-rw-r--r--spec/factories/dev_ops_score_metrics.rb2
-rw-r--r--spec/factories/environments.rb2
-rw-r--r--spec/factories/error_tracking/detailed_error.rb2
-rw-r--r--spec/factories/error_tracking/error.rb2
-rw-r--r--spec/factories/error_tracking/error_event.rb2
-rw-r--r--spec/factories/error_tracking/project.rb2
-rw-r--r--spec/factories/events.rb2
-rw-r--r--spec/factories/gitaly/commit.rb2
-rw-r--r--spec/factories/gitaly/commit_author.rb2
-rw-r--r--spec/factories/gitaly/tag.rb2
-rw-r--r--spec/factories/grafana_integrations.rb2
-rw-r--r--spec/factories/groups.rb2
-rw-r--r--spec/factories/import_states.rb2
-rw-r--r--spec/factories/labels.rb2
-rw-r--r--spec/factories/namespace/aggregation_schedules.rb2
-rw-r--r--spec/factories/namespace/root_storage_statistics.rb2
-rw-r--r--spec/factories/notes.rb20
-rw-r--r--spec/factories/project_error_tracking_settings.rb2
-rw-r--r--spec/factories/project_metrics_settings.rb2
-rw-r--r--spec/factories/prometheus_metrics.rb2
-rw-r--r--spec/factories/releases/link.rb2
-rw-r--r--spec/factories/sentry_issue.rb2
-rw-r--r--spec/factories/serverless/domain_cluster.rb2
-rw-r--r--spec/factories/services.rb2
-rw-r--r--spec/factories/terms.rb2
-rw-r--r--spec/factories/todos.rb2
-rw-r--r--spec/features/boards/boards_spec.rb8
-rw-r--r--spec/features/instance_statistics/cohorts_spec.rb2
-rw-r--r--spec/features/issuables/issuable_list_spec.rb4
-rw-r--r--spec/finders/issues_finder_spec.rb4
-rw-r--r--spec/frontend/lib/utils/datetime_utility_spec.js17
-rw-r--r--spec/lib/gitlab/ci/config/entry/reports_spec.rb2
-rw-r--r--spec/lib/gitlab/metrics/prometheus_spec.rb4
-rw-r--r--spec/models/concerns/each_batch_spec.rb2
-rw-r--r--spec/models/concerns/issuable_spec.rb2
-rw-r--r--spec/models/project_spec.rb8
-rw-r--r--spec/models/trending_project_spec.rb8
-rw-r--r--spec/requests/api/jobs_spec.rb2
-rw-r--r--spec/requests/api/pipelines_spec.rb4
-rw-r--r--spec/views/search/_results.html.haml_spec.rb2
90 files changed, 191 insertions, 137 deletions
diff --git a/.rubocop.yml b/.rubocop.yml
index da3707972d3..91c7aa53fb7 100644
--- a/.rubocop.yml
+++ b/.rubocop.yml
@@ -301,12 +301,6 @@ RSpec/AnyInstanceOf:
Enabled: false
# Cops for upgrade to gitlab-styles 3.1.0
-FactoryBot/FactoryClassName:
- Enabled: false
-
-FactoryBot/CreateList:
- Enabled: false
-
Rails/SafeNavigationWithBlank:
Enabled: false
diff --git a/app/assets/javascripts/lib/utils/datetime_utility.js b/app/assets/javascripts/lib/utils/datetime_utility.js
index 0ffb31b323b..fd9a13be18b 100644
--- a/app/assets/javascripts/lib/utils/datetime_utility.js
+++ b/app/assets/javascripts/lib/utils/datetime_utility.js
@@ -555,6 +555,16 @@ export const calculateRemainingMilliseconds = endDate => {
export const getDateInPast = (date, daysInPast) =>
new Date(newDate(date).setDate(date.getDate() - daysInPast));
+/**
+ * Adds a given number of days to a given date and returns the new date.
+ *
+ * @param {Date} date the date that we will add days to
+ * @param {Number} daysInFuture number of days that are added to a given date
+ * @returns {Date} Date in future as Date object
+ */
+export const getDateInFuture = (date, daysInFuture) =>
+ new Date(newDate(date).setDate(date.getDate() + daysInFuture));
+
/*
* Appending T00:00:00 makes JS assume local time and prevents it from shifting the date
* to match the user's time zone. We want to display the date in server time for now, to
diff --git a/app/assets/stylesheets/snippets.scss b/app/assets/stylesheets/snippets.scss
index bd777c66b56..dcdb195518c 100644
--- a/app/assets/stylesheets/snippets.scss
+++ b/app/assets/stylesheets/snippets.scss
@@ -48,9 +48,6 @@
padding: 10px;
border: 0;
border-radius: 0;
- font-family: $monospace-font;
- font-size: $code-font-size;
- line-height: $code-line-height;
margin: 0;
overflow: auto;
overflow-y: hidden;
@@ -58,6 +55,12 @@
word-wrap: normal;
border-left: $border-style;
}
+
+ code {
+ font-family: $monospace-font;
+ font-size: $code-font-size;
+ line-height: $code-line-height;
+ }
}
.line-numbers {
diff --git a/app/mailers/emails/projects.rb b/app/mailers/emails/projects.rb
index 6274879ee99..5c957437039 100644
--- a/app/mailers/emails/projects.rb
+++ b/app/mailers/emails/projects.rb
@@ -51,7 +51,7 @@ module Emails
add_project_headers
headers['X-GitLab-Author'] = @message.author_username
- mail(from: sender(@message.author_id, @message.send_from_committer_email?),
+ mail(from: sender(@message.author_id, send_from_user_email: @message.send_from_committer_email?),
reply_to: @message.reply_to,
subject: @message.subject)
end
diff --git a/app/mailers/notify.rb b/app/mailers/notify.rb
index c7cfefeec9b..92939136de2 100644
--- a/app/mailers/notify.rb
+++ b/app/mailers/notify.rb
@@ -59,11 +59,11 @@ class Notify < BaseMailer
# Return an email address that displays the name of the sender.
# Only the displayed name changes; the actual email address is always the same.
- def sender(sender_id, send_from_user_email = false)
+ def sender(sender_id, send_from_user_email: false, sender_name: nil)
return unless sender = User.find(sender_id)
address = default_sender_address
- address.display_name = sender.name
+ address.display_name = sender_name.presence || sender.name
if send_from_user_email && can_send_from_user_email?(sender)
address.address = sender.email
diff --git a/app/models/ci/job_artifact.rb b/app/models/ci/job_artifact.rb
index 9e5aa6691df..72be53c7af0 100644
--- a/app/models/ci/job_artifact.rb
+++ b/app/models/ci/job_artifact.rb
@@ -23,7 +23,7 @@ module Ci
container_scanning: 'gl-container-scanning-report.json',
dast: 'gl-dast-report.json',
license_management: 'gl-license-management-report.json',
- license_scanning: 'gl-license-management-report.json',
+ license_scanning: 'gl-license-scanning-report.json',
performance: 'performance.json',
metrics: 'metrics.txt'
}.freeze
diff --git a/app/services/issuable/clone/attributes_rewriter.rb b/app/services/issuable/clone/attributes_rewriter.rb
index 1f5d83917cc..334e50c0be5 100644
--- a/app/services/issuable/clone/attributes_rewriter.rb
+++ b/app/services/issuable/clone/attributes_rewriter.rb
@@ -18,6 +18,7 @@ module Issuable
new_entity.update(update_attributes)
copy_resource_label_events
+ copy_resource_weight_events
end
private
@@ -60,6 +61,20 @@ module Issuable
end
end
+ def copy_resource_weight_events
+ return unless original_entity.respond_to?(:resource_weight_events)
+
+ original_entity.resource_weight_events.find_in_batches do |batch|
+ events = batch.map do |event|
+ event.attributes
+ .except('id', 'reference', 'reference_html')
+ .merge('issue_id' => new_entity.id)
+ end
+
+ Gitlab::Database.bulk_insert(ResourceWeightEvent.table_name, events)
+ end
+ end
+
def entity_key
new_entity.class.name.parameterize('_').foreign_key
end
diff --git a/app/models/concerns/worker_attributes.rb b/app/workers/concerns/worker_attributes.rb
index 506215ca9ed..506215ca9ed 100644
--- a/app/models/concerns/worker_attributes.rb
+++ b/app/workers/concerns/worker_attributes.rb
diff --git a/changelogs/unreleased/33596-package-ci-package-pipeline-api.yml b/changelogs/unreleased/33596-package-ci-package-pipeline-api.yml
new file mode 100644
index 00000000000..3e5eb961e95
--- /dev/null
+++ b/changelogs/unreleased/33596-package-ci-package-pipeline-api.yml
@@ -0,0 +1,5 @@
+---
+title: Add build metadata to package API
+merge_request: 20682
+author:
+type: added
diff --git a/changelogs/unreleased/add-get-date-in-future-util.yml b/changelogs/unreleased/add-get-date-in-future-util.yml
new file mode 100644
index 00000000000..c9520c2416e
--- /dev/null
+++ b/changelogs/unreleased/add-get-date-in-future-util.yml
@@ -0,0 +1,5 @@
+---
+title: Add getDateInFuture util method
+merge_request: 22671
+author:
+type: added
diff --git a/changelogs/unreleased/embed-snippet-font.yml b/changelogs/unreleased/embed-snippet-font.yml
new file mode 100644
index 00000000000..b0ae8b65f4c
--- /dev/null
+++ b/changelogs/unreleased/embed-snippet-font.yml
@@ -0,0 +1,5 @@
+---
+title: Align embedded snippet mono space font with GitLab mono space font.
+merge_request: !20865
+author:
+type: changed
diff --git a/doc/api/packages.md b/doc/api/packages.md
index afca7db97c8..46e3b8e2d3f 100644
--- a/doc/api/packages.md
+++ b/doc/api/packages.md
@@ -79,7 +79,10 @@ Example response:
"web_path": "/namespace1/project1/-/packages/1",
"delete_api_path": "/namespace1/project1/-/packages/1"
},
- "created_at": "2019-11-27T03:37:38.711Z"
+ "created_at": "2019-11-27T03:37:38.711Z",
+ "build_info": {
+ "pipeline_id": 123
+ }
},
{
"id": 2,
@@ -90,7 +93,10 @@ Example response:
"web_path": "/namespace1/project1/-/packages/1",
"delete_api_path": "/namespace1/project1/-/packages/1"
},
- "created_at": "2019-11-27T03:37:38.711Z"
+ "created_at": "2019-11-27T03:37:38.711Z",
+ "build_info": {
+ "pipeline_id": 123
+ }
}
]
```
@@ -133,7 +139,10 @@ Example response:
"web_path": "/namespace1/project1/-/packages/1",
"delete_api_path": "/namespace1/project1/-/packages/1"
},
- "created_at": "2019-11-27T03:37:38.711Z"
+ "created_at": "2019-11-27T03:37:38.711Z",
+ "build_info": {
+ "pipeline_id": 123
+ }
}
```
diff --git a/lib/gitlab/metrics/prometheus.rb b/lib/gitlab/metrics/prometheus.rb
index f7480a8789e..757762499a9 100644
--- a/lib/gitlab/metrics/prometheus.rb
+++ b/lib/gitlab/metrics/prometheus.rb
@@ -62,10 +62,18 @@ module Gitlab
end
def error_detected!
+ set_error!(true)
+ end
+
+ def clear_errors!
+ set_error!(false)
+ end
+
+ def set_error!(status)
clear_memoization(:prometheus_metrics_enabled)
PROVIDER_MUTEX.synchronize do
- @error = true
+ @error = status
end
end
diff --git a/qa/qa/specs/features/browser_ui/2_plan/issue/mentions_spec.rb b/qa/qa/specs/features/browser_ui/2_plan/issue/mentions_spec.rb
index b1a80ad75cd..341e6fd0096 100644
--- a/qa/qa/specs/features/browser_ui/2_plan/issue/mentions_spec.rb
+++ b/qa/qa/specs/features/browser_ui/2_plan/issue/mentions_spec.rb
@@ -19,11 +19,10 @@ module QA
members.add_member(@user.username)
end
- issue = Resource::Issue.fabricate_via_api! do |issue|
+ Resource::Issue.fabricate_via_api! do |issue|
issue.title = 'issue to test mention'
issue.project = project
- end
- issue.visit!
+ end.visit!
end
it 'user mentions another user in an issue' do
diff --git a/spec/controllers/autocomplete_controller_spec.rb b/spec/controllers/autocomplete_controller_spec.rb
index 4227a4453a3..51f20bae880 100644
--- a/spec/controllers/autocomplete_controller_spec.rb
+++ b/spec/controllers/autocomplete_controller_spec.rb
@@ -112,9 +112,7 @@ describe AutocompleteController do
context 'limited users per page' do
before do
- 25.times do
- create(:user)
- end
+ create_list(:user, 25)
sign_in(user)
get(:users)
diff --git a/spec/factories/analytics/cycle_analytics/project_stages.rb b/spec/factories/analytics/cycle_analytics/project_stages.rb
index 6f8c140ed8a..3a481bd20fd 100644
--- a/spec/factories/analytics/cycle_analytics/project_stages.rb
+++ b/spec/factories/analytics/cycle_analytics/project_stages.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :cycle_analytics_project_stage, class: Analytics::CycleAnalytics::ProjectStage do
+ factory :cycle_analytics_project_stage, class: 'Analytics::CycleAnalytics::ProjectStage' do
project
sequence(:name) { |n| "Stage ##{n}" }
hidden { false }
diff --git a/spec/factories/aws/roles.rb b/spec/factories/aws/roles.rb
index c078033dfad..7195b571366 100644
--- a/spec/factories/aws/roles.rb
+++ b/spec/factories/aws/roles.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :aws_role, class: Aws::Role do
+ factory :aws_role, class: 'Aws::Role' do
user
role_arn { 'arn:aws:iam::123456789012:role/role-name' }
diff --git a/spec/factories/badge.rb b/spec/factories/badge.rb
index 1d4e29014cc..7623797a7fa 100644
--- a/spec/factories/badge.rb
+++ b/spec/factories/badge.rb
@@ -6,11 +6,11 @@ FactoryBot.define do
image_url { generate(:url) }
end
- factory :project_badge, traits: [:base_badge], class: ProjectBadge do
+ factory :project_badge, traits: [:base_badge], class: 'ProjectBadge' do
project
end
- factory :group_badge, aliases: [:badge], traits: [:base_badge], class: GroupBadge do
+ factory :group_badge, aliases: [:badge], traits: [:base_badge], class: 'GroupBadge' do
group
end
end
diff --git a/spec/factories/chat_names.rb b/spec/factories/chat_names.rb
index ace5d5e83c9..73c885806f2 100644
--- a/spec/factories/chat_names.rb
+++ b/spec/factories/chat_names.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :chat_name, class: ChatName do
+ factory :chat_name, class: 'ChatName' do
user factory: :user
service factory: :service
diff --git a/spec/factories/chat_teams.rb b/spec/factories/chat_teams.rb
index 52628e6d53d..f413555d980 100644
--- a/spec/factories/chat_teams.rb
+++ b/spec/factories/chat_teams.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :chat_team, class: ChatTeam do
+ factory :chat_team, class: 'ChatTeam' do
sequence(:team_id) { |n| "abcdefghijklm#{n}" }
namespace factory: :group
end
diff --git a/spec/factories/ci/bridge.rb b/spec/factories/ci/bridge.rb
index 60219b07cf0..b2e8051eb5e 100644
--- a/spec/factories/ci/bridge.rb
+++ b/spec/factories/ci/bridge.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :ci_bridge, class: Ci::Bridge do
+ factory :ci_bridge, class: 'Ci::Bridge' do
name { 'bridge' }
stage { 'test' }
stage_idx { 0 }
diff --git a/spec/factories/ci/build_need.rb b/spec/factories/ci/build_need.rb
index 568aff45a91..fa72e696343 100644
--- a/spec/factories/ci/build_need.rb
+++ b/spec/factories/ci/build_need.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :ci_build_need, class: Ci::BuildNeed do
+ factory :ci_build_need, class: 'Ci::BuildNeed' do
build factory: :ci_build
sequence(:name) { |n| "build_#{n}" }
end
diff --git a/spec/factories/ci/build_trace_chunks.rb b/spec/factories/ci/build_trace_chunks.rb
index 22f091f8e76..7c348f4b7e4 100644
--- a/spec/factories/ci/build_trace_chunks.rb
+++ b/spec/factories/ci/build_trace_chunks.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :ci_build_trace_chunk, class: Ci::BuildTraceChunk do
+ factory :ci_build_trace_chunk, class: 'Ci::BuildTraceChunk' do
build factory: :ci_build
chunk_index { 0 }
data_store { :redis }
diff --git a/spec/factories/ci/build_trace_section_names.rb b/spec/factories/ci/build_trace_section_names.rb
index e52694ef3dc..b9b66b49317 100644
--- a/spec/factories/ci/build_trace_section_names.rb
+++ b/spec/factories/ci/build_trace_section_names.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :ci_build_trace_section_name, class: Ci::BuildTraceSectionName do
+ factory :ci_build_trace_section_name, class: 'Ci::BuildTraceSectionName' do
sequence(:name) { |n| "section_#{n}" }
project factory: :project
end
diff --git a/spec/factories/ci/builds.rb b/spec/factories/ci/builds.rb
index 0c5d14eeb32..3d65f9065bf 100644
--- a/spec/factories/ci/builds.rb
+++ b/spec/factories/ci/builds.rb
@@ -3,7 +3,7 @@
include ActionDispatch::TestProcess
FactoryBot.define do
- factory :ci_build, class: Ci::Build do
+ factory :ci_build, class: 'Ci::Build' do
name { 'test' }
stage { 'test' }
stage_idx { 0 }
diff --git a/spec/factories/ci/group_variables.rb b/spec/factories/ci/group_variables.rb
index 217f05a088e..d3b891eb1e3 100644
--- a/spec/factories/ci/group_variables.rb
+++ b/spec/factories/ci/group_variables.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :ci_group_variable, class: Ci::GroupVariable do
+ factory :ci_group_variable, class: 'Ci::GroupVariable' do
sequence(:key) { |n| "VARIABLE_#{n}" }
value { 'VARIABLE_VALUE' }
masked { false }
diff --git a/spec/factories/ci/job_artifacts.rb b/spec/factories/ci/job_artifacts.rb
index bdc6cc2f169..7347c2b87ca 100644
--- a/spec/factories/ci/job_artifacts.rb
+++ b/spec/factories/ci/job_artifacts.rb
@@ -3,7 +3,7 @@
include ActionDispatch::TestProcess
FactoryBot.define do
- factory :ci_job_artifact, class: Ci::JobArtifact do
+ factory :ci_job_artifact, class: 'Ci::JobArtifact' do
job factory: :ci_build
file_type { :archive }
file_format { :zip }
diff --git a/spec/factories/ci/job_variables.rb b/spec/factories/ci/job_variables.rb
index bfc631b8126..472a89d3bef 100644
--- a/spec/factories/ci/job_variables.rb
+++ b/spec/factories/ci/job_variables.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :ci_job_variable, class: Ci::JobVariable do
+ factory :ci_job_variable, class: 'Ci::JobVariable' do
sequence(:key) { |n| "VARIABLE_#{n}" }
value { 'VARIABLE_VALUE' }
diff --git a/spec/factories/ci/pipeline_schedule.rb b/spec/factories/ci/pipeline_schedule.rb
index c752dc1c9dd..fc9044fb8e3 100644
--- a/spec/factories/ci/pipeline_schedule.rb
+++ b/spec/factories/ci/pipeline_schedule.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :ci_pipeline_schedule, class: Ci::PipelineSchedule do
+ factory :ci_pipeline_schedule, class: 'Ci::PipelineSchedule' do
cron { '0 1 * * *' }
cron_timezone { Gitlab::Ci::CronParser::VALID_SYNTAX_SAMPLE_TIME_ZONE }
ref { 'master' }
diff --git a/spec/factories/ci/pipeline_schedule_variables.rb b/spec/factories/ci/pipeline_schedule_variables.rb
index 24913c614f4..d598ba1b1b9 100644
--- a/spec/factories/ci/pipeline_schedule_variables.rb
+++ b/spec/factories/ci/pipeline_schedule_variables.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :ci_pipeline_schedule_variable, class: Ci::PipelineScheduleVariable do
+ factory :ci_pipeline_schedule_variable, class: 'Ci::PipelineScheduleVariable' do
sequence(:key) { |n| "VARIABLE_#{n}" }
value { 'VARIABLE_VALUE' }
variable_type { 'env_var' }
diff --git a/spec/factories/ci/pipeline_variables.rb b/spec/factories/ci/pipeline_variables.rb
index 48f6e35fe70..17aa9962e0b 100644
--- a/spec/factories/ci/pipeline_variables.rb
+++ b/spec/factories/ci/pipeline_variables.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :ci_pipeline_variable, class: Ci::PipelineVariable do
+ factory :ci_pipeline_variable, class: 'Ci::PipelineVariable' do
sequence(:key) { |n| "VARIABLE_#{n}" }
value { 'VARIABLE_VALUE' }
diff --git a/spec/factories/ci/pipelines.rb b/spec/factories/ci/pipelines.rb
index e2ec9d496bc..afc203562ba 100644
--- a/spec/factories/ci/pipelines.rb
+++ b/spec/factories/ci/pipelines.rb
@@ -2,7 +2,7 @@
FactoryBot.define do
# TODO: we can remove this factory in favour of :ci_pipeline
- factory :ci_empty_pipeline, class: Ci::Pipeline do
+ factory :ci_empty_pipeline, class: 'Ci::Pipeline' do
source { :push }
ref { 'master' }
sha { '97de212e80737a608d939f648d959671fb0a0142' }
diff --git a/spec/factories/ci/resource.rb b/spec/factories/ci/resource.rb
index d47b3ba4635..515329506e5 100644
--- a/spec/factories/ci/resource.rb
+++ b/spec/factories/ci/resource.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :ci_resource, class: Ci::Resource do
+ factory :ci_resource, class: 'Ci::Resource' do
resource_group factory: :ci_resource_group
trait(:retained) do
diff --git a/spec/factories/ci/resource_group.rb b/spec/factories/ci/resource_group.rb
index bdfc0740a45..7ca89037160 100644
--- a/spec/factories/ci/resource_group.rb
+++ b/spec/factories/ci/resource_group.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :ci_resource_group, class: Ci::ResourceGroup do
+ factory :ci_resource_group, class: 'Ci::ResourceGroup' do
project
sequence(:key) { |n| "IOS_#{n}" }
end
diff --git a/spec/factories/ci/runner_projects.rb b/spec/factories/ci/runner_projects.rb
index bc28544a839..ead9fe10f6e 100644
--- a/spec/factories/ci/runner_projects.rb
+++ b/spec/factories/ci/runner_projects.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :ci_runner_project, class: Ci::RunnerProject do
+ factory :ci_runner_project, class: 'Ci::RunnerProject' do
runner factory: [:ci_runner, :project]
project
end
diff --git a/spec/factories/ci/runners.rb b/spec/factories/ci/runners.rb
index 3697970721b..30f78531324 100644
--- a/spec/factories/ci/runners.rb
+++ b/spec/factories/ci/runners.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :ci_runner, class: Ci::Runner do
+ factory :ci_runner, class: 'Ci::Runner' do
sequence(:description) { |n| "My runner#{n}" }
platform { "darwin" }
diff --git a/spec/factories/ci/sources/pipelines.rb b/spec/factories/ci/sources/pipelines.rb
index 57495502944..93d35097eac 100644
--- a/spec/factories/ci/sources/pipelines.rb
+++ b/spec/factories/ci/sources/pipelines.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :ci_sources_pipeline, class: Ci::Sources::Pipeline do
+ factory :ci_sources_pipeline, class: 'Ci::Sources::Pipeline' do
after(:build) do |source|
source.project ||= source.pipeline.project
source.source_pipeline ||= source.source_job.pipeline
diff --git a/spec/factories/ci/stages.rb b/spec/factories/ci/stages.rb
index 67f4db41d96..4751c04584e 100644
--- a/spec/factories/ci/stages.rb
+++ b/spec/factories/ci/stages.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :ci_stage, class: Ci::LegacyStage do
+ factory :ci_stage, class: 'Ci::LegacyStage' do
skip_create
transient do
@@ -18,7 +18,7 @@ FactoryBot.define do
end
end
- factory :ci_stage_entity, class: Ci::Stage do
+ factory :ci_stage_entity, class: 'Ci::Stage' do
project factory: :project
pipeline factory: :ci_empty_pipeline
diff --git a/spec/factories/ci/trigger_requests.rb b/spec/factories/ci/trigger_requests.rb
index d63bf9868c9..cfffcf222f3 100644
--- a/spec/factories/ci/trigger_requests.rb
+++ b/spec/factories/ci/trigger_requests.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :ci_trigger_request, class: Ci::TriggerRequest do
+ factory :ci_trigger_request, class: 'Ci::TriggerRequest' do
trigger factory: :ci_trigger
end
end
diff --git a/spec/factories/ci/triggers.rb b/spec/factories/ci/triggers.rb
index 6f628ed5435..5089d43f6ff 100644
--- a/spec/factories/ci/triggers.rb
+++ b/spec/factories/ci/triggers.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :ci_trigger_without_token, class: Ci::Trigger do
+ factory :ci_trigger_without_token, class: 'Ci::Trigger' do
owner
factory :ci_trigger do
diff --git a/spec/factories/ci/variables.rb b/spec/factories/ci/variables.rb
index 9d2501c4e18..a4cbf873b0b 100644
--- a/spec/factories/ci/variables.rb
+++ b/spec/factories/ci/variables.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :ci_variable, class: Ci::Variable do
+ factory :ci_variable, class: 'Ci::Variable' do
sequence(:key) { |n| "VARIABLE_#{n}" }
value { 'VARIABLE_VALUE' }
masked { false }
diff --git a/spec/factories/clusters/applications/helm.rb b/spec/factories/clusters/applications/helm.rb
index 8858675c2b8..ff9fc882dcc 100644
--- a/spec/factories/clusters/applications/helm.rb
+++ b/spec/factories/clusters/applications/helm.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :clusters_applications_helm, class: Clusters::Applications::Helm do
+ factory :clusters_applications_helm, class: 'Clusters::Applications::Helm' do
cluster factory: %i(cluster provided_by_gcp)
before(:create) do
@@ -70,40 +70,40 @@ FactoryBot.define do
updated_at { ClusterWaitForAppInstallationWorker::TIMEOUT.ago }
end
- factory :clusters_applications_ingress, class: Clusters::Applications::Ingress do
+ factory :clusters_applications_ingress, class: 'Clusters::Applications::Ingress' do
modsecurity_enabled { false }
cluster factory: %i(cluster with_installed_helm provided_by_gcp)
end
- factory :clusters_applications_cert_manager, class: Clusters::Applications::CertManager do
+ factory :clusters_applications_cert_manager, class: 'Clusters::Applications::CertManager' do
email { 'admin@example.com' }
cluster factory: %i(cluster with_installed_helm provided_by_gcp)
end
- factory :clusters_applications_elastic_stack, class: Clusters::Applications::ElasticStack do
+ factory :clusters_applications_elastic_stack, class: 'Clusters::Applications::ElasticStack' do
cluster factory: %i(cluster with_installed_helm provided_by_gcp)
end
- factory :clusters_applications_crossplane, class: Clusters::Applications::Crossplane do
+ factory :clusters_applications_crossplane, class: 'Clusters::Applications::Crossplane' do
stack { 'gcp' }
cluster factory: %i(cluster with_installed_helm provided_by_gcp)
end
- factory :clusters_applications_prometheus, class: Clusters::Applications::Prometheus do
+ factory :clusters_applications_prometheus, class: 'Clusters::Applications::Prometheus' do
cluster factory: %i(cluster with_installed_helm provided_by_gcp)
end
- factory :clusters_applications_runner, class: Clusters::Applications::Runner do
+ factory :clusters_applications_runner, class: 'Clusters::Applications::Runner' do
runner factory: %i(ci_runner)
cluster factory: %i(cluster with_installed_helm provided_by_gcp)
end
- factory :clusters_applications_knative, class: Clusters::Applications::Knative do
+ factory :clusters_applications_knative, class: 'Clusters::Applications::Knative' do
hostname { 'example.com' }
cluster factory: %i(cluster with_installed_helm provided_by_gcp)
end
- factory :clusters_applications_jupyter, class: Clusters::Applications::Jupyter do
+ factory :clusters_applications_jupyter, class: 'Clusters::Applications::Jupyter' do
oauth_application factory: :oauth_application
cluster factory: %i(cluster with_installed_helm provided_by_gcp project)
end
diff --git a/spec/factories/clusters/clusters.rb b/spec/factories/clusters/clusters.rb
index 7121850e5ff..843f87ef7d6 100644
--- a/spec/factories/clusters/clusters.rb
+++ b/spec/factories/clusters/clusters.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :cluster, class: Clusters::Cluster do
+ factory :cluster, class: 'Clusters::Cluster' do
user
name { 'test-cluster' }
cluster_type { :project_type }
diff --git a/spec/factories/clusters/kubernetes_namespaces.rb b/spec/factories/clusters/kubernetes_namespaces.rb
index 75895e1c020..c820bf4da60 100644
--- a/spec/factories/clusters/kubernetes_namespaces.rb
+++ b/spec/factories/clusters/kubernetes_namespaces.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :cluster_kubernetes_namespace, class: Clusters::KubernetesNamespace do
+ factory :cluster_kubernetes_namespace, class: 'Clusters::KubernetesNamespace' do
association :cluster, :project, :provided_by_gcp
after(:build) do |kubernetes_namespace|
diff --git a/spec/factories/clusters/platforms/kubernetes.rb b/spec/factories/clusters/platforms/kubernetes.rb
index dbcb838e9da..822457adaef 100644
--- a/spec/factories/clusters/platforms/kubernetes.rb
+++ b/spec/factories/clusters/platforms/kubernetes.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :cluster_platform_kubernetes, class: Clusters::Platforms::Kubernetes do
+ factory :cluster_platform_kubernetes, class: 'Clusters::Platforms::Kubernetes' do
association :cluster, platform_type: :kubernetes, provider_type: :user
namespace { nil }
api_url { 'https://kubernetes.example.com' }
diff --git a/spec/factories/clusters/projects.rb b/spec/factories/clusters/projects.rb
index 6cda77c6f85..e980279cad9 100644
--- a/spec/factories/clusters/projects.rb
+++ b/spec/factories/clusters/projects.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :cluster_project, class: Clusters::Project do
+ factory :cluster_project, class: 'Clusters::Project' do
cluster
project
end
diff --git a/spec/factories/clusters/providers/aws.rb b/spec/factories/clusters/providers/aws.rb
index e4b10aa5f33..2c54300e606 100644
--- a/spec/factories/clusters/providers/aws.rb
+++ b/spec/factories/clusters/providers/aws.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :cluster_provider_aws, class: Clusters::Providers::Aws do
+ factory :cluster_provider_aws, class: 'Clusters::Providers::Aws' do
association :cluster, platform_type: :kubernetes, provider_type: :aws
role_arn { 'arn:aws:iam::123456789012:role/role-name' }
diff --git a/spec/factories/clusters/providers/gcp.rb b/spec/factories/clusters/providers/gcp.rb
index 216c4d4fa31..c99f4407b42 100644
--- a/spec/factories/clusters/providers/gcp.rb
+++ b/spec/factories/clusters/providers/gcp.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :cluster_provider_gcp, class: Clusters::Providers::Gcp do
+ factory :cluster_provider_gcp, class: 'Clusters::Providers::Gcp' do
association :cluster, platform_type: :kubernetes, provider_type: :gcp
gcp_project_id { 'test-gcp-project' }
diff --git a/spec/factories/commit_statuses.rb b/spec/factories/commit_statuses.rb
index a54c0ce74c6..fa10b37cdbf 100644
--- a/spec/factories/commit_statuses.rb
+++ b/spec/factories/commit_statuses.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :commit_status, class: CommitStatus do
+ factory :commit_status, class: 'CommitStatus' do
name { 'default' }
stage { 'test' }
stage_idx { 0 }
@@ -59,7 +59,7 @@ FactoryBot.define do
build.project = build.pipeline.project
end
- factory :generic_commit_status, class: GenericCommitStatus do
+ factory :generic_commit_status, class: 'GenericCommitStatus' do
name { 'generic' }
description { 'external commit status' }
end
diff --git a/spec/factories/deployments.rb b/spec/factories/deployments.rb
index f8738d28d83..f92e213a385 100644
--- a/spec/factories/deployments.rb
+++ b/spec/factories/deployments.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :deployment, class: Deployment do
+ factory :deployment, class: 'Deployment' do
sha { 'b83d6e391c22777fca1ed3012fce84f633d7fed0' }
ref { 'master' }
tag { false }
diff --git a/spec/factories/dev_ops_score_metrics.rb b/spec/factories/dev_ops_score_metrics.rb
index 0d9d7059e7f..1d1f1a2c39e 100644
--- a/spec/factories/dev_ops_score_metrics.rb
+++ b/spec/factories/dev_ops_score_metrics.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :dev_ops_score_metric, class: DevOpsScore::Metric do
+ factory :dev_ops_score_metric, class: 'DevOpsScore::Metric' do
leader_issues { 9.256 }
instance_issues { 1.234 }
percentage_issues { 13.331 }
diff --git a/spec/factories/environments.rb b/spec/factories/environments.rb
index 44aa4527e12..323ea2d478b 100644
--- a/spec/factories/environments.rb
+++ b/spec/factories/environments.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :environment, class: Environment do
+ factory :environment, class: 'Environment' do
sequence(:name) { |n| "environment#{n}" }
association :project, :repository
diff --git a/spec/factories/error_tracking/detailed_error.rb b/spec/factories/error_tracking/detailed_error.rb
index b0114558bd4..0fba79b2acb 100644
--- a/spec/factories/error_tracking/detailed_error.rb
+++ b/spec/factories/error_tracking/detailed_error.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :detailed_error_tracking_error, class: Gitlab::ErrorTracking::DetailedError do
+ factory :detailed_error_tracking_error, class: 'Gitlab::ErrorTracking::DetailedError' do
id { '1' }
title { 'title' }
type { 'error' }
diff --git a/spec/factories/error_tracking/error.rb b/spec/factories/error_tracking/error.rb
index 541bc410462..5be1f074555 100644
--- a/spec/factories/error_tracking/error.rb
+++ b/spec/factories/error_tracking/error.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :error_tracking_error, class: Gitlab::ErrorTracking::Error do
+ factory :error_tracking_error, class: 'Gitlab::ErrorTracking::Error' do
id { 'id' }
title { 'title' }
type { 'error' }
diff --git a/spec/factories/error_tracking/error_event.rb b/spec/factories/error_tracking/error_event.rb
index 1590095f1bd..880fdf17fae 100644
--- a/spec/factories/error_tracking/error_event.rb
+++ b/spec/factories/error_tracking/error_event.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :error_tracking_error_event, class: Gitlab::ErrorTracking::ErrorEvent do
+ factory :error_tracking_error_event, class: 'Gitlab::ErrorTracking::ErrorEvent' do
issue_id { 'id' }
date_received { Time.now.iso8601 }
stack_trace_entries do
diff --git a/spec/factories/error_tracking/project.rb b/spec/factories/error_tracking/project.rb
index 885d398d433..4cbec312622 100644
--- a/spec/factories/error_tracking/project.rb
+++ b/spec/factories/error_tracking/project.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :error_tracking_project, class: Gitlab::ErrorTracking::Project do
+ factory :error_tracking_project, class: 'Gitlab::ErrorTracking::Project' do
id { '1' }
name { 'Sentry Example' }
slug { 'sentry-example' }
diff --git a/spec/factories/events.rb b/spec/factories/events.rb
index 4eedcd02c9a..81d57a25058 100644
--- a/spec/factories/events.rb
+++ b/spec/factories/events.rb
@@ -24,7 +24,7 @@ FactoryBot.define do
end
end
- factory :push_event, class: PushEvent do
+ factory :push_event, class: 'PushEvent' do
project factory: :project_empty_repo
author(factory: :user) { project.creator }
action { Event::PUSHED }
diff --git a/spec/factories/gitaly/commit.rb b/spec/factories/gitaly/commit.rb
index ef5301db770..2ed201e9aac 100644
--- a/spec/factories/gitaly/commit.rb
+++ b/spec/factories/gitaly/commit.rb
@@ -3,7 +3,7 @@
FactoryBot.define do
sequence(:gitaly_commit_id) { Digest::SHA1.hexdigest(Time.now.to_f.to_s) }
- factory :gitaly_commit, class: Gitaly::GitCommit do
+ factory :gitaly_commit, class: 'Gitaly::GitCommit' do
skip_create
id { generate(:gitaly_commit_id) }
diff --git a/spec/factories/gitaly/commit_author.rb b/spec/factories/gitaly/commit_author.rb
index 51dcd8a623b..31097118d1f 100644
--- a/spec/factories/gitaly/commit_author.rb
+++ b/spec/factories/gitaly/commit_author.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :gitaly_commit_author, class: Gitaly::CommitAuthor do
+ factory :gitaly_commit_author, class: 'Gitaly::CommitAuthor' do
skip_create
name { generate(:name) }
diff --git a/spec/factories/gitaly/tag.rb b/spec/factories/gitaly/tag.rb
index a7a84753090..9dd1b8301c1 100644
--- a/spec/factories/gitaly/tag.rb
+++ b/spec/factories/gitaly/tag.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :gitaly_tag, class: Gitaly::Tag do
+ factory :gitaly_tag, class: 'Gitaly::Tag' do
skip_create
name { 'v3.1.4' }
diff --git a/spec/factories/grafana_integrations.rb b/spec/factories/grafana_integrations.rb
index ae819ca828c..a647ef8d2ec 100644
--- a/spec/factories/grafana_integrations.rb
+++ b/spec/factories/grafana_integrations.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :grafana_integration, class: GrafanaIntegration do
+ factory :grafana_integration, class: 'GrafanaIntegration' do
project
grafana_url { 'https://grafana.example.com' }
token { SecureRandom.hex(10) }
diff --git a/spec/factories/groups.rb b/spec/factories/groups.rb
index 93c01f8034d..4b6c1756d1e 100644
--- a/spec/factories/groups.rb
+++ b/spec/factories/groups.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :group, class: Group, parent: :namespace do
+ factory :group, class: 'Group', parent: :namespace do
sequence(:name) { |n| "group#{n}" }
path { name.downcase.gsub(/\s/, '_') }
type { 'Group' }
diff --git a/spec/factories/import_states.rb b/spec/factories/import_states.rb
index 576f68ab57f..4dca78b1059 100644
--- a/spec/factories/import_states.rb
+++ b/spec/factories/import_states.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :import_state, class: ProjectImportState do
+ factory :import_state, class: 'ProjectImportState' do
status { :none }
association :project, factory: :project
diff --git a/spec/factories/labels.rb b/spec/factories/labels.rb
index 89fcd8b1a9d..81d3e4be6fd 100644
--- a/spec/factories/labels.rb
+++ b/spec/factories/labels.rb
@@ -6,7 +6,7 @@ FactoryBot.define do
color { "#990000" }
end
- factory :label, traits: [:base_label], class: ProjectLabel do
+ factory :label, traits: [:base_label], class: 'ProjectLabel' do
project
transient do
diff --git a/spec/factories/namespace/aggregation_schedules.rb b/spec/factories/namespace/aggregation_schedules.rb
index c172c3360e2..5962c46dee6 100644
--- a/spec/factories/namespace/aggregation_schedules.rb
+++ b/spec/factories/namespace/aggregation_schedules.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :namespace_aggregation_schedules, class: Namespace::AggregationSchedule do
+ factory :namespace_aggregation_schedules, class: 'Namespace::AggregationSchedule' do
namespace
end
end
diff --git a/spec/factories/namespace/root_storage_statistics.rb b/spec/factories/namespace/root_storage_statistics.rb
index 54c5921eb44..3b11d7a6ec7 100644
--- a/spec/factories/namespace/root_storage_statistics.rb
+++ b/spec/factories/namespace/root_storage_statistics.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :namespace_root_storage_statistics, class: Namespace::RootStorageStatistics do
+ factory :namespace_root_storage_statistics, class: 'Namespace::RootStorageStatistics' do
namespace
end
end
diff --git a/spec/factories/notes.rb b/spec/factories/notes.rb
index 330f5276422..11fc5060cf0 100644
--- a/spec/factories/notes.rb
+++ b/spec/factories/notes.rb
@@ -18,9 +18,9 @@ FactoryBot.define do
factory :note_on_personal_snippet, traits: [:on_personal_snippet]
factory :system_note, traits: [:system]
- factory :discussion_note, class: DiscussionNote
+ factory :discussion_note, class: 'DiscussionNote'
- factory :discussion_note_on_merge_request, traits: [:on_merge_request], class: DiscussionNote do
+ factory :discussion_note_on_merge_request, traits: [:on_merge_request], class: 'DiscussionNote' do
association :project, :repository
trait :resolved do
@@ -29,22 +29,22 @@ FactoryBot.define do
end
end
- factory :discussion_note_on_issue, traits: [:on_issue], class: DiscussionNote
+ factory :discussion_note_on_issue, traits: [:on_issue], class: 'DiscussionNote'
- factory :discussion_note_on_commit, traits: [:on_commit], class: DiscussionNote
+ factory :discussion_note_on_commit, traits: [:on_commit], class: 'DiscussionNote'
- factory :discussion_note_on_personal_snippet, traits: [:on_personal_snippet], class: DiscussionNote
+ factory :discussion_note_on_personal_snippet, traits: [:on_personal_snippet], class: 'DiscussionNote'
- factory :discussion_note_on_snippet, traits: [:on_snippet], class: DiscussionNote
+ factory :discussion_note_on_snippet, traits: [:on_snippet], class: 'DiscussionNote'
- factory :legacy_diff_note_on_commit, traits: [:on_commit, :legacy_diff_note], class: LegacyDiffNote
+ factory :legacy_diff_note_on_commit, traits: [:on_commit, :legacy_diff_note], class: 'LegacyDiffNote'
- factory :legacy_diff_note_on_merge_request, traits: [:on_merge_request, :legacy_diff_note], class: LegacyDiffNote do
+ factory :legacy_diff_note_on_merge_request, traits: [:on_merge_request, :legacy_diff_note], class: 'LegacyDiffNote' do
association :project, :repository
position { '' }
end
- factory :diff_note_on_merge_request, traits: [:on_merge_request], class: DiffNote do
+ factory :diff_note_on_merge_request, traits: [:on_merge_request], class: 'DiffNote' do
association :project, :repository
transient do
@@ -95,7 +95,7 @@ FactoryBot.define do
end
end
- factory :diff_note_on_commit, traits: [:on_commit], class: DiffNote do
+ factory :diff_note_on_commit, traits: [:on_commit], class: 'DiffNote' do
association :project, :repository
transient do
diff --git a/spec/factories/project_error_tracking_settings.rb b/spec/factories/project_error_tracking_settings.rb
index f90a2d17846..7af881f4214 100644
--- a/spec/factories/project_error_tracking_settings.rb
+++ b/spec/factories/project_error_tracking_settings.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :project_error_tracking_setting, class: ErrorTracking::ProjectErrorTrackingSetting do
+ factory :project_error_tracking_setting, class: 'ErrorTracking::ProjectErrorTrackingSetting' do
project
api_url { 'https://gitlab.com/api/0/projects/sentry-org/sentry-project' }
enabled { true }
diff --git a/spec/factories/project_metrics_settings.rb b/spec/factories/project_metrics_settings.rb
index 51b2ce0e0e9..b5c0fd88a6c 100644
--- a/spec/factories/project_metrics_settings.rb
+++ b/spec/factories/project_metrics_settings.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :project_metrics_setting, class: ProjectMetricsSetting do
+ factory :project_metrics_setting, class: 'ProjectMetricsSetting' do
project
external_dashboard_url { 'https://grafana.com' }
end
diff --git a/spec/factories/prometheus_metrics.rb b/spec/factories/prometheus_metrics.rb
index f6b58cf84c3..83e3845f1c3 100644
--- a/spec/factories/prometheus_metrics.rb
+++ b/spec/factories/prometheus_metrics.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :prometheus_metric, class: PrometheusMetric do
+ factory :prometheus_metric, class: 'PrometheusMetric' do
title { 'title' }
query { 'avg(metric)' }
y_label { 'y_label' }
diff --git a/spec/factories/releases/link.rb b/spec/factories/releases/link.rb
index d23db6d4bad..82446dbdb69 100644
--- a/spec/factories/releases/link.rb
+++ b/spec/factories/releases/link.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :release_link, class: ::Releases::Link do
+ factory :release_link, class: '::Releases::Link' do
release
sequence(:name) { |n| "release-18.#{n}.dmg" }
sequence(:url) { |n| "https://example.com/scrambled-url/app-#{n}.zip" }
diff --git a/spec/factories/sentry_issue.rb b/spec/factories/sentry_issue.rb
index c9886f1673a..7e3f1750d7b 100644
--- a/spec/factories/sentry_issue.rb
+++ b/spec/factories/sentry_issue.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :sentry_issue, class: SentryIssue do
+ factory :sentry_issue, class: 'SentryIssue' do
issue
sentry_issue_identifier { 1234567891 }
end
diff --git a/spec/factories/serverless/domain_cluster.rb b/spec/factories/serverless/domain_cluster.rb
index 290d3fc152e..5adfcacbd7f 100644
--- a/spec/factories/serverless/domain_cluster.rb
+++ b/spec/factories/serverless/domain_cluster.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :serverless_domain_cluster, class: Serverless::DomainCluster do
+ factory :serverless_domain_cluster, class: 'Serverless::DomainCluster' do
pages_domain { create(:pages_domain) }
knative { create(:clusters_applications_knative) }
creator { create(:user) }
diff --git a/spec/factories/services.rb b/spec/factories/services.rb
index b6bb30d1f93..5d62b3cb9c9 100644
--- a/spec/factories/services.rb
+++ b/spec/factories/services.rb
@@ -6,7 +6,7 @@ FactoryBot.define do
type { 'Service' }
end
- factory :custom_issue_tracker_service, class: CustomIssueTrackerService do
+ factory :custom_issue_tracker_service, class: 'CustomIssueTrackerService' do
project
active { true }
issue_tracker
diff --git a/spec/factories/terms.rb b/spec/factories/terms.rb
index b98a2453f7e..915a6099c2a 100644
--- a/spec/factories/terms.rb
+++ b/spec/factories/terms.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
FactoryBot.define do
- factory :term, class: ApplicationSetting::Term do
+ factory :term, class: 'ApplicationSetting::Term' do
terms { "Lorem ipsum dolor sit amet, consectetur adipiscing elit." }
end
end
diff --git a/spec/factories/todos.rb b/spec/factories/todos.rb
index bb91fc9ac8e..0b5d00cff67 100644
--- a/spec/factories/todos.rb
+++ b/spec/factories/todos.rb
@@ -46,7 +46,7 @@ FactoryBot.define do
end
end
- factory :on_commit_todo, class: Todo do
+ factory :on_commit_todo, class: 'Todo' do
project
author
user
diff --git a/spec/features/boards/boards_spec.rb b/spec/features/boards/boards_spec.rb
index a5f98e82c33..8aad598b843 100644
--- a/spec/features/boards/boards_spec.rb
+++ b/spec/features/boards/boards_spec.rb
@@ -163,9 +163,7 @@ describe 'Issue Boards', :js do
end
it 'infinite scrolls list' do
- 50.times do
- create(:labeled_issue, project: project, labels: [planning])
- end
+ create_list(:labeled_issue, 50, project: project, labels: [planning])
visit project_board_path(project, board)
wait_for_requests
@@ -475,9 +473,7 @@ describe 'Issue Boards', :js do
end
it 'infinite scrolls list with label filter' do
- 50.times do
- create(:labeled_issue, project: project, labels: [planning, testing])
- end
+ create_list(:labeled_issue, 50, project: project, labels: [planning, testing])
set_filter("label", testing.title)
click_filter_link(testing.title)
diff --git a/spec/features/instance_statistics/cohorts_spec.rb b/spec/features/instance_statistics/cohorts_spec.rb
index 3940e8fa389..0bb2e4b997d 100644
--- a/spec/features/instance_statistics/cohorts_spec.rb
+++ b/spec/features/instance_statistics/cohorts_spec.rb
@@ -10,7 +10,7 @@ describe 'Cohorts page' do
end
it 'See users count per month' do
- 2.times { create(:user) }
+ create_list(:user, 2)
visit instance_statistics_cohorts_path
diff --git a/spec/features/issuables/issuable_list_spec.rb b/spec/features/issuables/issuable_list_spec.rb
index 30c516459c5..bcc05d313ad 100644
--- a/spec/features/issuables/issuable_list_spec.rb
+++ b/spec/features/issuables/issuable_list_spec.rb
@@ -83,9 +83,7 @@ describe 'issuable list' do
create(:merge_request, title: FFaker::Lorem.sentence, source_project: project, source_branch: source_branch, head_pipeline: pipeline)
end
- 2.times do
- create(:note_on_issue, noteable: issuable, project: project)
- end
+ create_list(:note_on_issue, 2, noteable: issuable, project: project)
create(:award_emoji, :downvote, awardable: issuable)
create(:award_emoji, :upvote, awardable: issuable)
diff --git a/spec/finders/issues_finder_spec.rb b/spec/finders/issues_finder_spec.rb
index c52ee89006b..056795a50d0 100644
--- a/spec/finders/issues_finder_spec.rb
+++ b/spec/finders/issues_finder_spec.rb
@@ -435,9 +435,7 @@ describe IssuesFinder do
let(:params) { { label_name: described_class::FILTER_ANY } }
it 'returns issues that have one or more label' do
- 2.times do
- create(:label_link, label: create(:label, project: project2), target: issue3)
- end
+ create_list(:label_link, 2, label: create(:label, project: project2), target: issue3)
expect(issues).to contain_exactly(issue2, issue3)
end
diff --git a/spec/frontend/lib/utils/datetime_utility_spec.js b/spec/frontend/lib/utils/datetime_utility_spec.js
index c32710196db..e584150ba70 100644
--- a/spec/frontend/lib/utils/datetime_utility_spec.js
+++ b/spec/frontend/lib/utils/datetime_utility_spec.js
@@ -455,6 +455,23 @@ describe('getDateInPast', () => {
});
});
+describe('getDateInFuture', () => {
+ const date = new Date('2019-07-16T00:00:00.000Z');
+ const daysInFuture = 90;
+
+ it('returns the correct date in the future', () => {
+ const dateInFuture = datetimeUtility.getDateInFuture(date, daysInFuture);
+ const expectedDateInFuture = new Date('2019-10-14T00:00:00.000Z');
+
+ expect(dateInFuture).toStrictEqual(expectedDateInFuture);
+ });
+
+ it('does not modifiy the original date', () => {
+ datetimeUtility.getDateInFuture(date, daysInFuture);
+ expect(date).toStrictEqual(new Date('2019-07-16T00:00:00.000Z'));
+ });
+});
+
describe('getDatesInRange', () => {
it('returns an empty array if 1st or 2nd argument is not a Date object', () => {
const d1 = new Date('2019-01-01');
diff --git a/spec/lib/gitlab/ci/config/entry/reports_spec.rb b/spec/lib/gitlab/ci/config/entry/reports_spec.rb
index 060fc5c1fe0..8562885c90c 100644
--- a/spec/lib/gitlab/ci/config/entry/reports_spec.rb
+++ b/spec/lib/gitlab/ci/config/entry/reports_spec.rb
@@ -41,7 +41,7 @@ describe Gitlab::Ci::Config::Entry::Reports do
:container_scanning | 'gl-container-scanning-report.json'
:dast | 'gl-dast-report.json'
:license_management | 'gl-license-management-report.json'
- :license_scanning | 'gl-license-management-report.json'
+ :license_scanning | 'gl-license-scanning-report.json'
:performance | 'performance.json'
end
diff --git a/spec/lib/gitlab/metrics/prometheus_spec.rb b/spec/lib/gitlab/metrics/prometheus_spec.rb
index d4aa96a5b20..e15a063fc9e 100644
--- a/spec/lib/gitlab/metrics/prometheus_spec.rb
+++ b/spec/lib/gitlab/metrics/prometheus_spec.rb
@@ -6,6 +6,10 @@ describe Gitlab::Metrics::Prometheus, :prometheus do
let(:all_metrics) { Gitlab::Metrics }
let(:registry) { all_metrics.registry }
+ after do
+ all_metrics.clear_errors!
+ end
+
describe '#reset_registry!' do
it 'clears existing metrics' do
registry.counter(:test, 'test metric')
diff --git a/spec/models/concerns/each_batch_spec.rb b/spec/models/concerns/each_batch_spec.rb
index c4cf8e80f7a..294fde4f8e6 100644
--- a/spec/models/concerns/each_batch_spec.rb
+++ b/spec/models/concerns/each_batch_spec.rb
@@ -13,7 +13,7 @@ describe EachBatch do
end
before do
- 5.times { create(:user, updated_at: 1.day.ago) }
+ create_list(:user, 5, updated_at: 1.day.ago)
end
shared_examples 'each_batch handling' do |kwargs|
diff --git a/spec/models/concerns/issuable_spec.rb b/spec/models/concerns/issuable_spec.rb
index 2f4855efff0..3e5c16c2491 100644
--- a/spec/models/concerns/issuable_spec.rb
+++ b/spec/models/concerns/issuable_spec.rb
@@ -326,7 +326,7 @@ describe Issuable do
context 'when all of the results are level on the sort key' do
let!(:issues) do
- 10.times { create(:issue, project: project) }
+ create_list(:issue, 10, project: project)
end
it 'has no duplicates across pages' do
diff --git a/spec/models/project_spec.rb b/spec/models/project_spec.rb
index e2fb7674d62..e3d9ffcfff1 100644
--- a/spec/models/project_spec.rb
+++ b/spec/models/project_spec.rb
@@ -1348,9 +1348,7 @@ describe Project do
let(:project2) { create(:project, :public, group: group) }
before do
- 2.times do
- create(:note_on_commit, project: project1)
- end
+ create_list(:note_on_commit, 2, project: project1)
create(:note_on_commit, project: project2)
@@ -1364,9 +1362,7 @@ describe Project do
end
it 'does not take system notes into account' do
- 10.times do
- create(:note_on_commit, project: project2, system: true)
- end
+ create_list(:note_on_commit, 10, project: project2, system: true)
expect(described_class.trending.to_a).to eq([project1, project2])
end
diff --git a/spec/models/trending_project_spec.rb b/spec/models/trending_project_spec.rb
index 619fc8e7d38..4a248b71574 100644
--- a/spec/models/trending_project_spec.rb
+++ b/spec/models/trending_project_spec.rb
@@ -11,13 +11,9 @@ describe TrendingProject do
let(:internal_project) { create(:project, :internal) }
before do
- 3.times do
- create(:note_on_commit, project: public_project1)
- end
+ create_list(:note_on_commit, 3, project: public_project1)
- 2.times do
- create(:note_on_commit, project: public_project2)
- end
+ create_list(:note_on_commit, 2, project: public_project2)
create(:note_on_commit, project: public_project3, created_at: 5.weeks.ago)
create(:note_on_commit, project: private_project)
diff --git a/spec/requests/api/jobs_spec.rb b/spec/requests/api/jobs_spec.rb
index 82bf607b911..1e1099ebcb6 100644
--- a/spec/requests/api/jobs_spec.rb
+++ b/spec/requests/api/jobs_spec.rb
@@ -244,7 +244,7 @@ describe API::Jobs do
get api("/projects/#{project.id}/pipelines/#{pipeline.id}/jobs", api_user), params: query
end.count
- 3.times { create(:ci_build, :trace_artifact, :artifacts, :test_reports, pipeline: pipeline) }
+ create_list(:ci_build, 3, :trace_artifact, :artifacts, :test_reports, pipeline: pipeline)
expect do
get api("/projects/#{project.id}/pipelines/#{pipeline.id}/jobs", api_user), params: query
diff --git a/spec/requests/api/pipelines_spec.rb b/spec/requests/api/pipelines_spec.rb
index a9d570b5696..75e3013d362 100644
--- a/spec/requests/api/pipelines_spec.rb
+++ b/spec/requests/api/pipelines_spec.rb
@@ -254,9 +254,7 @@ describe API::Pipelines do
context 'when order_by and sort are specified' do
context 'when order_by user_id' do
before do
- 3.times do
- create(:ci_pipeline, project: project, user: create(:user))
- end
+ create_list(:ci_pipeline, 3, project: project, user: create(:user))
end
context 'when sort parameter is valid' do
diff --git a/spec/views/search/_results.html.haml_spec.rb b/spec/views/search/_results.html.haml_spec.rb
index 628d2e10f93..3243758c650 100644
--- a/spec/views/search/_results.html.haml_spec.rb
+++ b/spec/views/search/_results.html.haml_spec.rb
@@ -6,7 +6,7 @@ describe 'search/_results' do
before do
controller.params[:action] = 'show'
- 3.times { create(:issue) }
+ create_list(:issue, 3)
@search_objects = Issue.page(1).per(2)
@scope = 'issues'