Infrastructure for property-testing reactive systems with specification in a linear temporal logic. Heavily influenced by Quickstrom and the paper describing its foundations. Currently very experimental and subject to major changes.
This project intends to be a pragmatic tool for testing Elixir applications with formal underpinnings and a reasonable expectation of soundness. It does not intend to be formally proven sound, at least not yet. I would rather have a lot of flexibility and interoperation with Elixir, allowing users to explore patterns that work best to test systems in a robust and understandable way.
Since this project is very experimental, it will not be published in Hex in the foreseeable future.
Still, the package can be installed
by adding prop_ltl
to your list of dependencies in mix.exs
:
def deps do
[
{:prop_ltl, github: "ggazzi/prop_ltl", branch: "main"}
]
end
Documentation can be generated locally with ExDoc, just run mix docs
.