Closed edsko closed 4 years ago
Would it make sense to name the run function that doesn't use PropertyM
as runCommands' :: m ...
and then define the old run function runCommands = run . runCommands' :: PropertyM m...
, and thus not break backwards compatibility?
NOTE: I'm getting a test failure, but that exists on master already
Yeah, there's a ticket for this already #356
Would it make sense to name the run function that doesn't use PropertyM as runCommands' :: m ... and then define the old run function runCommands = run . runCommands' :: PropertyM m..., and thus not break backwards compatibility?
Yes, I suppose that would be sensible, if you are worried about breaking compatibility.
Would it make sense to name the run function that doesn't use
PropertyM
asrunCommands' :: m ...
and then define the old run functionrunCommands = run . runCommands' :: PropertyM m...
, and thus not break backwards compatibility?
I have updated the PR to follow this approach.
Sweet, lets get this merged!
Sweet, lets get this merged!
Yeah, let's merge this :+1:
The top-level of a QSM test typically looks something like this:
The problem is that
runCommands
lives in PropertyM. This makes it impossible to do any kind of bracketing. Fortunately, it turns out that this use ofPropertyM
is actually not needed at all. In this commit, I remove it without having to change much at all, except having to insert a few extra runs in the test. In particular, the above will now turn intowhich, crucially, would allow us to do something like
NOTE: I'm getting a test failure, but that exists on
master
already:I don't think that's related to this PR at all though.