Class: GitQuickBooks::CommitMsgCleaner

Inherits:
Object
  • Object
show all
Defined in:
lib/gitquickbooks/commit_msg_cleaner.rb

Instance Method Summary collapse

Constructor Details

#initialize(msgs) ⇒ CommitMsgCleaner

Returns a new instance of CommitMsgCleaner.



3
4
5
# File 'lib/gitquickbooks/commit_msg_cleaner.rb', line 3

def initialize(msgs)
  @msgs = msgs
end

Instance Method Details

#callObject



36
37
38
39
40
41
42
43
# File 'lib/gitquickbooks/commit_msg_cleaner.rb', line 36

def call
  @msgs = remove_blanks
  @msgs = remove_trail_period
  @msgs = remove_former_commits
  @msgs = capitolize_first_word
  @msgs = remove_square_brackets
  @msgs.join("\n")
end

#capitolize_first_wordObject



29
30
31
32
33
34
# File 'lib/gitquickbooks/commit_msg_cleaner.rb', line 29

def capitolize_first_word
  @msgs.map do |msg|
    msg[0] = msg[0].to_s.capitalize
    msg
  end
end

#remove_blanksObject



7
8
9
# File 'lib/gitquickbooks/commit_msg_cleaner.rb', line 7

def remove_blanks
  @msgs.reject(&:blank?).compact
end

#remove_former_commitsObject



11
12
13
# File 'lib/gitquickbooks/commit_msg_cleaner.rb', line 11

def remove_former_commits
  @msgs.reject { |m| m =~ /Former-commit-id/ }
end

#remove_square_bracketsObject



22
23
24
25
26
27
# File 'lib/gitquickbooks/commit_msg_cleaner.rb', line 22

def remove_square_brackets
  @msgs.map do |msg|
    # [ci-skip]
    msg.gsub(/\[.*\]/, '').strip
  end
end

#remove_trail_periodObject



15
16
17
18
19
20
# File 'lib/gitquickbooks/commit_msg_cleaner.rb', line 15

def remove_trail_period
  @msgs.map do |msg|
    # [ci-skip]
    msg.strip.chomp('.')
  end
end