Johannes Link
Johannes Link
> However, it looks like shrinking of the individual actions is not helpful for stateful chains. > > For instance, my case is somewhat comparable to testing a file system:...
> > Actions could still be shrunk away they could just not be shrunk individually. > > What do you mean? Of course, I understand that labels and values for...
> The article you refer to uses the same index % users.size() approach, That's because the example uses the old stateful API. With the new one it could directly choose...
> > The access to the wrong state happens during individual shrinking - shortest filename etc > > That is helpful, however, I would consider shrinking individual names only after...
> How? I really do not understand it. I use the new stateful API, and I use Arbitraries.of(Collection) when I need an element of a collection. But you do not...
> Frankly speaking, I believe another approach would be "manual" shrinking. In other words, I incline to implement converter from Chain to my Kotlin DSL test code. Then I would...
Here's a sketch of my idea to allow more differential specification of transformer based stateful chains. Introduction of new class `ChainSpec`: ```java class ChainSpec { boolean isImmutable; boolean hasSideEffects; Supplier...
> I am indifferent to ChainSpec, as it does not help shrinking in my case. I think it could in two ways: - Use an immutable, side-effect-free model-based approach -...
I tried out your file system example with an immutable model here: https://github.com/jlink/pbt-stateful-examples Shrinking is not as good as I'd like it to be, but the issue of having wrong...
> Of course, wrong-state object issue goes away, however, shrinking goes away as well 🤷 This issue is about fixing the bug without making shrinking worse. That’s what the approach...