Add latest changes from gitlab-org/gitlab@master
This commit is contained in:
parent
94611567bd
commit
dea6ebd31a
|
@ -209,7 +209,7 @@ review-qa-all:
|
|||
when: manual
|
||||
parallel: 5
|
||||
script:
|
||||
- export KNAPSACK_REPORT_PATH=knapsack/${CI_PROJECT_NAME}/review-qa-all_master_report.json
|
||||
- export KNAPSACK_REPORT_PATH=knapsack/master_report.json
|
||||
- export KNAPSACK_TEST_FILE_PATTERN=qa/specs/features/**/*_spec.rb
|
||||
- gitlab-qa Test::Instance::Any "${QA_IMAGE}" "${CI_ENVIRONMENT_URL}" -- --format RspecJunitFormatter --out tmp/rspec-${CI_JOB_ID}.xml --format html --out tmp/rspec.htm --color --format documentation
|
||||
|
||||
|
|
|
@ -2,9 +2,9 @@
|
|||
|
||||
## Canonical source
|
||||
|
||||
The canonical source of GitLab where development takes place is [hosted on GitLab.com](https://gitlab.com/gitlab-org/gitlab).
|
||||
The canonical source of GitLab where all development takes place is [hosted on GitLab.com](https://gitlab.com/gitlab-org/gitlab).
|
||||
|
||||
A FOSS source of GitLab is hosted on a [mirrored, read-only project on GitLab.com](https://gitlab.com/gitlab-org/gitlab-foss/).
|
||||
If you wish to clone a copy of GitLab without proprietary code, you can use the read-only mirror of GitLab located at https://gitlab.com/gitlab-org/gitlab-foss/. Please do not submit any issues and/or merge requests to this project.
|
||||
|
||||
## Free trial
|
||||
|
||||
|
|
|
@ -1,11 +0,0 @@
|
|||
export default {
|
||||
data() {
|
||||
return {
|
||||
isCustomStageForm: false,
|
||||
};
|
||||
},
|
||||
methods: {
|
||||
showAddStageForm: () => {},
|
||||
hideAddStageForm: () => {},
|
||||
},
|
||||
};
|
|
@ -3,7 +3,6 @@ import Vue from 'vue';
|
|||
import Cookies from 'js-cookie';
|
||||
import { GlEmptyState } from '@gitlab/ui';
|
||||
import filterMixins from 'ee_else_ce/analytics/cycle_analytics/mixins/filter_mixins';
|
||||
import addStageMixin from 'ee_else_ce/analytics/cycle_analytics/mixins/add_stage_mixin';
|
||||
import Flash from '../flash';
|
||||
import { __ } from '~/locale';
|
||||
import Translate from '../vue_shared/translate';
|
||||
|
@ -44,14 +43,8 @@ export default () => {
|
|||
DateRangeDropdown: () =>
|
||||
import('ee_component/analytics/shared/components/date_range_dropdown.vue'),
|
||||
'stage-nav-item': stageNavItem,
|
||||
CustomStageForm: () =>
|
||||
import('ee_component/analytics/cycle_analytics/components/custom_stage_form.vue'),
|
||||
AddStageButton: () =>
|
||||
import('ee_component/analytics/cycle_analytics/components/add_stage_button.vue'),
|
||||
CustomStageFormContainer: () =>
|
||||
import('ee_component/analytics/cycle_analytics/components/custom_stage_form_container.vue'),
|
||||
},
|
||||
mixins: [filterMixins, addStageMixin],
|
||||
mixins: [filterMixins],
|
||||
data() {
|
||||
return {
|
||||
store: CycleAnalyticsStore,
|
||||
|
@ -131,7 +124,6 @@ export default () => {
|
|||
return;
|
||||
}
|
||||
|
||||
this.hideAddStageForm();
|
||||
this.isLoadingStage = true;
|
||||
this.store.setStageEvents([], stage);
|
||||
this.store.setActiveStage(stage);
|
||||
|
|
|
@ -152,6 +152,14 @@ export const commitChanges = ({ commit, state, getters, dispatch, rootState, roo
|
|||
branch: getters.branchName,
|
||||
})
|
||||
.then(() => {
|
||||
commit(rootTypes.CLEAR_STAGED_CHANGES, null, { root: true });
|
||||
|
||||
commit(rootTypes.CLEAR_REPLACED_FILES, null, { root: true });
|
||||
|
||||
setTimeout(() => {
|
||||
commit(rootTypes.SET_LAST_COMMIT_MSG, '', { root: true });
|
||||
}, 5000);
|
||||
|
||||
if (state.shouldCreateMR) {
|
||||
const { currentProject } = rootGetters;
|
||||
const targetBranch = getters.isCreatingNewBranch
|
||||
|
@ -164,14 +172,6 @@ export const commitChanges = ({ commit, state, getters, dispatch, rootState, roo
|
|||
{ root: true },
|
||||
);
|
||||
}
|
||||
|
||||
commit(rootTypes.CLEAR_STAGED_CHANGES, null, { root: true });
|
||||
|
||||
commit(rootTypes.CLEAR_REPLACED_FILES, null, { root: true });
|
||||
|
||||
setTimeout(() => {
|
||||
commit(rootTypes.SET_LAST_COMMIT_MSG, '', { root: true });
|
||||
}, 5000);
|
||||
})
|
||||
.then(() => {
|
||||
if (rootGetters.lastOpenedFile) {
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
<script>
|
||||
import { __ } from '~/locale';
|
||||
import { s__, __ } from '~/locale';
|
||||
import { GlLink, GlButton } from '@gitlab/ui';
|
||||
import { GlAreaChart, GlLineChart, GlChartSeriesLabel } from '@gitlab/ui/dist/charts';
|
||||
import dateFormat from 'dateformat';
|
||||
|
@ -52,6 +52,16 @@ export default {
|
|||
required: false,
|
||||
default: () => [],
|
||||
},
|
||||
legendAverageText: {
|
||||
type: String,
|
||||
required: false,
|
||||
default: s__('Metrics|Avg'),
|
||||
},
|
||||
legendMaxText: {
|
||||
type: String,
|
||||
required: false,
|
||||
default: s__('Metrics|Max'),
|
||||
},
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
|
@ -260,7 +270,6 @@ export default {
|
|||
<slot></slot>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<component
|
||||
:is="glChartComponent"
|
||||
ref="chart"
|
||||
|
@ -271,6 +280,8 @@ export default {
|
|||
:thresholds="thresholds"
|
||||
:width="width"
|
||||
:height="height"
|
||||
:average-text="legendAverageText"
|
||||
:max-text="legendMaxText"
|
||||
@updated="onChartUpdated"
|
||||
>
|
||||
<template v-if="tooltip.isDeployment">
|
||||
|
|
|
@ -81,7 +81,7 @@ module SubmoduleHelper
|
|||
end
|
||||
|
||||
def relative_self_links(relative_path, commit, project)
|
||||
relative_path.rstrip!
|
||||
relative_path = relative_path.rstrip
|
||||
absolute_project_path = "/" + project.full_path
|
||||
|
||||
# Resolve `relative_path` to target path
|
||||
|
|
|
@ -85,7 +85,7 @@ module Emails
|
|||
@project = Project.find(project_id)
|
||||
@results = results
|
||||
|
||||
mail(to: recipient(@user.id, @project.group), subject: subject('Imported issues')) do |format|
|
||||
mail(to: @user.notification_email_for(@project.group), subject: subject('Imported issues')) do |format|
|
||||
format.html { render layout: 'mailer' }
|
||||
format.text { render layout: 'mailer' }
|
||||
end
|
||||
|
@ -105,7 +105,7 @@ module Emails
|
|||
def issue_thread_options(sender_id, recipient_id, reason)
|
||||
{
|
||||
from: sender(sender_id),
|
||||
to: recipient(recipient_id, @project.group),
|
||||
to: User.find(recipient_id).notification_email_for(@project.group),
|
||||
subject: subject("#{@issue.title} (##{@issue.iid})"),
|
||||
'X-GitLab-NotificationReason' => reason
|
||||
}
|
||||
|
|
|
@ -13,7 +13,9 @@ module Emails
|
|||
@member_source_type = member_source_type
|
||||
@member_id = member_id
|
||||
|
||||
mail(to: recipient(recipient_id, notification_group),
|
||||
user = User.find(recipient_id)
|
||||
|
||||
mail(to: user.notification_email_for(notification_group),
|
||||
subject: subject("Request to join the #{member_source.human_name} #{member_source.model_name.singular}"))
|
||||
end
|
||||
|
||||
|
@ -21,7 +23,7 @@ module Emails
|
|||
@member_source_type = member_source_type
|
||||
@member_id = member_id
|
||||
|
||||
mail(to: recipient(member.user, notification_group),
|
||||
mail(to: member.user.notification_email_for(notification_group),
|
||||
subject: subject("Access to the #{member_source.human_name} #{member_source.model_name.singular} was granted"))
|
||||
end
|
||||
|
||||
|
@ -29,7 +31,9 @@ module Emails
|
|||
@member_source_type = member_source_type
|
||||
@member_source = member_source_class.find(source_id)
|
||||
|
||||
mail(to: recipient(user_id, notification_group),
|
||||
user = User.find(user_id)
|
||||
|
||||
mail(to: user.notification_email_for(notification_group),
|
||||
subject: subject("Access to the #{member_source.human_name} #{member_source.model_name.singular} was denied"))
|
||||
end
|
||||
|
||||
|
@ -47,7 +51,7 @@ module Emails
|
|||
@member_id = member_id
|
||||
return unless member.created_by
|
||||
|
||||
mail(to: recipient(member.created_by, notification_group),
|
||||
mail(to: member.created_by.notification_email_for(notification_group),
|
||||
subject: subject('Invitation accepted'))
|
||||
end
|
||||
|
||||
|
@ -58,7 +62,9 @@ module Emails
|
|||
@member_source = member_source_class.find(source_id)
|
||||
@invite_email = invite_email
|
||||
|
||||
mail(to: recipient(created_by_id, notification_group),
|
||||
user = User.find(created_by_id)
|
||||
|
||||
mail(to: user.notification_email_for(notification_group),
|
||||
subject: subject('Invitation declined'))
|
||||
end
|
||||
|
||||
|
|
|
@ -110,7 +110,7 @@ module Emails
|
|||
def merge_request_thread_options(sender_id, recipient_id, reason = nil)
|
||||
{
|
||||
from: sender(sender_id),
|
||||
to: recipient(recipient_id, @project.group),
|
||||
to: User.find(recipient_id).notification_email_for(@project.group),
|
||||
subject: subject("#{@merge_request.title} (#{@merge_request.to_reference})"),
|
||||
'X-GitLab-NotificationReason' => reason
|
||||
}
|
||||
|
|
|
@ -55,7 +55,7 @@ module Emails
|
|||
def note_thread_options(recipient_id, reason)
|
||||
{
|
||||
from: sender(@note.author_id),
|
||||
to: recipient(recipient_id, @project&.group || @group),
|
||||
to: User.find(recipient_id).notification_email_for(@project&.group || @group),
|
||||
subject: subject("#{@note.noteable.title} (#{@note.noteable.reference_link_text})"),
|
||||
'X-GitLab-NotificationReason' => reason
|
||||
}
|
||||
|
|
|
@ -7,7 +7,7 @@ module Emails
|
|||
@project = domain.project
|
||||
|
||||
mail(
|
||||
to: recipient(recipient.id, @project.group),
|
||||
to: recipient.notification_email_for(@project.group),
|
||||
subject: subject("GitLab Pages domain '#{domain.domain}' has been enabled")
|
||||
)
|
||||
end
|
||||
|
@ -17,7 +17,7 @@ module Emails
|
|||
@project = domain.project
|
||||
|
||||
mail(
|
||||
to: recipient(recipient.id, @project.group),
|
||||
to: recipient.notification_email_for(@project.group),
|
||||
subject: subject("GitLab Pages domain '#{domain.domain}' has been disabled")
|
||||
)
|
||||
end
|
||||
|
@ -27,7 +27,7 @@ module Emails
|
|||
@project = domain.project
|
||||
|
||||
mail(
|
||||
to: recipient(recipient.id, @project.group),
|
||||
to: recipient.notification_email_for(@project.group),
|
||||
subject: subject("Verification succeeded for GitLab Pages domain '#{domain.domain}'")
|
||||
)
|
||||
end
|
||||
|
@ -37,7 +37,7 @@ module Emails
|
|||
@project = domain.project
|
||||
|
||||
mail(
|
||||
to: recipient(recipient.id, @project.group),
|
||||
to: recipient.notification_email_for(@project.group),
|
||||
subject: subject("ACTION REQUIRED: Verification failed for GitLab Pages domain '#{domain.domain}'")
|
||||
)
|
||||
end
|
||||
|
|
|
@ -7,20 +7,20 @@ module Emails
|
|||
@project = Project.find project_id
|
||||
@target_url = project_url(@project)
|
||||
@old_path_with_namespace = old_path_with_namespace
|
||||
mail(to: recipient(user_id, @project.group),
|
||||
mail(to: @user.notification_email_for(@project.group),
|
||||
subject: subject("Project was moved"))
|
||||
end
|
||||
|
||||
def project_was_exported_email(current_user, project)
|
||||
@project = project
|
||||
mail(to: recipient(current_user.id, project.group),
|
||||
mail(to: current_user.notification_email_for(project.group),
|
||||
subject: subject("Project was exported"))
|
||||
end
|
||||
|
||||
def project_was_not_exported_email(current_user, project, errors)
|
||||
@project = project
|
||||
@errors = errors
|
||||
mail(to: recipient(current_user.id, @project.group),
|
||||
mail(to: current_user.notification_email_for(@project.group),
|
||||
subject: subject("Project export error"))
|
||||
end
|
||||
|
||||
|
@ -28,7 +28,7 @@ module Emails
|
|||
@project = project
|
||||
@user = user
|
||||
|
||||
mail(to: recipient(user.id, project.group), subject: subject("Project cleanup has completed"))
|
||||
mail(to: user.notification_email_for(project.group), subject: subject("Project cleanup has completed"))
|
||||
end
|
||||
|
||||
def repository_cleanup_failure_email(project, user, error)
|
||||
|
@ -36,7 +36,7 @@ module Emails
|
|||
@user = user
|
||||
@error = error
|
||||
|
||||
mail(to: recipient(user.id, project.group), subject: subject("Project cleanup failure"))
|
||||
mail(to: user.notification_email_for(project.group), subject: subject("Project cleanup failure"))
|
||||
end
|
||||
|
||||
def repository_push_email(project_id, opts = {})
|
||||
|
|
|
@ -5,8 +5,9 @@ module Emails
|
|||
def remote_mirror_update_failed_email(remote_mirror_id, recipient_id)
|
||||
@remote_mirror = RemoteMirror.find_by_id(remote_mirror_id)
|
||||
@project = @remote_mirror.project
|
||||
user = User.find(recipient_id)
|
||||
|
||||
mail(to: recipient(recipient_id, @project.group), subject: subject('Remote mirror update failed'))
|
||||
mail(to: user.notification_email_for(@project.group), subject: subject('Remote mirror update failed'))
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -71,20 +71,6 @@ class Notify < BaseMailer
|
|||
address.format
|
||||
end
|
||||
|
||||
# Look up a User's notification email for a particular context.
|
||||
# Can look up by their ID or can accept a User object.
|
||||
#
|
||||
# recipient - User object OR a User ID
|
||||
# notification_group - The parent group of the notification
|
||||
#
|
||||
# Returns a String containing the User's email address.
|
||||
def recipient(recipient, notification_group = nil)
|
||||
user = recipient if recipient.is_a?(User)
|
||||
user ||= User.find(recipient)
|
||||
|
||||
user.notification_email_for(notification_group)
|
||||
end
|
||||
|
||||
# Formats arguments into a String suitable for use as an email subject
|
||||
#
|
||||
# extra - Extra Strings to be inserted into the subject
|
||||
|
|
|
@ -245,7 +245,6 @@ class Project < ApplicationRecord
|
|||
|
||||
has_one :cluster_project, class_name: 'Clusters::Project'
|
||||
has_many :clusters, through: :cluster_project, class_name: 'Clusters::Cluster'
|
||||
has_many :cluster_ingresses, through: :clusters, source: :application_ingress, class_name: 'Clusters::Applications::Ingress'
|
||||
has_many :kubernetes_namespaces, class_name: 'Clusters::KubernetesNamespace'
|
||||
|
||||
has_many :prometheus_metrics
|
||||
|
|
|
@ -17,7 +17,7 @@ module Issues
|
|||
end
|
||||
|
||||
def can_add_link?
|
||||
available? && !link_in_issue_description?
|
||||
can? && !link_in_issue_description?
|
||||
end
|
||||
|
||||
def remove_link
|
||||
|
@ -29,7 +29,7 @@ module Issues
|
|||
end
|
||||
|
||||
def can_remove_link?
|
||||
available? && link_in_issue_description?
|
||||
can? && link_in_issue_description?
|
||||
end
|
||||
|
||||
def parse_link(link)
|
||||
|
@ -75,14 +75,6 @@ module Issues
|
|||
issue_description[/(\S+)\z/, 1]
|
||||
end
|
||||
|
||||
def available?
|
||||
feature_enabled? && can?
|
||||
end
|
||||
|
||||
def feature_enabled?
|
||||
Feature.enabled?(:issue_zoom_integration, project)
|
||||
end
|
||||
|
||||
def can?
|
||||
current_user.can?(:update_issue, project)
|
||||
end
|
||||
|
|
|
@ -43,6 +43,7 @@ module Projects
|
|||
shared_runners_enabled: @project.shared_runners_enabled,
|
||||
namespace_id: target_namespace.id,
|
||||
fork_network: fork_network,
|
||||
ci_config_path: @project.ci_config_path,
|
||||
# We need to set ci_default_git_depth to 0 for the forked project when
|
||||
# @project.ci_default_git_depth is nil in order to keep the same behaviour
|
||||
# and not get ProjectCiCdSetting::DEFAULT_GIT_DEPTH set on create
|
||||
|
|
|
@ -21,7 +21,7 @@
|
|||
|
||||
- if any_dashboard_nav_link?([:groups, :milestones, :activity, :snippets])
|
||||
%li.header-more.dropdown
|
||||
%a{ href: "#", data: { toggle: "dropdown" } }
|
||||
%a{ href: "#", data: { toggle: "dropdown", qa_selector: 'more_dropdown' } }
|
||||
= _('More')
|
||||
= sprite_icon('angle-down', css_class: 'caret-down')
|
||||
.dropdown-menu
|
||||
|
@ -42,7 +42,7 @@
|
|||
|
||||
- if dashboard_nav_link?(:snippets)
|
||||
= nav_link(controller: 'dashboard/snippets') do
|
||||
= link_to dashboard_snippets_path, class: 'dashboard-shortcuts-snippets qa-snippets-link' do
|
||||
= link_to dashboard_snippets_path, class: 'dashboard-shortcuts-snippets', data: { qa_selector: 'snippets_link' } do
|
||||
= _('Snippets')
|
||||
|
||||
= render_if_exists 'layouts/nav/sidebar/analytics_more_link'
|
||||
|
|
|
@ -0,0 +1,5 @@
|
|||
---
|
||||
title: Refactor email notification code
|
||||
merge_request: 17741
|
||||
author: briankabiro
|
||||
type: other
|
|
@ -0,0 +1,6 @@
|
|||
---
|
||||
title: 'Fix Issue: WebIDE asks for confirmation to leave the page when committing
|
||||
and creating a new MR'
|
||||
merge_request: 17671
|
||||
author:
|
||||
type: fixed
|
|
@ -0,0 +1,5 @@
|
|||
---
|
||||
title: Allow users to add and remove zoom rooms on an issue using quick action commands
|
||||
merge_request:
|
||||
author:
|
||||
type: added
|
|
@ -0,0 +1,5 @@
|
|||
---
|
||||
title: Preserve custom .gitlab-ci.yml config path when forking.
|
||||
merge_request: 17817
|
||||
author: Mathieu Parent
|
||||
type: added
|
|
@ -0,0 +1,5 @@
|
|||
---
|
||||
title: Provides internationalization support to chart legends
|
||||
merge_request: 16832
|
||||
author:
|
||||
type: added
|
|
@ -0,0 +1,5 @@
|
|||
---
|
||||
title: Expose web_url for epics on API
|
||||
merge_request: 17380
|
||||
author:
|
||||
type: added
|
|
@ -67,7 +67,7 @@ Example response:
|
|||
"title": "Accusamus iste et ullam ratione voluptatem omnis debitis dolor est.",
|
||||
"description": "Molestias dolorem eos vitae expedita impedit necessitatibus quo voluptatum.",
|
||||
"state": "opened",
|
||||
"web_edit_url": "http://localhost:3001/groups/test/-/epics/4",
|
||||
"web_url": "http://localhost:3001/groups/test/-/epics/4",
|
||||
"reference": "&4",
|
||||
"author": {
|
||||
"id": 10,
|
||||
|
@ -122,7 +122,7 @@ Example response:
|
|||
"title": "Ea cupiditate dolores ut vero consequatur quasi veniam voluptatem et non.",
|
||||
"description": "Molestias dolorem eos vitae expedita impedit necessitatibus quo voluptatum.",
|
||||
"state": "opened",
|
||||
"web_edit_url": "http://localhost:3001/groups/test/-/epics/5",
|
||||
"web_url": "http://localhost:3001/groups/test/-/epics/5",
|
||||
"reference": "&5",
|
||||
"author":{
|
||||
"id": 7,
|
||||
|
@ -188,7 +188,7 @@ Example response:
|
|||
"title": "Epic",
|
||||
"description": "Epic description",
|
||||
"state": "opened",
|
||||
"web_edit_url": "http://localhost:3001/groups/test/-/epics/6",
|
||||
"web_url": "http://localhost:3001/groups/test/-/epics/5",
|
||||
"reference": "&6",
|
||||
"author": {
|
||||
"name" : "Alexandra Bashirian",
|
||||
|
@ -255,7 +255,7 @@ Example response:
|
|||
"title": "New Title",
|
||||
"description": "Epic description",
|
||||
"state": "opened",
|
||||
"web_edit_url": "http://localhost:3001/groups/test/-/epics/6",
|
||||
"web_url": "http://localhost:3001/groups/test/-/epics/5",
|
||||
"reference": "&6",
|
||||
"author": {
|
||||
"name" : "Alexandra Bashirian",
|
||||
|
|
|
@ -64,8 +64,8 @@ The following quick actions are applicable to descriptions, discussions and thre
|
|||
| `/create_merge_request <branch name>` | ✓ | | | Create a new merge request starting from the current issue |
|
||||
| `/relate #issue1 #issue2` | ✓ | | | Mark issues as related **(STARTER)** |
|
||||
| `/move <path/to/project>` | ✓ | | | Move this issue to another project |
|
||||
| `/zoom <Zoom URL>` | ✓ | | | Add Zoom meeting to this issue. ([Introduced in GitLab 12.3](https://gitlab.com/gitlab-org/gitlab/merge_requests/16609). Must be enabled by feature flag `issue_zoom_integration` for self-hosted. [Feature flag to be removed and available by default in 12.4.](https://gitlab.com/gitlab-org/gitlab/issues/32133)) |
|
||||
| `/remove_zoom` | ✓ | | | Remove Zoom meeting from this issue. ([Introduced in GitLab 12.3](https://gitlab.com/gitlab-org/gitlab/merge_requests/16609). Must be enabled by feature flag `issue_zoom_integration` for self-hosted. [Feature flag to be removed and available by default in 12.4.](https://gitlab.com/gitlab-org/gitlab/issues/32133)) |
|
||||
| `/zoom <Zoom URL>` | ✓ | | | Add Zoom meeting to this issue. |
|
||||
| `/remove_zoom` | ✓ | | | Remove Zoom meeting from this issue. |
|
||||
| `/target_branch <local branch name>` | | ✓ | | Set target branch |
|
||||
| `/wip` | | ✓ | | Toggle the Work In Progress status |
|
||||
| `/approve` | | ✓ | | Approve the merge request |
|
||||
|
|
|
@ -9858,6 +9858,9 @@ msgstr ""
|
|||
msgid "Metrics|Add metric"
|
||||
msgstr ""
|
||||
|
||||
msgid "Metrics|Avg"
|
||||
msgstr ""
|
||||
|
||||
msgid "Metrics|Check out the CI/CD documentation on deploying to an environment"
|
||||
msgstr ""
|
||||
|
||||
|
@ -9888,6 +9891,9 @@ msgstr ""
|
|||
msgid "Metrics|Legend label (optional)"
|
||||
msgstr ""
|
||||
|
||||
msgid "Metrics|Max"
|
||||
msgstr ""
|
||||
|
||||
msgid "Metrics|Must be a valid PromQL query."
|
||||
msgstr ""
|
||||
|
||||
|
@ -15833,7 +15839,7 @@ msgstr ""
|
|||
msgid "There was an error fetching configuration for charts"
|
||||
msgstr ""
|
||||
|
||||
msgid "There was an error fetching the form data"
|
||||
msgid "There was an error fetching data for the form"
|
||||
msgstr ""
|
||||
|
||||
msgid "There was an error gathering the chart data"
|
||||
|
|
|
@ -1,42 +0,0 @@
|
|||
{
|
||||
"qa/specs/features/browser_ui/1_manage/project/add_project_member_spec.rb": 9.697327613830566,
|
||||
"qa/specs/features/browser_ui/3_create/merge_request/rebase_merge_request_spec.rb": 46.54227638244629,
|
||||
"qa/specs/features/browser_ui/1_manage/project/create_project_spec.rb": 10.214765310287476,
|
||||
"qa/specs/features/browser_ui/1_manage/project/view_project_activity_spec.rb": 7.882027864456177,
|
||||
"qa/specs/features/api/3_create/repository/files_spec.rb": 5.015859127044678,
|
||||
"qa/specs/features/browser_ui/2_plan/issue/filter_issue_comments_spec.rb": 12.772682905197144,
|
||||
"qa/specs/features/browser_ui/3_create/repository/push_protected_branch_spec.rb": 29.76174831390381,
|
||||
"qa/specs/features/browser_ui/3_create/repository/use_ssh_key_spec.rb": 22.800872802734375,
|
||||
"qa/specs/features/browser_ui/1_manage/login/register_spec.rb": 22.320587396621704,
|
||||
"qa/specs/features/api/1_manage/users_spec.rb": 0.6089541912078857,
|
||||
"qa/specs/features/browser_ui/3_create/repository/clone_spec.rb": 0.9618203639984131,
|
||||
"qa/specs/features/browser_ui/2_plan/issue/collapse_comments_in_discussions_spec.rb": 13.403101205825806,
|
||||
"qa/specs/features/browser_ui/non_devops/performance_bar_spec.rb": 8.810423135757446,
|
||||
"qa/specs/features/browser_ui/3_create/repository/push_over_http_spec.rb": 7.730542182922363,
|
||||
"qa/specs/features/browser_ui/3_create/repository/add_ssh_key_spec.rb": 16.18057894706726,
|
||||
"qa/specs/features/browser_ui/4_verify/ci_variable/add_ci_variable_spec.rb": 8.31815505027771,
|
||||
"qa/specs/features/browser_ui/3_create/repository/push_http_private_token_spec.rb": 9.48607873916626,
|
||||
"qa/specs/features/browser_ui/2_plan/issue/create_issue_spec.rb": 19.552733182907104,
|
||||
"qa/specs/features/browser_ui/3_create/wiki/create_edit_clone_push_wiki_spec.rb": 17.273863554000854,
|
||||
"qa/specs/features/browser_ui/7_configure/auto_devops/create_project_with_auto_devops_spec.rb": 8.281434059143066,
|
||||
"qa/specs/features/browser_ui/3_create/repository/create_edit_delete_file_via_web_spec.rb": 18.047621726989746,
|
||||
"qa/specs/features/browser_ui/6_release/deploy_token/add_deploy_token_spec.rb": 7.422840595245361,
|
||||
"qa/specs/features/browser_ui/1_manage/login/log_in_spec.rb": 3.438166856765747,
|
||||
"qa/specs/features/browser_ui/4_verify/runner/register_runner_spec.rb": 18.679633855819702,
|
||||
"qa/specs/features/browser_ui/3_create/merge_request/squash_merge_request_spec.rb": 27.943300485610962,
|
||||
"qa/specs/features/browser_ui/3_create/repository/add_list_delete_branches_spec.rb": 39.17585229873657,
|
||||
"qa/specs/features/browser_ui/3_create/repository/add_file_template_spec.rb": 40.09336972236633,
|
||||
"qa/specs/features/browser_ui/3_create/merge_request/view_merge_request_diff_patch_spec.rb": 3.705310821533203,
|
||||
"qa/specs/features/browser_ui/3_create/snippet/create_snippet_spec.rb": 5.812374591827393,
|
||||
"qa/specs/features/browser_ui/6_release/deploy_key/clone_using_deploy_key_spec.rb": 92.46774697303772,
|
||||
"qa/specs/features/browser_ui/1_manage/project/import_github_repo_spec.rb": 100.28881478309631,
|
||||
"qa/specs/features/browser_ui/3_create/repository/push_mirroring_over_http_spec.rb": 23.710937023162842,
|
||||
"qa/specs/features/browser_ui/1_manage/login/login_via_oauth_spec.rb": 20.58603596687317,
|
||||
"qa/specs/features/browser_ui/3_create/web_ide/add_file_template_spec.rb": 25.460349321365356,
|
||||
"qa/specs/features/browser_ui/3_create/repository/push_over_http_file_size_spec.rb": 19.459370374679565,
|
||||
"qa/specs/features/browser_ui/3_create/repository/user_views_commit_diff_patch_spec.rb": 6.731764793395996,
|
||||
"qa/specs/features/browser_ui/6_release/deploy_key/add_deploy_key_spec.rb": 15.342933893203735,
|
||||
"qa/specs/features/browser_ui/2_plan/issue/issue_suggestions_spec.rb": 11.280649185180664,
|
||||
"qa/specs/features/browser_ui/3_create/merge_request/create_merge_request_spec.rb": 57.48992609977722,
|
||||
"qa/specs/features/browser_ui/3_create/merge_request/merge_merge_request_from_fork_spec.rb": 32.5517954826355
|
||||
}
|
|
@ -1,4 +1,12 @@
|
|||
{
|
||||
"qa/specs/features/ee/api/2_plan/epics_milestone_dates_spec.rb": 4.835599899291992,
|
||||
"qa/specs/features/ee/browser_ui/2_plan/epic/epics_management_spec.rb": 69.85551619529724,
|
||||
"qa/specs/features/ee/browser_ui/2_plan/epic/promote_issue_to_epic_spec.rb": 14.649160623550415,
|
||||
"qa/specs/features/ee/browser_ui/2_plan/scoped_labels/editing_scoped_labels_spec.rb": 12.790381908416748,
|
||||
"qa/specs/features/ee/browser_ui/3_create/merge_request/add_batch_comments_in_merge_request_spec.rb": 0.00018262863159179688,
|
||||
"qa/specs/features/ee/browser_ui/3_create/repository/assign_code_owners_spec.rb": 59.73394823074341,
|
||||
"qa/specs/features/ee/browser_ui/3_create/repository/code_owners_spec.rb": 26.39240026473999,
|
||||
"qa/specs/features/ee/browser_ui/secure/create_project_with_secure_spec.rb": 46.76790499687195,
|
||||
"qa/specs/features/api/1_manage/users_spec.rb": 0.6089541912078857,
|
||||
"qa/specs/features/api/3_create/repository/files_spec.rb": 5.015859127044678,
|
||||
"qa/specs/features/api/3_create/repository/project_archive_compare_spec.rb": 1.0199065208435059,
|
|
@ -20,6 +20,7 @@ module QA
|
|||
element :admin_area_link
|
||||
element :projects_dropdown, required: true
|
||||
element :groups_dropdown, required: true
|
||||
element :more_dropdown, required: true
|
||||
element :snippets_link
|
||||
end
|
||||
|
||||
|
@ -52,6 +53,13 @@ module QA
|
|||
end
|
||||
end
|
||||
|
||||
def go_to_snippets
|
||||
within_top_menu do
|
||||
click_element :more_dropdown
|
||||
click_element :snippets_link
|
||||
end
|
||||
end
|
||||
|
||||
def click_admin_area
|
||||
within_top_menu { click_element :admin_area_link }
|
||||
end
|
||||
|
@ -80,10 +88,6 @@ module QA
|
|||
end
|
||||
end
|
||||
|
||||
def click_snippets_link
|
||||
click_element :snippets_link
|
||||
end
|
||||
|
||||
def search_for(term)
|
||||
fill_element :search_term_field, "#{term}\n"
|
||||
end
|
||||
|
|
|
@ -7,7 +7,7 @@ module QA
|
|||
Runtime::Browser.visit(:gitlab, Page::Main::Login)
|
||||
Page::Main::Login.perform(&:sign_in_using_credentials)
|
||||
|
||||
Page::Main::Menu.perform(&:click_snippets_link)
|
||||
Page::Main::Menu.perform(&:go_to_snippets)
|
||||
|
||||
Resource::Snippet.fabricate_via_browser_ui! do |snippet|
|
||||
snippet.title = 'Snippet title'
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe ApplicationHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe AutoDevopsHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe AvatarsHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe AwardEmojiHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe BlameHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe BlobHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe BoardsHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe BroadcastMessagesHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe ButtonHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe CalendarHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe CiStatusHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe CommitsHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe ComponentsHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe DashboardHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe DeferScriptTagHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe EmailsHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe EventsHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe ExploreHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe FormHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe GitHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe GitlabRoutingHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe GraphHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe HooksHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe IconsHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe ImportHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe InstanceConfigurationHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require "spec_helper"
|
||||
|
||||
describe IssuesHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe LabelsHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe MarkupHelper do
|
||||
|
@ -408,12 +410,12 @@ describe MarkupHelper do
|
|||
|
||||
it 'preserves a link href when link text is truncated' do
|
||||
text = 'The quick brown fox jumped over the lazy dog' # 44 chars
|
||||
input = "#{text}#{text}#{text} " # 133 chars
|
||||
link_url = 'http://example.com/foo/bar/baz' # 30 chars
|
||||
input << link_url
|
||||
object = create_object(input)
|
||||
input = "#{text}#{text}#{text} #{link_url}" # 163 chars
|
||||
expected_link_text = 'http://example...</a>'
|
||||
|
||||
object = create_object(input)
|
||||
|
||||
expect(first_line_in_markdown(object, attribute, 150, project: project)).to match(link_url)
|
||||
expect(first_line_in_markdown(object, attribute, 150, project: project)).to match(expected_link_text)
|
||||
end
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe MembersHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe MilestonesHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe MilestonesRoutingHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe NamespacesHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe NavHelper, :do_not_mock_admin_mode do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require "spec_helper"
|
||||
|
||||
describe NotesHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe NotificationsHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe PageLayoutHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe PaginationHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe PreferencesHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe ProfilesHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe RssHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe RunnersHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe SearchHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe SidekiqHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe SnippetsHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require "spec_helper"
|
||||
|
||||
describe StorageHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe SubmoduleHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe TabHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe TimeHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require "spec_helper"
|
||||
|
||||
describe TodosHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe TreeHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require "spec_helper"
|
||||
|
||||
describe UserCalloutsHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe UsersHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe VersionCheckHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe VisibilityLevelHelper do
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe WikiHelper do
|
||||
|
|
|
@ -473,18 +473,16 @@ describe('IDE commit module actions', () => {
|
|||
});
|
||||
|
||||
it('resets changed files before redirecting', done => {
|
||||
visitUrl = visitUrl.and.callFake(() => {
|
||||
expect(store.state.stagedFiles.length).toBe(0);
|
||||
done();
|
||||
});
|
||||
|
||||
spyOn(eventHub, '$on');
|
||||
|
||||
store.state.commit.commitAction = '3';
|
||||
|
||||
store
|
||||
.dispatch('commit/commitChanges')
|
||||
.then(() => {
|
||||
expect(store.state.stagedFiles.length).toBe(0);
|
||||
|
||||
done();
|
||||
})
|
||||
.catch(done.fail);
|
||||
store.dispatch('commit/commitChanges').catch(done.fail);
|
||||
});
|
||||
});
|
||||
});
|
||||
|
|
|
@ -60,6 +60,18 @@ describe('Time series component', () => {
|
|||
expect(timeSeriesChart.find('.js-graph-widgets').text()).toBe(mockWidgets);
|
||||
});
|
||||
|
||||
it('allows user to override max value label text using prop', () => {
|
||||
timeSeriesChart.setProps({ legendMaxText: 'legendMaxText' });
|
||||
|
||||
expect(timeSeriesChart.props().legendMaxText).toBe('legendMaxText');
|
||||
});
|
||||
|
||||
it('allows user to override average value label text using prop', () => {
|
||||
timeSeriesChart.setProps({ legendAverageText: 'averageText' });
|
||||
|
||||
expect(timeSeriesChart.props().legendAverageText).toBe('averageText');
|
||||
});
|
||||
|
||||
describe('methods', () => {
|
||||
describe('formatTooltipText', () => {
|
||||
const mockDate = deploymentData[0].created_at;
|
||||
|
|
|
@ -250,7 +250,6 @@ project:
|
|||
- cluster
|
||||
- clusters
|
||||
- cluster_project
|
||||
- cluster_ingresses
|
||||
- creator
|
||||
- cycle_analytics_stages
|
||||
- group
|
||||
|
|
|
@ -38,12 +38,6 @@ describe Issues::ZoomLinkService do
|
|||
end
|
||||
end
|
||||
|
||||
shared_context 'feature flag disabled' do
|
||||
before do
|
||||
stub_feature_flags(issue_zoom_integration: false)
|
||||
end
|
||||
end
|
||||
|
||||
shared_context 'insufficient permissions' do
|
||||
before do
|
||||
project.add_guest(user)
|
||||
|
@ -78,11 +72,6 @@ describe Issues::ZoomLinkService do
|
|||
include_examples 'cannot add link'
|
||||
end
|
||||
|
||||
context 'when feature flag is disabled' do
|
||||
include_context 'feature flag disabled'
|
||||
include_examples 'cannot add link'
|
||||
end
|
||||
|
||||
context 'with insufficient permissions' do
|
||||
include_context 'insufficient permissions'
|
||||
include_examples 'cannot add link'
|
||||
|
@ -113,12 +102,6 @@ describe Issues::ZoomLinkService do
|
|||
|
||||
it { is_expected.to eq(true) }
|
||||
|
||||
context 'when feature flag is disabled' do
|
||||
include_context 'feature flag disabled'
|
||||
|
||||
it { is_expected.to eq(false) }
|
||||
end
|
||||
|
||||
context 'with insufficient permissions' do
|
||||
include_context 'insufficient permissions'
|
||||
|
||||
|
@ -152,11 +135,6 @@ describe Issues::ZoomLinkService do
|
|||
.to eq(issue.description.delete_suffix("\n\n#{zoom_link}"))
|
||||
end
|
||||
|
||||
context 'when feature flag is disabled' do
|
||||
include_context 'feature flag disabled'
|
||||
include_examples 'cannot remove link'
|
||||
end
|
||||
|
||||
context 'with insufficient permissions' do
|
||||
include_context 'insufficient permissions'
|
||||
include_examples 'cannot remove link'
|
||||
|
@ -187,12 +165,6 @@ describe Issues::ZoomLinkService do
|
|||
|
||||
it { is_expected.to eq(true) }
|
||||
|
||||
context 'when feature flag is disabled' do
|
||||
include_context 'feature flag disabled'
|
||||
|
||||
it { is_expected.to eq(false) }
|
||||
end
|
||||
|
||||
context 'with insufficient permissions' do
|
||||
include_context 'insufficient permissions'
|
||||
|
||||
|
|
|
@ -50,6 +50,7 @@ describe Projects::ForkService do
|
|||
it { expect(to_project.star_count).to be_zero }
|
||||
it { expect(to_project.description).to eq(@from_project.description) }
|
||||
it { expect(to_project.avatar.file).to be_exists }
|
||||
it { expect(to_project.ci_config_path).to eq(@from_project.ci_config_path) }
|
||||
|
||||
# This test is here because we had a bug where the from-project lost its
|
||||
# avatar after being forked.
|
||||
|
@ -215,7 +216,8 @@ describe Projects::ForkService do
|
|||
@project = create(:project, :repository,
|
||||
creator_id: @group_owner.id,
|
||||
star_count: 777,
|
||||
description: 'Wow, such a cool project!')
|
||||
description: 'Wow, such a cool project!',
|
||||
ci_config_path: 'debian/salsa-ci.yml')
|
||||
@group = create(:group)
|
||||
@group.add_user(@group_owner, GroupMember::OWNER)
|
||||
@group.add_user(@developer, GroupMember::DEVELOPER)
|
||||
|
@ -235,6 +237,7 @@ describe Projects::ForkService do
|
|||
expect(to_project.name).to eq(@project.name)
|
||||
expect(to_project.path).to eq(@project.path)
|
||||
expect(to_project.description).to eq(@project.description)
|
||||
expect(to_project.ci_config_path).to eq(@project.ci_config_path)
|
||||
expect(to_project.star_count).to be_zero
|
||||
end
|
||||
end
|
||||
|
|
|
@ -373,6 +373,8 @@ module GpgHelpers
|
|||
KEY
|
||||
end
|
||||
|
||||
# passphrase for secret key is:
|
||||
# 4a45718624c9939a043471d83d1eda7c
|
||||
def secret_key
|
||||
<<~SECRET
|
||||
-----BEGIN PGP PRIVATE KEY BLOCK-----
|
||||
|
|
|
@ -45,14 +45,6 @@ shared_examples 'zoom quick actions' do
|
|||
expect(page).to have_content('Failed to add a Zoom meeting')
|
||||
expect(page).not_to have_content(zoom_link)
|
||||
end
|
||||
|
||||
context 'when feature flag disabled' do
|
||||
before do
|
||||
stub_feature_flags(issue_zoom_integration: false)
|
||||
end
|
||||
|
||||
include_examples 'skip silently'
|
||||
end
|
||||
end
|
||||
|
||||
context 'with Zoom link not at the end of the issue description' do
|
||||
|
@ -92,14 +84,6 @@ shared_examples 'zoom quick actions' do
|
|||
expect(page).to have_content('Zoom meeting removed')
|
||||
expect(issue.reload.description).to eq("Text with #{zoom_link}")
|
||||
end
|
||||
|
||||
context 'when feature flag disabled' do
|
||||
before do
|
||||
stub_feature_flags(issue_zoom_integration: false)
|
||||
end
|
||||
|
||||
include_examples 'skip silently'
|
||||
end
|
||||
end
|
||||
|
||||
context 'with a Zoom link not at the end of the description' do
|
||||
|
|
Loading…
Reference in New Issue