Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
G
gitlab-ce
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Jérome Perrin
gitlab-ce
Commits
c9048340
Commit
c9048340
authored
Oct 03, 2016
by
tiagonbotelho
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
refactors tests because of gitlab-test repository changes
parent
ff076d88
Changes
16
Hide whitespace changes
Inline
Side-by-side
Showing
16 changed files
with
65 additions
and
46 deletions
+65
-46
CHANGELOG
CHANGELOG
+0
-1
app/models/repository.rb
app/models/repository.rb
+3
-6
spec/controllers/projects/commit_controller_spec.rb
spec/controllers/projects/commit_controller_spec.rb
+10
-6
spec/helpers/search_helper_spec.rb
spec/helpers/search_helper_spec.rb
+1
-1
spec/lib/gitlab/data_builder/push_spec.rb
spec/lib/gitlab/data_builder/push_spec.rb
+4
-4
spec/mailers/notify_spec.rb
spec/mailers/notify_spec.rb
+1
-1
spec/models/commit_spec.rb
spec/models/commit_spec.rb
+4
-4
spec/models/merge_request_diff_spec.rb
spec/models/merge_request_diff_spec.rb
+3
-3
spec/models/merge_request_spec.rb
spec/models/merge_request_spec.rb
+2
-2
spec/models/repository_spec.rb
spec/models/repository_spec.rb
+14
-1
spec/requests/api/commits_spec.rb
spec/requests/api/commits_spec.rb
+9
-3
spec/requests/api/repositories_spec.rb
spec/requests/api/repositories_spec.rb
+4
-4
spec/requests/git_http_spec.rb
spec/requests/git_http_spec.rb
+2
-2
spec/services/merge_requests/refresh_service_spec.rb
spec/services/merge_requests/refresh_service_spec.rb
+2
-2
spec/services/system_note_service_spec.rb
spec/services/system_note_service_spec.rb
+4
-4
spec/workers/emails_on_push_worker_spec.rb
spec/workers/emails_on_push_worker_spec.rb
+2
-2
No files found.
CHANGELOG
View file @
c9048340
...
...
@@ -119,7 +119,6 @@ v 8.12.1
- Fix issue with search filter labels not displaying
v 8.12.0
v 8.12.0 (unreleased)
- Removes inconsistency regarding tagging immediatelly as merged once you create a new branch. !6408
- Update the rouge gem to 2.0.6, which adds highlighting support for JSX, Prometheus, and others. !6251
- Only check :can_resolve permission if the note is resolvable
...
...
app/models/repository.rb
View file @
c9048340
...
...
@@ -1013,17 +1013,14 @@ class Repository
branch_commit
=
commit
(
branch_name
)
root_ref_commit
=
commit
(
root_ref
)
if
branch_commit
&&
!
same_head?
(
branch_commit
.
id
,
root_ref_commit
.
id
)
is_ancestor?
(
branch_commit
.
id
,
root_ref_commit
.
id
)
if
branch_commit
same_head
=
branch_commit
.
id
==
root_ref_commit
.
id
!
same_head
&&
is_ancestor?
(
branch_commit
.
id
,
root_ref_commit
.
id
)
else
nil
end
end
def
same_head?
(
first_commit_id
,
second_commit_id
)
first_commit_id
==
second_commit_id
end
def
merge_base
(
first_commit_id
,
second_commit_id
)
first_commit_id
=
commit
(
first_commit_id
).
try
(
:id
)
||
first_commit_id
second_commit_id
=
commit
(
second_commit_id
).
try
(
:id
)
||
second_commit_id
...
...
spec/controllers/projects/commit_controller_spec.rb
View file @
c9048340
...
...
@@ -102,15 +102,16 @@ describe Projects::CommitController do
describe
"as patch"
do
include_examples
"export as"
,
:patch
let
(
:format
)
{
:patch
}
let
(
:commit2
)
{
project
.
commit
(
'498214de67004b1da3d820901307bed2a68a8ef6'
)
}
it
"is a git email patch"
do
go
(
id:
commit
.
id
,
format:
format
)
go
(
id:
commit
2
.
id
,
format:
format
)
expect
(
response
.
body
).
to
start_with
(
"From
#{
commit
.
id
}
"
)
expect
(
response
.
body
).
to
start_with
(
"From
#{
commit
2
.
id
}
"
)
end
it
"contains a git diff"
do
go
(
id:
commit
.
id
,
format:
format
)
go
(
id:
commit
2
.
id
,
format:
format
)
expect
(
response
.
body
).
to
match
(
/^diff --git/
)
end
...
...
@@ -135,6 +136,8 @@ describe Projects::CommitController do
describe
"GET branches"
do
it
"contains branch and tags information"
do
commit
=
project
.
commit
(
'5937ac0a7beb003549fc5fd26fc247adbce4a52e'
)
get
(
:branches
,
namespace_id:
project
.
namespace
.
to_param
,
project_id:
project
.
to_param
,
...
...
@@ -254,16 +257,17 @@ describe Projects::CommitController do
end
let
(
:existing_path
)
{
'.gitmodules'
}
let
(
:commit2
)
{
project
.
commit
(
'5937ac0a7beb003549fc5fd26fc247adbce4a52e'
)
}
context
'when the commit exists'
do
context
'when the user has access to the project'
do
context
'when the path exists in the diff'
do
it
'enables diff notes'
do
diff_for_path
(
id:
commit
.
id
,
old_path:
existing_path
,
new_path:
existing_path
)
diff_for_path
(
id:
commit
2
.
id
,
old_path:
existing_path
,
new_path:
existing_path
)
expect
(
assigns
(
:diff_notes_disabled
)).
to
be_falsey
expect
(
assigns
(
:comments_target
)).
to
eq
(
noteable_type:
'Commit'
,
commit_id:
commit
.
id
)
commit_id:
commit
2
.
id
)
end
it
'only renders the diffs for the path given'
do
...
...
@@ -272,7 +276,7 @@ describe Projects::CommitController do
meth
.
call
(
diffs
)
end
diff_for_path
(
id:
commit
.
id
,
old_path:
existing_path
,
new_path:
existing_path
)
diff_for_path
(
id:
commit
2
.
id
,
old_path:
existing_path
,
new_path:
existing_path
)
end
end
...
...
spec/helpers/search_helper_spec.rb
View file @
c9048340
...
...
@@ -19,7 +19,7 @@ describe SearchHelper do
expect
(
subject
.
filename
).
to
eq
(
'CHANGELOG'
)
expect
(
subject
.
basename
).
to
eq
(
'CHANGELOG'
)
expect
(
subject
.
ref
).
to
eq
(
'master'
)
expect
(
subject
.
startline
).
to
eq
(
18
6
)
expect
(
subject
.
startline
).
to
eq
(
18
8
)
expect
(
subject
.
data
.
lines
[
2
]).
to
eq
(
" - Feature: Replace teams with group membership
\n
"
)
end
...
...
spec/lib/gitlab/data_builder/push_spec.rb
View file @
c9048340
...
...
@@ -8,13 +8,13 @@ describe Gitlab::DataBuilder::Push, lib: true do
let
(
:data
)
{
described_class
.
build_sample
(
project
,
user
)
}
it
{
expect
(
data
).
to
be_a
(
Hash
)
}
it
{
expect
(
data
[
:before
]).
to
eq
(
'
6f6d7e7ed97bb5f0054f2b1df789b39ca89b6ff9
'
)
}
it
{
expect
(
data
[
:after
]).
to
eq
(
'
5937ac0a7beb003549fc5fd26fc247adbce4a52e
'
)
}
it
{
expect
(
data
[
:before
]).
to
eq
(
'
1b12f15a11fc6e62177bef08f47bc7b5ce50b141
'
)
}
it
{
expect
(
data
[
:after
]).
to
eq
(
'
b83d6e391c22777fca1ed3012fce84f633d7fed0
'
)
}
it
{
expect
(
data
[
:ref
]).
to
eq
(
'refs/heads/master'
)
}
it
{
expect
(
data
[
:commits
].
size
).
to
eq
(
3
)
}
it
{
expect
(
data
[
:total_commits_count
]).
to
eq
(
3
)
}
it
{
expect
(
data
[
:commits
].
first
[
:added
]).
to
eq
([
'
gitlab-grack
'
])
}
it
{
expect
(
data
[
:commits
].
first
[
:modified
]).
to
eq
([
'.gitmodules'
])
}
it
{
expect
(
data
[
:commits
].
first
[
:added
]).
to
eq
([
'
bar/branch-test.txt
'
])
}
it
{
expect
(
data
[
:commits
].
first
[
:modified
]).
to
eq
([])
}
it
{
expect
(
data
[
:commits
].
first
[
:removed
]).
to
eq
([])
}
include_examples
'project hook data with deprecateds'
...
...
spec/mailers/notify_spec.rb
View file @
c9048340
...
...
@@ -628,7 +628,7 @@ describe Notify do
it_behaves_like
'a user cannot unsubscribe through footer link'
it
'has the correct subject'
do
is_expected
.
to
have_subject
/
#{
commit
.
title
}
\(
#{
commit
.
short_id
}
\)/
is_expected
.
to
have_subject
/
Re:
#{
project
.
name
}
|
#{
commit
.
title
}
\(
#{
commit
.
short_id
}
\)/
end
it
'contains a link to the commit'
do
...
...
spec/models/commit_spec.rb
View file @
c9048340
...
...
@@ -164,10 +164,10 @@ eos
let
(
:data
)
{
commit
.
hook_attrs
(
with_changed_files:
true
)
}
it
{
expect
(
data
).
to
be_a
(
Hash
)
}
it
{
expect
(
data
[
:message
]).
to
include
(
'
Add submodule from gitlab.com
'
)
}
it
{
expect
(
data
[
:timestamp
]).
to
eq
(
'201
4-02-27T11:01:38+02
:00'
)
}
it
{
expect
(
data
[
:added
]).
to
eq
([
"
gitlab-grack
"
])
}
it
{
expect
(
data
[
:modified
]).
to
eq
([
".gitmodules"
])
}
it
{
expect
(
data
[
:message
]).
to
include
(
'
adds bar folder and branch-test text file to check Repository merged_to_root_ref method
'
)
}
it
{
expect
(
data
[
:timestamp
]).
to
eq
(
'201
6-09-27T14:37:46+00
:00'
)
}
it
{
expect
(
data
[
:added
]).
to
eq
([
"
bar/branch-test.txt
"
])
}
it
{
expect
(
data
[
:modified
]).
to
eq
([])
}
it
{
expect
(
data
[
:removed
]).
to
eq
([])
}
end
...
...
spec/models/merge_request_diff_spec.rb
View file @
c9048340
...
...
@@ -6,9 +6,9 @@ describe MergeRequestDiff, models: true do
it
{
expect
(
subject
).
to
be_valid
}
it
{
expect
(
subject
).
to
be_persisted
}
it
{
expect
(
subject
.
commits
.
count
).
to
eq
(
5
)
}
it
{
expect
(
subject
.
diffs
.
count
).
to
eq
(
8
)
}
it
{
expect
(
subject
.
head_commit_sha
).
to
eq
(
'
5937ac0a7beb003549fc5fd26fc247adbce4a52e
'
)
}
it
{
expect
(
subject
.
commits
.
count
).
to
eq
(
29
)
}
it
{
expect
(
subject
.
diffs
.
count
).
to
eq
(
20
)
}
it
{
expect
(
subject
.
head_commit_sha
).
to
eq
(
'
b83d6e391c22777fca1ed3012fce84f633d7fed0
'
)
}
it
{
expect
(
subject
.
base_commit_sha
).
to
eq
(
'ae73cb07c9eeaf35924a10f713b364d32b2dd34f'
)
}
it
{
expect
(
subject
.
start_commit_sha
).
to
eq
(
'0b4bc9a49b562e85de7cc9e834518ea6828729b9'
)
}
end
...
...
spec/models/merge_request_spec.rb
View file @
c9048340
...
...
@@ -489,7 +489,7 @@ describe MergeRequest, models: true do
subject
(
:merge_request_with_divergence
)
{
create
(
:merge_request
,
:diverged
,
source_project:
project
,
target_project:
project
)
}
it
'counts commits that are on target branch but not on source branch'
do
expect
(
subject
.
diverged_commits_count
).
to
eq
(
5
)
expect
(
subject
.
diverged_commits_count
).
to
eq
(
29
)
end
end
...
...
@@ -497,7 +497,7 @@ describe MergeRequest, models: true do
subject
(
:merge_request_fork_with_divergence
)
{
create
(
:merge_request
,
:diverged
,
source_project:
fork_project
,
target_project:
project
)
}
it
'counts commits that are on target branch but not on source branch'
do
expect
(
subject
.
diverged_commits_count
).
to
eq
(
5
)
expect
(
subject
.
diverged_commits_count
).
to
eq
(
29
)
end
end
...
...
spec/models/repository_spec.rb
View file @
c9048340
...
...
@@ -114,17 +114,30 @@ describe Repository, models: true do
end
describe
'#merged_to_root_ref?'
do
context
'merged branch'
do
context
'merged branch
without ff
'
do
subject
{
repository
.
merged_to_root_ref?
(
'branch-merged'
)
}
it
{
is_expected
.
to
be_truthy
}
end
# If the HEAD was ff then it will be false
context
'merged with ff'
do
subject
{
repository
.
merged_to_root_ref?
(
'improve/awesome'
)
}
it
{
is_expected
.
to
be_truthy
}
end
context
'not merged branch'
do
subject
{
repository
.
merged_to_root_ref?
(
'not-merged-branch'
)
}
it
{
is_expected
.
to
be_falsey
}
end
context
'default branch'
do
subject
{
repository
.
merged_to_root_ref?
(
'master'
)
}
it
{
is_expected
.
to
be_falsey
}
end
end
describe
'#can_be_merged?'
do
...
...
spec/requests/api/commits_spec.rb
View file @
c9048340
...
...
@@ -53,7 +53,12 @@ describe API::API, api: true do
get
api
(
"/projects/
#{
project
.
id
}
/repository/commits?until=
#{
before
.
utc
.
iso8601
}
"
,
user
)
expect
(
json_response
.
size
).
to
eq
(
commits
.
size
-
1
)
if
commits
.
size
>=
20
expect
(
json_response
.
size
).
to
eq
(
20
)
else
expect
(
json_response
.
size
).
to
eq
(
commits
.
size
-
1
)
end
expect
(
json_response
.
first
[
"id"
]).
to
eq
(
commits
.
second
.
id
)
expect
(
json_response
.
second
[
"id"
]).
to
eq
(
commits
.
third
.
id
)
end
...
...
@@ -447,11 +452,12 @@ describe API::API, api: true do
end
it
'returns the inline comment'
do
post
api
(
"/projects/
#{
project
.
id
}
/repository/commits/
#{
project
.
repository
.
commit
.
id
}
/comments"
,
user
),
note:
'My comment'
,
path:
project
.
repository
.
commit
.
raw_diffs
.
first
.
new_path
,
line:
7
,
line_type:
'new'
post
api
(
"/projects/
#{
project
.
id
}
/repository/commits/
#{
project
.
repository
.
commit
.
id
}
/comments"
,
user
),
note:
'My comment'
,
path:
project
.
repository
.
commit
.
raw_diffs
.
first
.
new_path
,
line:
1
,
line_type:
'new'
expect
(
response
).
to
have_http_status
(
201
)
expect
(
json_response
[
'note'
]).
to
eq
(
'My comment'
)
expect
(
json_response
[
'path'
]).
to
eq
(
project
.
repository
.
commit
.
raw_diffs
.
first
.
new_path
)
expect
(
json_response
[
'line'
]).
to
eq
(
7
)
expect
(
json_response
[
'line'
]).
to
eq
(
1
)
expect
(
json_response
[
'line_type'
]).
to
eq
(
'new'
)
end
...
...
spec/requests/api/repositories_spec.rb
View file @
c9048340
...
...
@@ -21,7 +21,7 @@ describe API::API, api: true do
expect
(
response
).
to
have_http_status
(
200
)
expect
(
json_response
).
to
be_an
Array
expect
(
json_response
.
first
[
'name'
]).
to
eq
(
'
encoding
'
)
expect
(
json_response
.
first
[
'name'
]).
to
eq
(
'
bar
'
)
expect
(
json_response
.
first
[
'type'
]).
to
eq
(
'tree'
)
expect
(
json_response
.
first
[
'mode'
]).
to
eq
(
'040000'
)
end
...
...
@@ -166,9 +166,9 @@ describe API::API, api: true do
expect
(
response
).
to
have_http_status
(
200
)
expect
(
json_response
).
to
be_an
Array
contributor
=
json_response
.
first
expect
(
contributor
[
'email'
]).
to
eq
(
'
dmitriy.zaporozhets@g
mail.com'
)
expect
(
contributor
[
'name'
]).
to
eq
(
'
Dmitriy Zaporozhets
'
)
expect
(
contributor
[
'commits'
]).
to
eq
(
1
3
)
expect
(
contributor
[
'email'
]).
to
eq
(
'
tiagonbotelho@hot
mail.com'
)
expect
(
contributor
[
'name'
]).
to
eq
(
'
tiagonbotelho
'
)
expect
(
contributor
[
'commits'
]).
to
eq
(
1
)
expect
(
contributor
[
'additions'
]).
to
eq
(
0
)
expect
(
contributor
[
'deletions'
]).
to
eq
(
0
)
end
...
...
spec/requests/git_http_spec.rb
View file @
c9048340
...
...
@@ -440,8 +440,8 @@ describe 'Git HTTP requests', lib: true do
before
do
# Provide a dummy file in its place
allow_any_instance_of
(
Repository
).
to
receive
(
:blob_at
).
and_call_original
allow_any_instance_of
(
Repository
).
to
receive
(
:blob_at
).
with
(
'
5937ac0a7beb003549fc5fd26fc247adbce4a52e
'
,
'info/refs'
)
do
Gitlab
::
Git
::
Blob
.
find
(
project
.
repository
,
'master'
,
'
.gitignore
'
)
allow_any_instance_of
(
Repository
).
to
receive
(
:blob_at
).
with
(
'
b83d6e391c22777fca1ed3012fce84f633d7fed0
'
,
'info/refs'
)
do
Gitlab
::
Git
::
Blob
.
find
(
project
.
repository
,
'master'
,
'
bar/branch-test.txt
'
)
end
get
"/
#{
project
.
path_with_namespace
}
/blob/master/info/refs"
...
...
spec/services/merge_requests/refresh_service_spec.rb
View file @
c9048340
...
...
@@ -118,7 +118,7 @@ describe MergeRequests::RefreshService, services: true do
it
{
expect
(
@merge_request
.
notes
).
to
be_empty
}
it
{
expect
(
@merge_request
).
to
be_open
}
it
{
expect
(
@fork_merge_request
.
notes
.
last
.
note
).
to
include
(
'Added
4
commits'
)
}
it
{
expect
(
@fork_merge_request
.
notes
.
last
.
note
).
to
include
(
'Added
28
commits'
)
}
it
{
expect
(
@fork_merge_request
).
to
be_open
}
it
{
expect
(
@build_failed_todo
).
to
be_pending
}
it
{
expect
(
@fork_build_failed_todo
).
to
be_pending
}
...
...
@@ -169,7 +169,7 @@ describe MergeRequests::RefreshService, services: true do
notes
=
@fork_merge_request
.
notes
.
reorder
(
:created_at
).
map
(
&
:note
)
expect
(
notes
[
0
]).
to
include
(
'Restored source branch `master`'
)
expect
(
notes
[
1
]).
to
include
(
'Added
4
commits'
)
expect
(
notes
[
1
]).
to
include
(
'Added
28
commits'
)
expect
(
@fork_merge_request
).
to
be_open
end
end
...
...
spec/services/system_note_service_spec.rb
View file @
c9048340
...
...
@@ -54,7 +54,7 @@ describe SystemNoteService, services: true do
it
'adds a message line for each commit'
do
new_commits
.
each_with_index
do
|
commit
,
i
|
# Skip the header
expect
(
note_lines
[
i
+
1
]
).
to
eq
"*
#{
commit
.
short_id
}
-
#{
commit
.
title
}
"
expect
(
HTMLEntities
.
new
.
decode
(
note_lines
[
i
+
1
])
).
to
eq
"*
#{
commit
.
short_id
}
-
#{
commit
.
title
}
"
end
end
end
...
...
@@ -81,7 +81,7 @@ describe SystemNoteService, services: true do
end
it
'includes a commit count'
do
expect
(
summary_line
).
to
end_with
" - 2 commits from branch `feature`"
expect
(
summary_line
).
to
end_with
" - 2
6
commits from branch `feature`"
end
end
...
...
@@ -91,7 +91,7 @@ describe SystemNoteService, services: true do
end
it
'includes a commit count'
do
expect
(
summary_line
).
to
end_with
" - 2 commits from branch `feature`"
expect
(
summary_line
).
to
end_with
" - 2
6
commits from branch `feature`"
end
end
...
...
@@ -537,7 +537,7 @@ describe SystemNoteService, services: true do
let
(
:mergereq
)
{
create
(
:merge_request
,
:simple
,
target_project:
project
,
source_project:
project
)
}
let
(
:jira_issue
)
{
ExternalIssue
.
new
(
"JIRA-1"
,
project
)}
let
(
:jira_tracker
)
{
project
.
jira_service
}
let
(
:commit
)
{
project
.
commit
}
let
(
:commit
)
{
project
.
repository
.
commits
(
'master'
).
find
{
|
commit
|
commit
.
id
==
'5937ac0a7beb003549fc5fd26fc247adbce4a52e'
}
}
context
'in JIRA issue tracker'
do
before
do
...
...
spec/workers/emails_on_push_worker_spec.rb
View file @
c9048340
...
...
@@ -57,7 +57,7 @@ describe EmailsOnPushWorker do
end
it
"sends a mail with the correct subject"
do
expect
(
email
.
subject
).
to
include
(
'
Change some files
'
)
expect
(
email
.
subject
).
to
include
(
'
adds bar folder and branch-test text file
'
)
end
it
"mentions force pushing in the body"
do
...
...
@@ -73,7 +73,7 @@ describe EmailsOnPushWorker do
before
{
perform
}
it
"sends a mail with the correct subject"
do
expect
(
email
.
subject
).
to
include
(
'
Change some files
'
)
expect
(
email
.
subject
).
to
include
(
'
adds bar folder and branch-test text file
'
)
end
it
"does not mention force pushing in the body"
do
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment