IntersectMBO / ouroboros-consensus

Implementation of a Consensus Layer for the Ouroboros family of protocols
https://ouroboros-consensus.cardano.intersectmbo.org
Apache License 2.0
34 stars 23 forks source link

FS: port q-s-m tests to new infrastructure #629

Open mrBliss opened 3 years ago

mrBliss commented 3 years ago

Port the existing q-s-m tests to use the high-level interface described in https://github.com/advancedtelematic/quickcheck-state-machine/pull/355. See http://www.well-typed.com/blog/2019/01/qsm-in-depth/ for more details. As the FS tests have references (file handles and paths), Test.StateMachine.Lockstep.NAry has to be used instead of Test.StateMachine.Lockstep.Simple.

This interface will likely need some changes before we can adopt it. It might be a good idea to make a local copy of that q-s-m infrastructure so that we can quickly modify it instead of having to submit PRs against the upstream repo and wait for them to get merged.

Related: input-output-hk/ouroboros-consensus#620.

mrBliss commented 3 years ago

Some things I already discovered were missing from the new high-level interface: