Class: MetricsGeneratorCsvFiles
- Inherits:
-
Object
- Object
- MetricsGeneratorCsvFiles
- Defined in:
- lib/codespicuous/metrics_generator_csv_files.rb
Instance Attribute Summary collapse
-
#all_csv_generator ⇒ Object
readonly
Returns the value of attribute all_csv_generator.
-
#teams_csv_generator ⇒ Object
readonly
Returns the value of attribute teams_csv_generator.
Instance Method Summary collapse
- #create_commit_table_with_committers_and_repository_info ⇒ Object
- #create_commit_table_with_week_and_repository_info ⇒ Object
- #create_commit_table_with_weeks_and_committers ⇒ Object
- #create_commit_table_with_weeks_and_team_commits ⇒ Object
- #create_csv_files_output_directory ⇒ Object
- #generate ⇒ Object
-
#initialize(config, commit_history) ⇒ MetricsGeneratorCsvFiles
constructor
A new instance of MetricsGeneratorCsvFiles.
Constructor Details
#initialize(config, commit_history) ⇒ MetricsGeneratorCsvFiles
Returns a new instance of MetricsGeneratorCsvFiles.
10 11 12 13 14 15 |
# File 'lib/codespicuous/metrics_generator_csv_files.rb', line 10 def initialize(config, commit_history) @config = config @all_csv_generator = MetricsGeneratorCsv.new(commit_history) @restricted_history = commit_history.restrict_to_teams @teams_csv_generator = MetricsGeneratorCsv.new(@restricted_history) end |
Instance Attribute Details
#all_csv_generator ⇒ Object (readonly)
Returns the value of attribute all_csv_generator.
4 5 6 |
# File 'lib/codespicuous/metrics_generator_csv_files.rb', line 4 def all_csv_generator @all_csv_generator end |
#teams_csv_generator ⇒ Object (readonly)
Returns the value of attribute teams_csv_generator.
4 5 6 |
# File 'lib/codespicuous/metrics_generator_csv_files.rb', line 4 def teams_csv_generator @teams_csv_generator end |
Instance Method Details
#create_commit_table_with_committers_and_repository_info ⇒ Object
34 35 36 |
# File 'lib/codespicuous/metrics_generator_csv_files.rb', line 34 def create_commit_table_with_committers_and_repository_info File.write(@config.path_to_csv_file("teams_committer_and_repository_info.csv"), @teams_csv_generator.create_commit_table_with_committers_and_repository_info) end |
#create_commit_table_with_week_and_repository_info ⇒ Object
25 26 27 28 |
# File 'lib/codespicuous/metrics_generator_csv_files.rb', line 25 def create_commit_table_with_week_and_repository_info File.write(@config.path_to_csv_file("all_week_and_repository_info.csv"), @all_csv_generator.create_commit_table_with_week_and_repository_info) File.write(@config.path_to_csv_file("teams_week_and_repository_info.csv"), @teams_csv_generator.create_commit_table_with_week_and_repository_info) end |
#create_commit_table_with_weeks_and_committers ⇒ Object
38 39 40 41 42 43 44 |
# File 'lib/codespicuous/metrics_generator_csv_files.rb', line 38 def create_commit_table_with_weeks_and_committers File.write(@config.path_to_csv_file("teams_weeks_and_committers_info.csv"), @all_csv_generator.create_commit_table_with_weeks_and_committers) @restricted_history.teams.each do | team | File.write(@config.path_to_csv_file("teams_weeks_and_committers_info_#{team.name}.csv"), @all_csv_generator.create_commit_table_with_weeks_and_committers(team.name)) end end |
#create_commit_table_with_weeks_and_team_commits ⇒ Object
30 31 32 |
# File 'lib/codespicuous/metrics_generator_csv_files.rb', line 30 def create_commit_table_with_weeks_and_team_commits File.write(@config.path_to_csv_file("teams_week_and_team_commits.csv"), @teams_csv_generator.create_commit_table_with_weeks_and_team_commits) end |
#create_csv_files_output_directory ⇒ Object
6 7 8 |
# File 'lib/codespicuous/metrics_generator_csv_files.rb', line 6 def create_csv_files_output_directory Dir.mkdir(@config.path_to_output_dir_for_csv_files) unless Dir.exists?(@config.path_to_output_dir_for_csv_files) end |
#generate ⇒ Object
17 18 19 20 21 22 23 |
# File 'lib/codespicuous/metrics_generator_csv_files.rb', line 17 def generate create_csv_files_output_directory create_commit_table_with_week_and_repository_info create_commit_table_with_weeks_and_team_commits create_commit_table_with_committers_and_repository_info create_commit_table_with_weeks_and_committers end |