From 130c716105017c7b20b4779973b915968b3dc322 Mon Sep 17 00:00:00 2001 From: Jan Srnicek Date: Wed, 16 Aug 2017 09:21:24 +0200 Subject: HONEYCOMB-386 - Make update optional If customizer does not support update directly, updates for its handled nodes are broken up to delete + create pairs. Change-Id: I2929109e8c9a1db0bef108367cf7d839135ce173 Signed-off-by: Jan Srnicek --- .../honeycomb/translate/impl/write/GenericWriterTest.java | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) (limited to 'infra/translate-impl/src/test/java/io/fd/honeycomb/translate/impl/write/GenericWriterTest.java') diff --git a/infra/translate-impl/src/test/java/io/fd/honeycomb/translate/impl/write/GenericWriterTest.java b/infra/translate-impl/src/test/java/io/fd/honeycomb/translate/impl/write/GenericWriterTest.java index 3caea571e..c9d381ad4 100644 --- a/infra/translate-impl/src/test/java/io/fd/honeycomb/translate/impl/write/GenericWriterTest.java +++ b/infra/translate-impl/src/test/java/io/fd/honeycomb/translate/impl/write/GenericWriterTest.java @@ -17,6 +17,8 @@ package io.fd.honeycomb.translate.impl.write; import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertTrue; import static org.mockito.Mockito.doThrow; import static org.mockito.Mockito.verify; @@ -53,13 +55,13 @@ public class GenericWriterTest { @Test public void testUpdate() throws Exception { assertEquals(DATA_OBJECT_ID, writer.getManagedDataObjectType()); - writer.update(DATA_OBJECT_ID, before, after, ctx); + writer.processModification(DATA_OBJECT_ID, before, after, ctx); verify(customizer).updateCurrentAttributes(DATA_OBJECT_ID, before, after, ctx); - writer.update(DATA_OBJECT_ID, before, null, ctx); + writer.processModification(DATA_OBJECT_ID, before, null, ctx); verify(customizer).deleteCurrentAttributes(DATA_OBJECT_ID, before, ctx); - writer.update(DATA_OBJECT_ID, null, after, ctx); + writer.processModification(DATA_OBJECT_ID, null, after, ctx); verify(customizer).writeCurrentAttributes(DATA_OBJECT_ID, after, ctx); } @@ -85,4 +87,11 @@ public class GenericWriterTest { writer = new GenericWriter<>(DATA_OBJECT_ID, customizer); writer.deleteCurrentAttributes(DATA_OBJECT_ID, before, ctx); } + + @Test + public void testUpdateSupported() { + assertFalse(GenericWriter.isUpdateSupported(new NoopWriters.NonDirectUpdateWriterCustomizer())); + assertTrue(GenericWriter.isUpdateSupported(new NoopWriters.DirectUpdateWriterCustomizer())); + assertTrue(GenericWriter.isUpdateSupported(new NoopWriters.ParentImplDirectUpdateWriterCustomizer())); + } } \ No newline at end of file -- cgit 1.2.3-korg