Lisp test coverage increased to ~80%
[honeycomb.git] / lisp / lisp2vpp / src / test / java / io / fd / honeycomb / lisp / translate / read / LispStateCustomizerTest.java
diff --git a/lisp/lisp2vpp/src/test/java/io/fd/honeycomb/lisp/translate/read/LispStateCustomizerTest.java b/lisp/lisp2vpp/src/test/java/io/fd/honeycomb/lisp/translate/read/LispStateCustomizerTest.java
new file mode 100644 (file)
index 0000000..4a76deb
--- /dev/null
@@ -0,0 +1,52 @@
+package io.fd.honeycomb.lisp.translate.read;
+
+import static org.junit.Assert.assertEquals;
+import static org.mockito.Mockito.when;
+
+import io.fd.honeycomb.translate.read.ReadFailedException;
+import io.fd.honeycomb.translate.spi.read.ReaderCustomizer;
+import io.fd.honeycomb.vpp.test.read.ReaderCustomizerTest;
+import org.junit.Before;
+import org.junit.Test;
+import org.mockito.Mockito;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.lisp.rev160520.LispState;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.lisp.rev160520.LispStateBuilder;
+import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
+import org.openvpp.jvpp.core.dto.ShowLispStatusReply;
+
+public class LispStateCustomizerTest extends ReaderCustomizerTest<LispState, LispStateBuilder> {
+
+    private InstanceIdentifier<LispState> identifier;
+
+    public LispStateCustomizerTest() {
+        super(LispState.class, null);
+    }
+
+    @Before
+    public void init() {
+        identifier = InstanceIdentifier.create(LispState.class);
+        final ShowLispStatusReply reply = new ShowLispStatusReply();
+        reply.featureStatus = 1;
+
+        when(api.showLispStatus(Mockito.any())).thenReturn(future(reply));
+    }
+
+    @Test
+    public void testReadCurrentAttributes() throws ReadFailedException {
+
+        LispStateBuilder builder = new LispStateBuilder();
+        getCustomizer().readCurrentAttributes(identifier, builder, ctx);
+
+        assertEquals(true, builder.build().isEnable());
+    }
+
+    @Override
+    protected ReaderCustomizer<LispState, LispStateBuilder> initCustomizer() {
+        return new LispStateCustomizer(api);
+    }
+
+    @Override
+    public void testMerge() throws Exception {
+        //LispState is root node, so there is no way to implement merge(it is also not needed)
+    }
+}