Test encoding intermediate packages using GPB 91/77491/2
authorFilip Krzywka <filip.krzywka@nokia.com>
Tue, 29 Jan 2019 06:48:10 +0000 (07:48 +0100)
committerFilip Krzywka <filip.krzywka@nokia.com>
Tue, 29 Jan 2019 08:06:26 +0000 (09:06 +0100)
Change-Id: I1f3e2fefce165fa17e27a5e2c2edd456e27b63b4
Issue-ID: DCAEGEN2-1131
Signed-off-by: Filip Krzywka <filip.krzywka@nokia.com>
services/hv-ves-client/producer/impl/src/main/java/org/onap/dcaegen2/services/sdk/services/hvves/client/producer/impl/encoders/ProtobufEncoder.java
services/hv-ves-client/producer/impl/src/test/java/org/onap/dcaegen2/services/sdk/services/hvves/client/producer/impl/encoders/ProtobufEncoderTest.java
services/hv-ves-client/producer/impl/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker [new file with mode: 0644]

index 305716f..5bee846 100644 (file)
@@ -33,7 +33,7 @@ public class ProtobufEncoder {
     private static final Logger LOGGER = LoggerFactory.getLogger(ProtobufEncoder.class);
 
     public ByteBuffer encode(VesEvent event) {
-        LOGGER.debug("Encoding VesEvent '{}'", event);
+        LOGGER.trace("Encoding VesEvent '{}'", event);
         return event.toByteString().asReadOnlyByteBuffer();
     }
 }
index ba5514e..6fb6f42 100644 (file)
 package org.onap.dcaegen2.services.sdk.services.hvves.client.producer.impl.encoders;
 
 import static org.assertj.core.api.Assertions.assertThat;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.when;
 
-import io.netty.buffer.ByteBuf;
-import io.netty.buffer.ByteBufAllocator;
+import com.google.protobuf.ByteString;
 import org.junit.jupiter.api.Test;
 import org.onap.dcaegen2.services.sdk.services.hvves.client.producer.impl.utils.VesEvents;
 import org.onap.ves.VesEventOuterClass.VesEvent;
 
 import java.nio.ByteBuffer;
+import java.nio.charset.Charset;
 
 public class ProtobufEncoderTest {
 
     private final ProtobufEncoder protobufEncoder = new ProtobufEncoder();
 
     @Test
-    void todo() {
-        // given
+    void encode_shouldDelegateToProtobufMethodsToSerializeMessage_andReturnReadOnlyByteBuffer() {
+        final VesEvent message = mock(VesEvent.class);
+        final ByteString bs = ByteString.copyFrom("vesEvent", Charset.defaultCharset());
+        when(message.toByteString()).thenReturn(bs);
+
+        final ByteBuffer encodedMessage = protobufEncoder.encode(message);
+
+        assertThat(encodedMessage).isEqualByComparingTo(bs.asReadOnlyByteBuffer());
+    }
+
+    @Test
+    void encode_shouldReturnReadOnlyByteBuffer() {
         final VesEvent message = VesEvents.defaultVesEvent();
 
-        // when
         final ByteBuffer encodedMessage = protobufEncoder.encode(message);
 
-        // then
-        assertThat(encodedMessage.remaining()).isGreaterThan(0);
+        assertThat(encodedMessage.isReadOnly()).isTrue();
     }
 }
diff --git a/services/hv-ves-client/producer/impl/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker b/services/hv-ves-client/producer/impl/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker
new file mode 100644 (file)
index 0000000..ca6ee9c
--- /dev/null
@@ -0,0 +1 @@
+mock-maker-inline
\ No newline at end of file