Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
李少辉-开发者
gitlab-foss
提交
04ee970c
G
gitlab-foss
项目概览
李少辉-开发者
/
gitlab-foss
通知
15
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
G
gitlab-foss
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
04ee970c
编写于
8月 16, 2017
作者:
J
Jarka Kadlecova
提交者:
Douwe Maan
8月 16, 2017
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Don't create event in Merge Request Create Service
上级
aae23494
变更
5
隐藏空白更改
内联
并排
Showing
5 changed file
with
63 addition
and
2 deletion
+63
-2
app/services/merge_requests/create_service.rb
app/services/merge_requests/create_service.rb
+0
-1
db/post_migrate/20170815060945_remove_duplicate_mr_events.rb
db/post_migrate/20170815060945_remove_duplicate_mr_events.rb
+26
-0
db/schema.rb
db/schema.rb
+1
-1
spec/migrations/remove_duplicate_mr_events_spec.rb
spec/migrations/remove_duplicate_mr_events_spec.rb
+26
-0
spec/services/merge_requests/create_service_spec.rb
spec/services/merge_requests/create_service_spec.rb
+10
-0
未找到文件。
app/services/merge_requests/create_service.rb
浏览文件 @
04ee970c
...
...
@@ -25,7 +25,6 @@ module MergeRequests
end
def
after_create
(
issuable
)
event_service
.
open_mr
(
issuable
,
current_user
)
todo_service
.
new_merge_request
(
issuable
,
current_user
)
issuable
.
cache_merge_request_closes_issues!
(
current_user
)
update_merge_requests_head_pipeline
(
issuable
)
...
...
db/post_migrate/20170815060945_remove_duplicate_mr_events.rb
0 → 100644
浏览文件 @
04ee970c
# See http://doc.gitlab.com/ce/development/migration_style_guide.html
# for more information on how to write migrations for GitLab.
class
RemoveDuplicateMrEvents
<
ActiveRecord
::
Migration
include
Gitlab
::
Database
::
MigrationHelpers
DOWNTIME
=
false
class
Event
<
ActiveRecord
::
Base
self
.
table_name
=
'events'
end
def
up
base_condition
=
"action = 1 AND target_type = 'MergeRequest' AND created_at > '2017-08-13'"
Event
.
select
(
'target_id, count(*)'
)
.
where
(
base_condition
)
.
group
(
'target_id'
).
having
(
'count(*) > 1'
).
each
do
|
event
|
duplicates
=
Event
.
where
(
"
#{
base_condition
}
AND target_id =
#{
event
.
target_id
}
"
).
pluck
(
:id
)
duplicates
.
shift
Event
.
where
(
id:
duplicates
).
delete_all
end
end
def
down
end
end
db/schema.rb
浏览文件 @
04ee970c
...
...
@@ -11,7 +11,7 @@
#
# It's strongly recommended that you check this file into your version control system.
ActiveRecord
::
Schema
.
define
(
version:
201708
09161910
)
do
ActiveRecord
::
Schema
.
define
(
version:
201708
15060945
)
do
# These are extensions that must be enabled in order to support this database
enable_extension
"plpgsql"
...
...
spec/migrations/remove_duplicate_mr_events_spec.rb
0 → 100644
浏览文件 @
04ee970c
require
'spec_helper'
require
Rails
.
root
.
join
(
'db'
,
'post_migrate'
,
'20170815060945_remove_duplicate_mr_events.rb'
)
describe
RemoveDuplicateMrEvents
,
truncate:
true
do
let
(
:migration
)
{
described_class
.
new
}
describe
'#up'
do
let
(
:user
)
{
create
(
:user
)
}
let
(
:merge_requests
)
{
create_list
(
:merge_request
,
2
)
}
let
(
:issue
)
{
create
(
:issue
)
}
let!
(
:events
)
do
[
create
(
:event
,
:created
,
author:
user
,
target:
merge_requests
.
first
),
create
(
:event
,
:created
,
author:
user
,
target:
merge_requests
.
first
),
create
(
:event
,
:updated
,
author:
user
,
target:
merge_requests
.
first
),
create
(
:event
,
:created
,
author:
user
,
target:
merge_requests
.
second
),
create
(
:event
,
:created
,
author:
user
,
target:
issue
),
create
(
:event
,
:created
,
author:
user
,
target:
issue
)
]
end
it
'removes duplicated merge request create records'
do
expect
{
migration
.
up
}.
to
change
{
Event
.
count
}.
from
(
6
).
to
(
5
)
end
end
end
spec/services/merge_requests/create_service_spec.rb
浏览文件 @
04ee970c
...
...
@@ -48,6 +48,16 @@ describe MergeRequests::CreateService do
expect
(
Todo
.
where
(
attributes
).
count
).
to
be_zero
end
it
'creates exactly 1 create MR event'
do
attributes
=
{
action:
Event
::
CREATED
,
target_id:
@merge_request
.
id
,
target_type:
@merge_request
.
class
.
name
}
expect
(
Event
.
where
(
attributes
).
count
).
to
eq
(
1
)
end
context
'when merge request is assigned to someone'
do
let
(
:opts
)
do
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录