Class: GitlabQuality::TestTooling::TestMetrics::JsonTestMetricCollection

Inherits:
Object
  • Object
show all
Includes:
Enumerable
Defined in:
lib/gitlab_quality/test_tooling/test_metrics/json_test_metric_collection.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(path) ⇒ JsonTestMetricCollection

Returns a new instance of JsonTestMetricCollection.



13
14
15
16
# File 'lib/gitlab_quality/test_tooling/test_metrics/json_test_metric_collection.rb', line 13

def initialize(path)
  @path = path
  @metrics = process
end

Instance Attribute Details

#metricsObject (readonly)

Returns the value of attribute metrics.



11
12
13
# File 'lib/gitlab_quality/test_tooling/test_metrics/json_test_metric_collection.rb', line 11

def metrics
  @metrics
end

#pathObject (readonly)

Returns the value of attribute path.



11
12
13
# File 'lib/gitlab_quality/test_tooling/test_metrics/json_test_metric_collection.rb', line 11

def path
  @path
end

Instance Method Details

#metric_for_test_id(test_id) ⇒ Object



18
19
20
21
22
# File 'lib/gitlab_quality/test_tooling/test_metrics/json_test_metric_collection.rb', line 18

def metric_for_test_id(test_id)
  metrics.find do |metric|
    metric.fields['id'] == test_id
  end
end

#writeObject



24
25
26
# File 'lib/gitlab_quality/test_tooling/test_metrics/json_test_metric_collection.rb', line 24

def write
  File.write(path, JSON.pretty_generate(metrics))
end