Class: Ucode::Audit::Extractors::Provenance

Inherits:
Base
  • Object
show all
Defined in:
lib/ucode/audit/extractors/provenance.rb

Overview

Provenance fields: who generated this report, when, from what.

Returned fields:

generated_at, ucode_version, source_file, source_sha256,
source_format, font_index, num_fonts_in_source

ucode delta vs fontisan: ‘fontisan_version` is renamed to `ucode_version` and reads from `Ucode::VERSION`.

Instance Method Summary collapse

Instance Method Details

#extract(context) ⇒ Hash{Symbol=>Object}

Parameters:

Returns:

  • (Hash{Symbol=>Object})


20
21
22
23
24
25
26
27
28
29
30
# File 'lib/ucode/audit/extractors/provenance.rb', line 20

def extract(context)
  {
    generated_at: Time.now.utc.iso8601,
    ucode_version: Ucode::VERSION,
    source_file: File.expand_path(context.font_path),
    source_sha256: Digest::SHA256.file(context.font_path).hexdigest,
    source_format: context.source_format,
    font_index: context.font_index,
    num_fonts_in_source: context.num_fonts_in_source,
  }
end