Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
李少辉-开发者
gitlab-foss
提交
e8dd0d54
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,体验更适合开发者的 AI 搜索 >>
提交
e8dd0d54
编写于
9月 07, 2016
作者:
Z
Z.J. van de Weg
提交者:
Fatih Acet
9月 19, 2016
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Fix tests for Snippets toggling awards
Also incorporate feedback
上级
412ff80b
变更
8
展开全部
隐藏空白更改
内联
并排
Showing
8 changed file
with
32 addition
and
939 deletion
+32
-939
CHANGELOG
CHANGELOG
+1
-1
app/helpers/award_emoji_helper.rb
app/helpers/award_emoji_helper.rb
+3
-7
app/helpers/gitlab_routing_helper.rb
app/helpers/gitlab_routing_helper.rb
+8
-0
doc/api/award_emoji.md
doc/api/award_emoji.md
+3
-3
lib/api/award_emoji.rb
lib/api/award_emoji.rb
+9
-14
routes.txt
routes.txt
+0
-908
spec/controllers/snippets_controller_spec.rb
spec/controllers/snippets_controller_spec.rb
+6
-4
spec/requests/api/award_emoji_spec.rb
spec/requests/api/award_emoji_spec.rb
+2
-2
未找到文件。
CHANGELOG
浏览文件 @
e8dd0d54
...
...
@@ -42,6 +42,7 @@ v 8.12.0 (unreleased)
- Move parsing of sidekiq ps into helper !6245 (pascalbetz)
- Added go to issue boards keyboard shortcut
- Expose `sha` and `merge_commit_sha` in merge request API (Ben Boeckel)
- Emoji can be awarded on Snippets !4456
- Set path for all JavaScript cookies to honor GitLab's subdirectory setting !5627 (Mike Greiling)
- Fix blame table layout width
- Fix bug where pagination is still displayed despite all todos marked as done (ClemMakesApps)
...
...
@@ -281,7 +282,6 @@ v 8.11.0
- Clean up unused routes (Josef Strzibny)
- Fix issue on empty project to allow developers to only push to protected branches if given permission
- API: Add enpoints for pipelines
- Emoji can be awarded on Snippets !4456
- Add green outline to New Branch button. !5447 (winniehell)
- Optimize generating of cache keys for issues and notes
- Fix repository push email formatting in Outlook
...
...
app/helpers/award_emoji_helper.rb
浏览文件 @
e8dd0d54
module
AwardEmojiHelper
def
toggle_award_url
(
awardable
)
unless
awardable
.
is_a?
(
Snippet
)
return
url_for
([
:toggle_award_emoji
,
@project
.
namespace
.
becomes
(
Namespace
),
@project
,
awardable
])
end
if
awardable
.
is_a?
(
ProjectSnippet
)
toggle_award_emoji_namespace_project_snippet_path
(
@project
.
namespace
.
becomes
(
Namespace
),
@project
,
awardable
)
if
@project
url_for
([
:toggle_award_emoji
,
@project
.
namespace
.
becomes
(
Namespace
),
@project
,
awardable
])
else
toggle_award_emoji_snippet_url
(
awardable
)
url_for
([
:toggle_award_emoji
,
awardable
]
)
end
end
end
app/helpers/gitlab_routing_helper.rb
浏览文件 @
e8dd0d54
...
...
@@ -98,6 +98,14 @@ module GitlabRoutingHelper
end
end
def
toggle_award_emoji_personal_snippet_path
(
*
args
)
toggle_award_emoji_snippet_path
(
*
args
)
end
def
toggle_award_emoji_namespace_project_project_snippet_path
(
*
args
)
toggle_award_emoji_namespace_project_snippet_path
(
*
args
)
end
## Members
def
project_members_url
(
project
,
*
args
)
namespace_project_project_members_url
(
project
.
namespace
,
project
)
...
...
doc/api/award_emoji.md
浏览文件 @
e8dd0d54
# Award Emoji
> [Introduced][ce-4575] in GitLab 8.9, Snippet support in 8.1
1
> [Introduced][ce-4575] in GitLab 8.9, Snippet support in 8.1
2
An awarded emoji tells a thousand words, and can be awarded on issues, merge
...
...
@@ -76,7 +76,7 @@ Gets a single award emoji from an issue, snippet, or merge request.
```
GET /projects/:id/issues/:issue_id/award_emoji/:award_id
GET /projects/:id/merge_requests/:merge_request_id/award_emoji/:award_id
GET /projects/:id/snippets/:snippet
s
_id/award_emoji/:award_id
GET /projects/:id/snippets/:snippet_id/award_emoji/:award_id
```
Parameters:
...
...
@@ -119,7 +119,7 @@ This end point creates an award emoji on the specified resource
```
POST /projects/:id/issues/:issue_id/award_emoji
POST /projects/:id/merge_requests/:merge_request_id/award_emoji
POST /projects/:id/snippets/:snippet
s
_id/award_emoji
POST /projects/:id/snippets/:snippet_id/award_emoji
```
Parameters:
...
...
lib/api/award_emoji.rb
浏览文件 @
e8dd0d54
module
API
class
AwardEmoji
<
Grape
::
API
before
{
authenticate!
}
AWARDABLES
=
[
Issue
,
MergeRequest
,
S
nippet
]
AWARDABLES
=
%w[issue merge_request s
nippet]
resource
:projects
do
AWARDABLES
.
each
do
|
awardable_type
|
awardable_string
=
awardable_type
.
to_s
.
underscore
.
pluralize
awardable_id_string
=
"
#{
awardable_type
.
to_s
.
underscore
}
_id"
awardable_string
=
awardable_type
.
pluralize
awardable_id_string
=
"
#{
awardable_type
}
_id"
[
":id/
#{
awardable_string
}
/:
#{
awardable_id_string
}
/award_emoji"
,
":id/
#{
awardable_string
}
/:
#{
awardable_id_string
}
/notes/:note_id/award_emoji"
...
...
@@ -87,7 +87,7 @@ module API
helpers
do
def
can_read_awardable?
can?
(
current_user
,
ability_name
(
awardable
),
awardable
)
can?
(
current_user
,
read_ability
(
awardable
),
awardable
)
end
def
can_award_awardable?
...
...
@@ -98,8 +98,7 @@ module API
@awardable
||=
begin
if
params
.
include?
(
:note_id
)
note_id
=
params
[
:note_id
]
params
.
delete
(
:note_id
)
note_id
=
params
.
delete
(
:note_id
)
awardable
.
notes
.
find
(
note_id
)
elsif
params
.
include?
(
:issue_id
)
...
...
@@ -112,16 +111,12 @@ module API
end
end
def
ability_name
(
awardable
)
def
read_ability
(
awardable
)
case
awardable
when
Note
ability_name
(
awardable
.
noteable
)
when
Snippet
:read_project_snippet
when
MergeRequest
:read_merge_request
when
Issue
:read_issue
read_ability
(
awardable
.
noteable
)
else
:"read_
#{
awardable
.
class
.
to_s
.
underscore
}
"
end
end
end
...
...
routes.txt
已删除
100644 → 0
浏览文件 @
412ff80b
此差异已折叠。
点击以展开。
spec/controllers/snippets_controller_spec.rb
浏览文件 @
e8dd0d54
...
...
@@ -232,26 +232,28 @@ describe SnippetsController do
end
context
'award emoji on snippets'
do
let
(
:personal_snippet
)
{
create
(
:personal_snippet
,
:private
,
author:
user
)
}
let
(
:personal_snippet
)
{
create
(
:personal_snippet
,
:public
,
author:
user
)
}
let
(
:another_user
)
{
create
(
:user
)
}
before
do
sign_in
(
user
)
sign_in
(
another_
user
)
end
describe
'POST #toggle_award_emoji'
do
it
"toggles the award emoji"
do
expect
do
post
(
:toggle_award_emoji
,
id:
personal_snippet
.
to_param
,
name:
"thumbsup"
)
end
.
to
change
{
personal_snippet
.
award_emoji
.
count
}.
by
(
1
)
end
.
to
change
{
personal_snippet
.
award_emoji
.
count
}.
from
(
0
).
to
(
1
)
expect
(
response
.
status
).
to
eq
(
200
)
end
it
"removes the already awarded emoji"
do
post
(
:toggle_award_emoji
,
id:
personal_snippet
.
to_param
,
name:
"thumbsup"
)
expect
do
post
(
:toggle_award_emoji
,
id:
personal_snippet
.
to_param
,
name:
"thumbsup"
)
end
.
to
change
{
personal_snippet
.
award_emoji
.
count
}.
by
(
-
1
)
end
.
to
change
{
personal_snippet
.
award_emoji
.
count
}.
from
(
1
).
to
(
0
)
expect
(
response
.
status
).
to
eq
(
200
)
end
...
...
spec/requests/api/award_emoji_spec.rb
浏览文件 @
e8dd0d54
...
...
@@ -3,8 +3,8 @@ require 'spec_helper'
describe
API
::
API
,
api:
true
do
include
ApiHelpers
let
(
:user
)
{
create
(
:user
)
}
let!
(
:project
)
{
create
(
:project
)
}
let
(
:issue
)
{
create
(
:issue
,
project:
project
,
author:
user
)
}
let!
(
:project
)
{
create
(
:
empty_
project
)
}
let
(
:issue
)
{
create
(
:issue
,
project:
project
)
}
let!
(
:award_emoji
)
{
create
(
:award_emoji
,
awardable:
issue
,
user:
user
)
}
let!
(
:merge_request
)
{
create
(
:merge_request
,
source_project:
project
,
target_project:
project
)
}
let!
(
:downvote
)
{
create
(
:award_emoji
,
:downvote
,
awardable:
merge_request
,
user:
user
)
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录