Originally reported by @erickpintor (migrated from Notion)
Currently, mbt::actionTaken and mbt::nondetPicks are only available for quint run. Users attempting to do MBT with Quint Connect are forced to manually track nondeterminism in their test cases. Ideally, Quint would track calls to then(..) and attempt to determine which action is being called. For example:
run myTest =
init
.then(action1)
.then(action2)
The run above should generate a trace with 3 steps where the mbt::actionTaken variable matches the 3 actions invoked by the test. Moreover, it’s not unusual for actions called in test cases to be parameterized:
run myTest =
init
.then(action1("foo"))
.then(action2("bar"))
In those cases, it’d be useful for the action arguments to end up in the set of nondeterministic picks so that MBT can leverage them. Ideally, this feature should also be implemented for quint run.
Originally reported by @erickpintor (migrated from Notion)
Currently,
mbt::actionTakenandmbt::nondetPicksare only available forquint run. Users attempting to do MBT with Quint Connect are forced to manually track nondeterminism in their test cases. Ideally, Quint would track calls tothen(..)and attempt to determine which action is being called. For example:The run above should generate a trace with 3 steps where the
mbt::actionTakenvariable matches the 3 actions invoked by the test. Moreover, it’s not unusual for actions called in test cases to be parameterized:In those cases, it’d be useful for the action arguments to end up in the set of nondeterministic picks so that MBT can leverage them. Ideally, this feature should also be implemented for
quint run.