I was glad to see the mocks. When I first saw the stubs for the processor I
was wondering how I was going to test it. After I get this first POC out
I'll slowdown and back up through documentation and pass along any
suggestions, etc. I tend to just dive into things and see what shakes out.
Ease of use is big win for me. It is a good sign if I can generally "just
figure things out".

*Jeremiah Adams*

Senior Software Developer
Pearson

2154 East Commons Ave.
Suite 400
Centennial, CO 80122


Always Learning
Learn more at www.pearson.com

On Wed, Jul 8, 2015 at 11:05 AM, Mark Payne <[email protected]> wrote:

> Great, glad I could help.
>
> I've found the mock framework pretty invaluable to make sure that
> processors work
> right before trying to test in a real flow. That being said, we are often
> finding ways to improve
> the mock framework, especially things like detecting "bad practices". So
> if you hit something that you think
> we could add to the mock framework to help catching these things early on,
> please share so we
> can make it better!
>
> Thanks
> -Mark
>
> ----------------------------------------
> > Date: Wed, 8 Jul 2015 10:46:53 -0600
> > Subject: Re: Problem with Custom Processor Incorrectly Routing FlowFile
> > From: [email protected]
> > To: [email protected]
> >
> > Thanks Mark, that got me in the right direction. Silly error on my part.
> >
> > *Jeremiah Adams*
> >
> > Senior Software Developer
> > Pearson
> >
> > 2154 East Commons Ave.
> > Suite 400
> > Centennial, CO 80122
> >
> >
> > Always Learning
> > Learn more at www.pearson.com
> >
> > On Wed, Jul 8, 2015 at 10:24 AM, Mark Payne <[email protected]>
> wrote:
> >
> >> Jeremiah,
> >>
> >> That should be fine. I would recommend you modify the bootstrap.conf
> file
> >> in $NIFI_HOME/conf and uncomment this line:
> >>
> >>
> >>
> #java.arg.debug=-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8000
> >>
> >> That will then allow you to attach a remote debugger (i.e., eclipse or
> >> whatever IDE you use) and then you can set a breakpoint and understand
> >> what's going on.
> >>
> >> Thanks
> >> -Mark
> >>
> >> ----------------------------------------
> >>> Date: Wed, 8 Jul 2015 10:14:02 -0600
> >>> Subject: Problem with Custom Processor Incorrectly Routing FlowFile
> >>> From: [email protected]
> >>> To: [email protected]
> >>>
> >>> I am implementing a custom processor based on JSON messages.
> >>>
> >>> I have unit tests around the processor. These verify the expected
> >>> functionality and are similar to:
> >>>
> >>> ClassLoader loader = Thread.currentThread().getContextClassLoader();
> >>> InputStream inputStream =
> >>> loader.getResourceAsStream("matched.json");
> >>> testRunner.enqueue(inputStream);
> >>> testRunner.run();
> >>> testRunner.assertTransferCount(JsonRouteProcessor.REL_MATCHED, 1);
> >>> testRunner.assertQueueEmpty();
> >>>
> >>>
> >>> Once I drop my processor into the NiFi server and put it in my flow,
> this
> >>> processor does not route messages as expected and as verified in the
> unit
> >>> tests. I can't see into the logic in the logs, just that this processor
> >>> routed the message to the wrong downstream processor. I've even taken
> the
> >>> messages the processor rejects in my NiFi flow and ran them through my
> >> unit
> >>> tests - they behave as expected.
> >>>
> >>> Do I have a misunderstanding of the correct way to unit test the
> >> onTrigger
> >>> method for my processor?
> >>>
> >>>
> >>> *Jeremiah Adams*
> >>>
> >>> Senior Software Developer
> >>> Pearson
> >>>
> >>> 2154 East Commons Ave.
> >>> Suite 400
> >>> Centennial, CO 80122
> >>>
> >>>
> >>> Always Learning
> >>> Learn more at www.pearson.com
> >>
>

Reply via email to