Pact

Better dependency injection in Elixir for cleaner code and testing.

Why?

Because testing Elixir flat out sucks. Why clutter up your code injecting dependencies when a process can handle it for you?

Usage

Pact.start
Pact.put("string", String)
Pact.get("string").to_atom("xyz") # => :xyz
Pact.override(self, "string", Integer)
Pact.get("string").parse("1234") # => {1234, ""}