Sha256: ee7060561b1832552e8c963d42250d9a8159f4d30b9b24a17ecbe253b660c040

Contents?: true

Size: 706 Bytes

Versions: 2

Compression:

Stored size: 706 Bytes

Contents

require_relative 'list'

module ScrumLint

  class Board
    attr_accessor :trello_board

    def initialize(trello_board)
      self.trello_board = trello_board
    end

    def lists
      @lists ||= trello_board.lists.map { |list| ScrumLint::List.new(list) }
    end

    def done_lists
      @done_lists ||= lists.select { |list| done_list_name?(list.name) }
    end

    def task_lists
      @task_lists ||= lists.select { |list| task_list_name?(list.name) }
    end

  private

    def task_list_name?(name)
      ScrumLint.config.task_list_names.include?(name) # || done_list_name?(name)
    end

    def done_list_name?(name)
      name.match(ScrumLint.config.done_list_matcher)
    end
  end

end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
scrum_lint-0.0.2 lib/scrum_lint/models/board.rb
scrum_lint-0.0.1 lib/scrum_lint/models/board.rb