Hook

A runtime resolution library.

Dynamic, ancestor-walking, fallback following, group isolated, runtime term resolution that can be compiled out for zero performance cost where desired.

For further context check Hook's public interface and the Examples documentation.

Motivation

The development of Hook was motivated by a desire for variety of and flexibility in tools relevant to testing across boundaries and among side effects, though its functionality facilitates more than that use case.

Hook was inspired by Mox and Pact. The requirement of behaviours by Mox and the lack of concurrency support and Mox-like assertion functionality in Pact left us desiring something else.

Notable differences

From Mox:

From Pact: