Class: PairSee::LogLines

Inherits:
Object
  • Object
show all
Includes:
Enumerable
Defined in:
lib/pair_see/log_lines.rb

Instance Method Summary collapse

Constructor Details

#initialize(lines) ⇒ LogLines

Returns a new instance of LogLines.



8
9
10
# File 'lib/pair_see/log_lines.rb', line 8

def initialize(lines)
  @lines = lines
end

Instance Method Details

#active?(person) ⇒ Boolean

Returns:

  • (Boolean)


20
21
22
23
24
# File 'lib/pair_see/log_lines.rb', line 20

def active?(person)
  any? do |log_line|
    log_line.authored_by?(person)
  end
end

#commits_for_pair(person1, person2) ⇒ Object



26
27
28
# File 'lib/pair_see/log_lines.rb', line 26

def commits_for_pair(person1, person2)
  select { |log_line| log_line.authored_by?(person1, person2) }
end

#commits_not_by_known_person(devs) ⇒ Object



30
31
32
# File 'lib/pair_see/log_lines.rb', line 30

def commits_not_by_known_person(devs)
  reject { |log_line| log_line.by_any? devs }
end

#each(&block) ⇒ Object



12
13
14
# File 'lib/pair_see/log_lines.rb', line 12

def each(&block)
  @lines.each &block
end

#lastObject



16
17
18
# File 'lib/pair_see/log_lines.rb', line 16

def last
  @lines.last
end

#solo_commits(people, person) ⇒ Object



34
35
36
37
38
# File 'lib/pair_see/log_lines.rb', line 34

def solo_commits(people, person)
  select do |log_line|
    log_line.authored_by?(person) && (people - [person]).none? { |single_person| log_line.authored_by?(single_person) }
  end
end