Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/spec
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2019-12-24 12:07:44 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2019-12-24 12:07:44 +0300
commit6593f1f627938f22090dec5221476772d3ed581d (patch)
treeac5b9adf00f24f1d7cbc59c7d78f7c4fd06a0001 /spec
parent2f369bd95866b7f623387ce2b6acf646df3d5222 (diff)
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'spec')
-rw-r--r--spec/frontend/vue_shared/components/markdown/suggestion_diff_row_spec.js52
-rw-r--r--spec/models/concerns/safe_url_spec.rb14
-rw-r--r--spec/requests/api/internal/base_spec.rb6
-rw-r--r--spec/routing/project_routing_spec.rb8
-rw-r--r--spec/services/quick_actions/interpret_service_spec.rb5
-rw-r--r--spec/validators/qualified_domain_array_validator_spec.rb15
6 files changed, 72 insertions, 28 deletions
diff --git a/spec/frontend/vue_shared/components/markdown/suggestion_diff_row_spec.js b/spec/frontend/vue_shared/components/markdown/suggestion_diff_row_spec.js
index c8deac1c086..8e6ac6a5fab 100644
--- a/spec/frontend/vue_shared/components/markdown/suggestion_diff_row_spec.js
+++ b/spec/frontend/vue_shared/components/markdown/suggestion_diff_row_spec.js
@@ -7,8 +7,8 @@ const oldLine = {
meta_data: null,
new_line: null,
old_line: 5,
- rich_text: '-oldtext',
- text: '-oldtext',
+ rich_text: 'oldrichtext',
+ text: 'oldplaintext',
type: 'old',
};
@@ -18,8 +18,8 @@ const newLine = {
meta_data: null,
new_line: 6,
old_line: null,
- rich_text: '-newtext',
- text: '-newtext',
+ rich_text: 'newrichtext',
+ text: 'newplaintext',
type: 'new',
};
@@ -42,14 +42,46 @@ describe('SuggestionDiffRow', () => {
wrapper.destroy();
});
- it('renders correctly', () => {
- factory({
- propsData: {
- line: oldLine,
- },
+ describe('renders correctly', () => {
+ it('has the right classes on the wrapper', () => {
+ factory({
+ propsData: {
+ line: oldLine,
+ },
+ });
+
+ expect(wrapper.is('.line_holder')).toBe(true);
+ });
+
+ it('renders the rich text when it is available', () => {
+ factory({
+ propsData: {
+ line: newLine,
+ },
+ });
+
+ expect(wrapper.find('td.line_content').text()).toEqual('newrichtext');
});
- expect(wrapper.is('.line_holder')).toBe(true);
+ it('renders the plain text when it is available but rich text is not', () => {
+ factory({
+ propsData: {
+ line: Object.assign({}, newLine, { rich_text: undefined }),
+ },
+ });
+
+ expect(wrapper.find('td.line_content').text()).toEqual('newplaintext');
+ });
+
+ it('renders a zero-width space when it has no plain or rich texts', () => {
+ factory({
+ propsData: {
+ line: Object.assign({}, newLine, { rich_text: undefined, text: undefined }),
+ },
+ });
+
+ expect(wrapper.find('td.line_content').text()).toEqual('\u200B');
+ });
});
describe('when passed line has type old', () => {
diff --git a/spec/models/concerns/safe_url_spec.rb b/spec/models/concerns/safe_url_spec.rb
index 0ad26660a60..e523e6a15e4 100644
--- a/spec/models/concerns/safe_url_spec.rb
+++ b/spec/models/concerns/safe_url_spec.rb
@@ -4,17 +4,19 @@ require 'spec_helper'
describe SafeUrl do
describe '#safe_url' do
- class SafeUrlTestClass
- include SafeUrl
+ let(:safe_url_test_class) do
+ Class.new do
+ include SafeUrl
- attr_reader :url
+ attr_reader :url
- def initialize(url)
- @url = url
+ def initialize(url)
+ @url = url
+ end
end
end
- let(:test_class) { SafeUrlTestClass.new(url) }
+ let(:test_class) { safe_url_test_class.new(url) }
let(:url) { 'http://example.com' }
subject { test_class.safe_url }
diff --git a/spec/requests/api/internal/base_spec.rb b/spec/requests/api/internal/base_spec.rb
index ecbb81294a0..df55e9ad849 100644
--- a/spec/requests/api/internal/base_spec.rb
+++ b/spec/requests/api/internal/base_spec.rb
@@ -326,7 +326,7 @@ describe API::Internal::Base do
expect(json_response["gitaly"]["repository"]["relative_path"]).to eq(project.repository.gitaly_repository.relative_path)
expect(json_response["gitaly"]["address"]).to eq(Gitlab::GitalyClient.address(project.repository_storage))
expect(json_response["gitaly"]["token"]).to eq(Gitlab::GitalyClient.token(project.repository_storage))
- expect(json_response["gitaly"]["features"]).to eq('gitaly-feature-inforef-uploadpack-cache' => 'true', 'gitaly-feature-get-tag-messages-go' => 'true', 'gitaly-feature-filter-shas-with-signatures-go' => 'true')
+ expect(json_response["gitaly"]["features"]).to eq('gitaly-feature-inforef-uploadpack-cache' => 'true', 'gitaly-feature-get-tag-messages-go' => 'true', 'gitaly-feature-filter-shas-with-signatures-go' => 'true', 'gitaly-feature-cache-invalidator' => 'true')
expect(user.reload.last_activity_on).to eql(Date.today)
end
end
@@ -346,7 +346,7 @@ describe API::Internal::Base do
expect(json_response["gitaly"]["repository"]["relative_path"]).to eq(project.repository.gitaly_repository.relative_path)
expect(json_response["gitaly"]["address"]).to eq(Gitlab::GitalyClient.address(project.repository_storage))
expect(json_response["gitaly"]["token"]).to eq(Gitlab::GitalyClient.token(project.repository_storage))
- expect(json_response["gitaly"]["features"]).to eq('gitaly-feature-inforef-uploadpack-cache' => 'true', 'gitaly-feature-get-tag-messages-go' => 'true', 'gitaly-feature-filter-shas-with-signatures-go' => 'true')
+ expect(json_response["gitaly"]["features"]).to eq('gitaly-feature-inforef-uploadpack-cache' => 'true', 'gitaly-feature-get-tag-messages-go' => 'true', 'gitaly-feature-filter-shas-with-signatures-go' => 'true', 'gitaly-feature-cache-invalidator' => 'true')
expect(user.reload.last_activity_on).to be_nil
end
end
@@ -588,7 +588,7 @@ describe API::Internal::Base do
expect(json_response["gitaly"]["repository"]["relative_path"]).to eq(project.repository.gitaly_repository.relative_path)
expect(json_response["gitaly"]["address"]).to eq(Gitlab::GitalyClient.address(project.repository_storage))
expect(json_response["gitaly"]["token"]).to eq(Gitlab::GitalyClient.token(project.repository_storage))
- expect(json_response["gitaly"]["features"]).to eq('gitaly-feature-inforef-uploadpack-cache' => 'true', 'gitaly-feature-get-tag-messages-go' => 'true', 'gitaly-feature-filter-shas-with-signatures-go' => 'true')
+ expect(json_response["gitaly"]["features"]).to eq('gitaly-feature-inforef-uploadpack-cache' => 'true', 'gitaly-feature-get-tag-messages-go' => 'true', 'gitaly-feature-filter-shas-with-signatures-go' => 'true', 'gitaly-feature-cache-invalidator' => 'true')
end
end
diff --git a/spec/routing/project_routing_spec.rb b/spec/routing/project_routing_spec.rb
index b736d58bf58..efd7d3f3742 100644
--- a/spec/routing/project_routing_spec.rb
+++ b/spec/routing/project_routing_spec.rb
@@ -579,6 +579,10 @@ describe 'project routing' do
namespace_id: 'gitlab', project_id: 'gitlabhq',
id: "blob/master/blob/#{newline_file}" })
end
+
+ it 'to #show from scope routing' do
+ expect(get('/gitlab/gitlabhq/-/blob/master/app/models/project.rb')).to route_to('projects/blob#show', namespace_id: 'gitlab', project_id: 'gitlabhq', id: 'master/app/models/project.rb')
+ end
end
# project_tree GET /:project_id/tree/:id(.:format) tree#show {id: /[^\0]+/, project_id: /[^\/]+/}
@@ -596,6 +600,10 @@ describe 'project routing' do
namespace_id: 'gitlab', project_id: 'gitlabhq',
id: "master/#{newline_file}" })
end
+
+ it 'to #show from scope routing' do
+ expect(get('/gitlab/gitlabhq/-/tree/master/app/models/project.rb')).to route_to('projects/tree#show', namespace_id: 'gitlab', project_id: 'gitlabhq', id: 'master/app/models/project.rb')
+ end
end
# project_find_file GET /:namespace_id/:project_id/find_file/*id(.:format) projects/find_file#show {:id=>/[^\0]+/, :namespace_id=>/[a-zA-Z.0-9_\-]+/, :project_id=>/[a-zA-Z.0-9_\-]+(?<!\.atom)/, :format=>/html/}
diff --git a/spec/services/quick_actions/interpret_service_spec.rb b/spec/services/quick_actions/interpret_service_spec.rb
index b105e1e40ce..b2576cae575 100644
--- a/spec/services/quick_actions/interpret_service_spec.rb
+++ b/spec/services/quick_actions/interpret_service_spec.rb
@@ -856,9 +856,10 @@ describe QuickActions::InterpretService do
end
context 'only group milestones available' do
- let(:group) { create(:group) }
+ let(:ancestor_group) { create(:group) }
+ let(:group) { create(:group, parent: ancestor_group) }
let(:project) { create(:project, :public, namespace: group) }
- let(:milestone) { create(:milestone, group: group, title: '10.0') }
+ let(:milestone) { create(:milestone, group: ancestor_group, title: '10.0') }
it_behaves_like 'milestone command' do
let(:content) { "/milestone %#{milestone.title}" }
diff --git a/spec/validators/qualified_domain_array_validator_spec.rb b/spec/validators/qualified_domain_array_validator_spec.rb
index ab6cca4b671..664048c7544 100644
--- a/spec/validators/qualified_domain_array_validator_spec.rb
+++ b/spec/validators/qualified_domain_array_validator_spec.rb
@@ -3,18 +3,19 @@
require 'spec_helper'
describe QualifiedDomainArrayValidator do
- class QualifiedDomainArrayValidatorTestClass
- include ActiveModel::Validations
+ let(:qualified_domain_array_validator_test_class) do
+ Class.new do
+ include ActiveModel::Validations
- attr_accessor :domain_array
+ attr_accessor :domain_array
- def initialize(domain_array)
- self.domain_array = domain_array
+ def initialize(domain_array)
+ self.domain_array = domain_array
+ end
end
end
-
let!(:record) do
- QualifiedDomainArrayValidatorTestClass.new(['gitlab.com'])
+ qualified_domain_array_validator_test_class.new(['gitlab.com'])
end
subject { validator.validate(record) }