Hi Yeah it does. And as long you can turn back the old way its fine. And such a change in a testing component is much more okay to do than a component you use for production.
I suggest you work on a patch and then lets see this in action. On Thu, Mar 10, 2016 at 5:28 PM, Quinn Stevenson <qu...@pronoia-solutions.com> wrote: > I could definitely add an option to turn the new behavior on or off, but I’d > like to make the new behavior the default if that’s OK. > > The reasons for this are: > - I think the new behavior is more intuitive (but that’s just my opinion - > I’d like to hear others) > - The point of the change was to get rid of a bunch of duplication I have in > my tests that are there to make the tests behave the way I think they should > - namely sourceDataSet.expectedMessageCount(0) that I have everywhere. It > forces me to grab or inject the dataset into the test and change it. With > the new default, all of that could go away. > - The proposed change wouldn’t break existing uses unless they are relying > on the test to fail when it’s a source only and they haven’t overridden the > expected message count. The endpoints that are targets would still use the > size as the default expected message count, so I don’t think it would break > very many tests - and fixing them would be simple. > > Does all of that make sense? > >> On Mar 10, 2016, at 2:29 AM, Claus Ibsen <claus.ib...@gmail.com> wrote: >> >> Hi >> >> Yeah sure. Maybe have some option on dataset you can use to turn this >> on|off so the old behavior can be the default still. >> >> On Wed, Mar 9, 2016 at 9:50 PM, Quinn Stevenson >> <qu...@pronoia-solutions.com> wrote: >>> I would like to propose changing the current behavior of the DataSet >>> component such that the expected message count defaults to zero for >>> DataSets used as a source (i.e. DataSetConsumers). >>> >>> The reasoning behind this is as follows. >>> >>> I use the DataSet component for simple load testing. When I use a DataSet >>> as a source (i.e. from(“dataset://my-dataset <dataset://my-dataset>”) ), >>> the assertMockEndpointsSatisfied() always fails because the >>> expectedMessageSize is set to the size of the DataSet. I either have to >>> explicitly set the expected message count on the endpoint to zero ( >>> getMockEndpoint( “dataset://my-dataset >>> <dataset://my-dataset>”).expectedMessageCount( 0 ), or I have to assert all >>> of the other mock endpoints individually (i.e not use >>> assertMockEndpointsSatisfied() ). >>> >>> I rarely use the same dataset as both a source (i.e. from(“dataset://…”) ) >>> and a target (i.e. to( “dataset://…”) ), so this behavior doesn’t make much >>> sense to me. Additionally, I can’t use the same DataSet as the source and >>> target when the source message count would be different than the target >>> message count - which would be the case for a route that does some simple >>> filtering, and all I want to assert is the correct number of messages came >>> through. >>> >>> I’ve figured out a way to do this, and I’d like to create a JIRA task and a >>> pull request for this if it sounds like an acceptable change. >>> >>> >> >> >> >> -- >> Claus Ibsen >> ----------------- >> http://davsclaus.com @davsclaus >> Camel in Action 2: https://www.manning.com/ibsen2 > -- Claus Ibsen ----------------- http://davsclaus.com @davsclaus Camel in Action 2: https://www.manning.com/ibsen2