Do your processors work against 1.6.0? I’m wondering if there’s something with the new Expression Language scope stuff, I believe that can cause unit test failures even if it still works (albeit deprecated) on a live NiFi.
Regards, Matt > On Jul 2, 2018, at 4:52 PM, Mark Payne <[email protected]> wrote: > > Hey Mark, > > The validation logic was changed so that instead of performing validation on > demand each time that > the user refreshes stats, navigates to a process group, etc., it all is done > asynchronously. We then periodically > perform validation in the background. > > So the idea is that we changed when validation is called, not how it is > called. So I'm not sure why you would have > seen customValidate() being called previously but not anymore. It is possible > that there was previously an implicit > call (implicit from the perspective of the unit test, not from the > perspective of the Test Runner) to validate a > component that got removed in some of this refactoring. > > I do see in StandardProcessorTestRunner (the impl of the TestRunner > interface) that when run() is called, are still > performing validation as we were previously and asserting that the processor > is valid. It's possible, though, that > there is another code path where we now fail to call validate()? Can you > share any more information about what > your unit tests are doing, that previously worked but no longer do? > > Thanks > -Mark > > >> On Jul 2, 2018, at 3:59 PM, Mark Bean <[email protected]> wrote: >> >> Several of our custom processors are not compatible with version 1.7.0. >> There is a growing pattern of unit test failures due to customValidate() >> not being executed now where it was being executed in 1.6.0 and prior. I >> believe there were changes made in 1.7.0 in terms of how validation - and >> therefore customValidate() - is performed and/or when it is performed. >> >> Could someone provide a brief description on how validation was changed in >> 1.7.0? >> >> Thanks! >> Mark >
