Sha256: 535db74e3f71ced3429f12f69172ba8f40aed03ed24178a0cc33ccfa9f4dbcfe

Contents?: true

Size: 608 Bytes

Versions: 4

Compression:

Stored size: 608 Bytes

Contents

class DescribeProject < Struct.new :project_name, :date_format
  def call formatter = formatter, records = records
    formatter.present records
  end

  def project project_name = project_name
    Project.find_by name: project_name
  end

  def records project = project
    project.metrics
  end

  def formatter format = format
    ConsoleFormatter.new format
  end

  def format date_format = date_format
    {
        'Metric' => 'name',
        'Value' => 'last_value',
        'Changed at' => "last_updated_at.try :strftime, '#{date_format}'",
        'Changed by' => "last_updated_by"
    }
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
techcor-0.0.8 lib/commands/describe_project.rb
techcor-0.0.7 lib/commands/describe_project.rb
techcor-0.0.6 lib/commands/describe_project.rb
techcor-0.0.5 lib/commands/describe_project.rb