.build(); assertSame(settings, ctx.getSettings()); assertSame(ex, ctx.getExceptionHandler()); assertSame(metricRegistry, ctx.getMetricRegistry()); assertSame(healthChecks, ctx.getHealthCheckRegistry()); ctx.getHealthCheckRegistry().runHealthChecks();
@Test public void testAddCurrentTime() throws Exception { morphline = createMorphline("test-morphlines/addCurrentTime"); Record record = new Record(); startSession(); assertEquals(1, collector.getNumStartEvents()); long now = System.currentTimeMillis(); assertTrue(morphline.process(record)); assertSame(record, collector.getFirstRecord()); long actual = ((Long) record.getFirstValue("ts")).longValue(); assertTrue(actual >= now); assertTrue(actual <= now + 1000); // test that preserveExisting = true preserves the existing timestamp collector.reset(); startSession(); assertEquals(1, collector.getNumStartEvents()); Thread.sleep(1); assertTrue(morphline.process(record)); assertSame(record, collector.getFirstRecord()); long actual2 = ((Long) record.getFirstValue("ts")).longValue(); assertEquals(actual, actual2); }
@Test public void testReadBlobWithDestination() throws IOException { morphline = createMorphline("test-morphlines/readBlobWithOutputField"); for (int i = 0; i < 3; i++) { Record record = new Record(); byte[] bytes = "foo".getBytes("UTF-8"); record.put(Fields.ATTACHMENT_BODY, bytes); collector.reset(); startSession(); assertEquals(1, collector.getNumStartEvents()); assertTrue(morphline.process(record)); assertSame(record, collector.getFirstRecord()); assertSame(bytes, record.getFirstValue(Fields.ATTACHMENT_BODY)); assertNotSame(bytes, record.getFirstValue("myAwesomeDestination")); assertArrayEquals(bytes, (byte[])record.getFirstValue("myAwesomeDestination")); } }
@Test public void testDecodeBase64() throws Exception { morphline = createMorphline("test-morphlines/decodeBase64"); Record record = new Record(); record.put("data", "SGVsbG8gV29ybGQ="); startSession(); assertEquals(1, collector.getNumStartEvents()); assertTrue(morphline.process(record)); byte[] actual = (byte[]) collector.getFirstRecord().getFirstValue("data"); assertArrayEquals("Hello World".getBytes(Charsets.UTF_8), actual); assertSame(record, collector.getFirstRecord()); }
@Test public void testGrokWithEscaping() throws Exception { morphline = createMorphline("test-morphlines/grokWithEscaping"); Record record = new Record(); record.put(Fields.MESSAGE, "{SystemSourceId}=foo"); assertTrue(morphline.process(record)); assertSame(record, collector.getFirstRecord()); record = new Record(); record.put(Fields.MESSAGE, "SystemSourceId}=foo"); // missing opening brace assertFalse(morphline.process(record)); }
private void processAndVerifySuccess(Record input, Record expected, boolean isSame) { collector.reset(); startSession(); assertEquals(1, collector.getNumStartEvents()); assertTrue(morphline.process(input)); assertEquals(expected, collector.getFirstRecord()); if (isSame) { assertSame(input, collector.getFirstRecord()); } else { assertNotSame(input, collector.getFirstRecord()); } }
@Test public void testNotWithFalse() throws Exception { morphline = createMorphline("test-morphlines/notWithFalse"); Record record = createBasicRecord(); startSession(); assertEquals(1, collector.getNumStartEvents()); assertTrue(morphline.process(record)); assertEquals(record, collector.getFirstRecord()); assertSame(record, collector.getFirstRecord()); }
@Test public void testReadBlob() throws Exception { morphline = createMorphline("test-morphlines/readBlob"); for (int i = 0; i < 3; i++) { Record record = new Record(); byte[] bytes = "foo".getBytes("UTF-8"); record.put(Fields.ATTACHMENT_BODY, bytes); collector.reset(); startSession(); assertEquals(1, collector.getNumStartEvents()); assertTrue(morphline.process(record)); assertSame(record, collector.getFirstRecord()); assertNotSame(bytes, record.getFirstValue(Fields.ATTACHMENT_BODY)); assertArrayEquals(bytes, (byte[])record.getFirstValue(Fields.ATTACHMENT_BODY)); } }
@Test public void testToByteArray() throws Exception { morphline = createMorphline("test-morphlines/toByteArray"); Record record = new Record(); record.put("first_name", "Nadja"); collector.reset(); startSession(); assertEquals(1, collector.getNumStartEvents()); assertTrue(morphline.process(record)); assertEquals(1, collector.getFirstRecord().getFields().size()); byte[] expected = "Nadja".getBytes("UTF-8"); assertArrayEquals(expected, (byte[]) collector.getFirstRecord().getFirstValue("first_name")); assertSame(record, collector.getFirstRecord()); }
@Test public void testNotWithFalseWithContinuation() throws Exception { morphline = createMorphline("test-morphlines/notWithFalseAndContinuation"); Record record = createBasicRecord(); startSession(); assertEquals(1, collector.getNumStartEvents()); assertTrue(morphline.process(record)); assertEquals(record, collector.getFirstRecord()); assertSame(record, collector.getFirstRecord()); assertEquals("touched", collector.getFirstRecord().getFirstValue("state")); }
assertEquals(expected, collector.getFirstRecord()); if (inplace) { assertSame(record, collector.getFirstRecord()); } else { assertNotSame(record, collector.getFirstRecord()); assertSame(record, collector.getFirstRecord()); } else { assertNotSame(record, collector.getFirstRecord());
assertEquals(expected, collector.getFirstRecord()); if (inplace) { assertSame(record, collector.getFirstRecord()); } else { assertNotSame(record, collector.getFirstRecord());