/** @param oper Data value for comparison. */ @SuppressWarnings({"rawtypes", "unchecked"}) public <V extends Number> void testNodeProcessingSchema(Change<V> oper) { CollectorTestSink changeSink = new CollectorTestSink(); CollectorTestSink percentSink = new CollectorTestSink(); oper.change.setSink(changeSink); oper.percent.setSink(percentSink); oper.beginWindow(0); oper.base.process(oper.getValue(10)); oper.data.process(oper.getValue(5)); oper.data.process(oper.getValue(15)); oper.data.process(oper.getValue(20)); oper.endWindow(); Assert.assertEquals("number emitted tuples", 3, changeSink.collectedTuples.size()); Assert.assertEquals("number emitted tuples", 3, percentSink.collectedTuples.size()); log.debug("\nLogging tuples"); for (Object o : changeSink.collectedTuples) { log.debug(String.format("change %s", o)); } for (Object o : percentSink.collectedTuples) { log.debug(String.format("percent change %s", o)); } }
/** * Gets the single instance of Change. * * @param value the value * @return single instance of Change */ public static Change getInstance(String value) { for (Change erTyp : Change.values()) { if (erTyp.getValue().equals(value)) { return erTyp; } } return null; }