Module: ChurnVsComplexity::Diff::Serializer::Json

Defined in:
lib/churn_vs_complexity/diff/serializer.rb

Class Method Summary collapse

Class Method Details

.serialize(reference:, before:, after:) ⇒ Object



9
10
11
12
13
14
15
16
17
18
19
# File 'lib/churn_vs_complexity/diff/serializer.rb', line 9

def self.serialize(reference:, before:, after:)
  before_gammas = gammas_from(before)
  after_gammas = gammas_from(after)
  degraded, improved, unchanged_count = classify_changes(before_gammas, after_gammas)

  JSON.generate(
    reference:, current: 'HEAD',
    overall: overall_summary(before_gammas.values, after_gammas.values),
    degraded:, improved:, unchanged: unchanged_count,
  )
end