7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
# File 'app/services/solidstats/coverage_compass_service.rb', line 7
def collect_data(force_refresh: false)
if !force_refresh && cached_data_exists? && cache_fresh?
Rails.logger.info "CoverageCompass: Using cached data"
return load_cached_data
end
Rails.logger.info "CoverageCompass: Collecting fresh coverage data"
coverage_data = collect_coverage_data
if coverage_data && !coverage_data[:setup_required] && !coverage_data[:error]
cache_coverage_data(coverage_data)
Rails.logger.info "CoverageCompass: Data cached successfully"
end
update_summary_file(coverage_data) if coverage_data
coverage_data
rescue => e
Rails.logger.error "Coverage collection failed: #{e.message}"
{ error: e.message, collected_at: Time.current, analyzed_at: Time.current }
end
|