module Oug_comp: `sig`

.. `end`

Comparing two graphs, for regression testing.

type

error

exception Error of `error`

val compare_graphs : `'a Oug_data.t -> 'b Oug_data.t -> unit`

`compare_graph g1 g2`

compares the two given graph, `g1`

being
the reference graph, while `g2`

is the new one. The order does not
change anything, this is just a convention to make the comprehension
of diagnostics easier.

**Raises** `Error`

when the two graphs are not equal, that is no bijection
of vertices and edges could be found to consider the two graph isomorphic.

val string_of_error : `'a Oug_data.t -> 'b Oug_data.t -> error -> string`

`string_of_error g1 g2 err`

returns the diagnostic of comparison.
The two graphs must be given in the same order as when

`Oug_comp.compare_graphs`

was called.