Class: Codebot::Formatters::PullRequest
Overview
This class formats pull_request events.
Instance Attribute Summary
#payload
Instance Method Summary
collapse
#abbreviate, #action, #ary_to_sentence, #closed?, #extract, #format_branch, #format_dangerous, #format_event, #format_hash, #format_number, #format_repository, #format_url, #format_user, #gitlab_action, #gitlab_closed?, #gitlab_opened?, #gitlab_repository_url, #gitlab_url, #initialize, #opened?, #prettify, #repository_name, #repository_url, #sanitize, #sender_name, #shorten_url, #url
Instance Method Details
29
30
31
32
|
# File 'lib/codebot/formatters/pull_request.rb', line 29
def default_format
'[%<repository>s] %<sender>s %<action>s pull request #%<number>s: ' \
'%<title>s (%<base_ref>s...%<head_title>s)'
end
|
Formats IRC messages for a pull_request event.
13
14
15
|
# File 'lib/codebot/formatters/pull_request.rb', line 13
def format
["#{summary}: #{format_url url}"] if opened? || closed?
end
|
#pull_base_label ⇒ Object
42
43
44
|
# File 'lib/codebot/formatters/pull_request.rb', line 42
def pull_base_label
(:pull_request, :base, :label)
end
|
#pull_base_ref ⇒ Object
46
47
48
|
# File 'lib/codebot/formatters/pull_request.rb', line 46
def pull_base_ref
pull_base_label.to_s.split(':').last
end
|
#pull_head_label ⇒ Object
50
51
52
|
# File 'lib/codebot/formatters/pull_request.rb', line 50
def pull_head_label
(:pull_request, :head, :label)
end
|
#pull_head_ref ⇒ Object
54
55
56
|
# File 'lib/codebot/formatters/pull_request.rb', line 54
def pull_head_ref
pull_head_label.to_s.split(':').last
end
|
#pull_head_title ⇒ Object
58
59
60
61
62
63
64
|
# File 'lib/codebot/formatters/pull_request.rb', line 58
def pull_head_title
if pull_head_ref == pull_base_ref
pull_head_ref
else
pull_head_label
end
end
|
#pull_number ⇒ Object
34
35
36
|
# File 'lib/codebot/formatters/pull_request.rb', line 34
def pull_number
(:pull_request, :number)
end
|
#pull_title ⇒ Object
38
39
40
|
# File 'lib/codebot/formatters/pull_request.rb', line 38
def pull_title
(:pull_request, :title)
end
|
#summary ⇒ Object
17
18
19
20
21
22
23
24
25
26
27
|
# File 'lib/codebot/formatters/pull_request.rb', line 17
def summary
default_format % {
repository: format_repository(repository_name),
sender: format_user(sender_name),
action: action,
number: pull_number,
title: pull_title,
base_ref: pull_base_ref,
head_title: pull_head_title
}
end
|
#summary_url ⇒ Object
66
67
68
|
# File 'lib/codebot/formatters/pull_request.rb', line 66
def summary_url
(:pull_request, :html_url).to_s
end
|