Tribunal.Reporter behaviour (Tribunal v3.0.0)

Copy Markdown View Source

Behaviour for eval result reporters.

Summary

Types

results()

@type results() :: %{
  schema_version: pos_integer(),
  summary: %{
    total: non_neg_integer(),
    passed: non_neg_integer(),
    failed: non_neg_integer(),
    errors: non_neg_integer(),
    pass_rate: float(),
    duration_ms: non_neg_integer()
  },
  metrics: %{
    required(atom() | String.t()) => %{
      passed: non_neg_integer(),
      failed: non_neg_integer(),
      errors: non_neg_integer(),
      total: non_neg_integer(),
      pass_rate: float()
    }
  },
  cases: [map()]
}

Callbacks

format(results)

@callback format(results()) :: String.t()