Drop JMock usage from unit tests 54/106554/2
authorRuslan Kashapov <ruslan.kashapov@pantheon.tech>
Tue, 20 Jun 2023 12:54:26 +0000 (15:54 +0300)
committerRuslan Kashapov <ruslan.kashapov@pantheon.tech>
Tue, 20 Jun 2023 13:53:18 +0000 (16:53 +0300)
JMock library removed as outdated and incompatible with recent
jacoco version, common.unittest.tools module removed as extra

Change-Id: I9010fb84c1255c2765f20be31d8ad04df56f47e4
Signed-off-by: Ruslan Kashapov <ruslan.kashapov@pantheon.tech>
25 files changed:
commons/parent/pom.xml
commons/unittest_tools/pom.xml [deleted file]
commons/unittest_tools/src/main/java/org/opendaylight/lispflowmapping/tools/junit/BaseExpectations.java [deleted file]
commons/unittest_tools/src/main/java/org/opendaylight/lispflowmapping/tools/junit/BaseTestCase.java [deleted file]
mappingservice/implementation/pom.xml
mappingservice/lisp-proto/pom.xml
mappingservice/lisp-proto/src/test/java/org/opendaylight/lispflowmapping/TestUtils.java [new file with mode: 0644]
mappingservice/lisp-proto/src/test/java/org/opendaylight/lispflowmapping/lisp/authentication/LispAuthenticationTest.java
mappingservice/lisp-proto/src/test/java/org/opendaylight/lispflowmapping/serializer/MapNotifySerializationTest.java
mappingservice/lisp-proto/src/test/java/org/opendaylight/lispflowmapping/serializer/MapRegisterSerializationTest.java
mappingservice/lisp-proto/src/test/java/org/opendaylight/lispflowmapping/serializer/MapReplySerializationTest.java
mappingservice/lisp-proto/src/test/java/org/opendaylight/lispflowmapping/serializer/MapRequestSerializationTest.java
mappingservice/lisp-proto/src/test/java/org/opendaylight/lispflowmapping/serializer/address/AfiListSerializerTest.java
mappingservice/lisp-proto/src/test/java/org/opendaylight/lispflowmapping/serializer/address/ApplicationDataSerializerTest.java
mappingservice/lisp-proto/src/test/java/org/opendaylight/lispflowmapping/serializer/address/DistinguishedNameSerializerTest.java
mappingservice/lisp-proto/src/test/java/org/opendaylight/lispflowmapping/serializer/address/ExplicitLocatorPathSerializerTest.java
mappingservice/lisp-proto/src/test/java/org/opendaylight/lispflowmapping/serializer/address/InstanceIdSerializerTest.java
mappingservice/lisp-proto/src/test/java/org/opendaylight/lispflowmapping/serializer/address/Ipv6SerializerTest.java
mappingservice/lisp-proto/src/test/java/org/opendaylight/lispflowmapping/serializer/address/KeyValueAddressSerializerTest.java
mappingservice/lisp-proto/src/test/java/org/opendaylight/lispflowmapping/serializer/address/ServicePathTest.java
mappingservice/lisp-proto/src/test/java/org/opendaylight/lispflowmapping/serializer/address/SourceDestKeySerializerTest.java
mappingservice/pom.xml
mappingservice/southbound/pom.xml
mappingservice/southbound/src/test/java/org/opendaylight/lispflowmapping/southbound/lisp/LispSouthboundHandlerTest.java
pom.xml

index d755224255e50d3cb6a7694fae92f178fca777de..fdc4593d8152d3be86f1f29721a24f34c79959e6 100644 (file)
         <type>pom</type>
         <scope>import</scope>
       </dependency>
-      <dependency>
-        <groupId>org.jmock</groupId>
-        <artifactId>jmock</artifactId>
-        <version>2.12.0</version>
-        <exclusions>
-          <exclusion>
-            <groupId>com.google.code.findbugs</groupId>
-            <artifactId>annotations</artifactId>
-          </exclusion>
-        </exclusions>
-      </dependency>
-      <dependency>
-        <groupId>org.jmock</groupId>
-        <artifactId>jmock-legacy</artifactId>
-        <version>2.12.0</version>
-      </dependency>
       <dependency>
         <groupId>org.opendaylight.controller</groupId>
         <artifactId>controller-artifacts</artifactId>
         <artifactId>mappingservice.config</artifactId>
         <version>${lispflowmapping.version}</version>
       </dependency>
-      <dependency>
-        <groupId>org.opendaylight.lispflowmapping</groupId>
-        <artifactId>common.unittest.tools</artifactId>
-        <version>${lispflowmapping.version}</version>
-        <scope>test</scope>
-      </dependency>
       <dependency>
         <groupId>org.opendaylight.lispflowmapping</groupId>
         <artifactId>ui-lispflowmapping</artifactId>
diff --git a/commons/unittest_tools/pom.xml b/commons/unittest_tools/pom.xml
deleted file mode 100644 (file)
index 6e94c36..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-  <modelVersion>4.0.0</modelVersion>
-
-  <parent>
-    <groupId>org.opendaylight.lispflowmapping</groupId>
-    <artifactId>lispflowmapping-commons</artifactId>
-    <version>1.18.0-SNAPSHOT</version>
-    <relativePath>../parent</relativePath>
-  </parent>
-
-  <artifactId>common.unittest.tools</artifactId>
-  <!-- <name> formatting is used by autorelease to parse and notify projects on
-       build failure. Please do not modify this unless you have a good reason. -->
-  <name>ODL :: lispflowmapping :: ${project.artifactId}</name>
-
-  <properties>
-    <odlparent.checkstyle.enforce>false</odlparent.checkstyle.enforce>
-    <odlparent.spotbugs.enforce>false</odlparent.spotbugs.enforce>
-  </properties>
-
-  <dependencies>
-    <dependency>
-      <groupId>junit</groupId>
-      <artifactId>junit</artifactId>
-      <scope>compile</scope>
-    </dependency>
-    <dependency>
-      <groupId>org.hamcrest</groupId>
-      <artifactId>hamcrest-core</artifactId>
-      <version>1.3</version>
-      <scope>compile</scope>
-    </dependency>
-    <dependency>
-      <groupId>org.jmock</groupId>
-      <artifactId>jmock</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>org.jmock</groupId>
-      <artifactId>jmock-legacy</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>org.slf4j</groupId>
-      <artifactId>slf4j-api</artifactId>
-    </dependency>
-  </dependencies>
-</project>
diff --git a/commons/unittest_tools/src/main/java/org/opendaylight/lispflowmapping/tools/junit/BaseExpectations.java b/commons/unittest_tools/src/main/java/org/opendaylight/lispflowmapping/tools/junit/BaseExpectations.java
deleted file mode 100644 (file)
index 23d154b..0000000
+++ /dev/null
@@ -1,429 +0,0 @@
-/*
- * Copyright (c) 2014 Contextream, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- */
-
-package org.opendaylight.lispflowmapping.tools.junit;
-
-import java.lang.reflect.Field;
-import java.lang.reflect.InvocationTargetException;
-import java.lang.reflect.Method;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-
-import org.hamcrest.BaseMatcher;
-import org.hamcrest.Description;
-import org.hamcrest.Matcher;
-import org.hamcrest.TypeSafeMatcher;
-import org.jmock.Expectations;
-import org.jmock.Mockery;
-import org.jmock.api.Action;
-import org.jmock.api.Invocation;
-import org.jmock.internal.InvocationExpectationBuilder;
-import org.jmock.internal.ReturnDefaultValueAction;
-import org.jmock.lib.concurrent.Synchroniser;
-import org.jmock.lib.legacy.ClassImposteriser;
-import org.jmock.syntax.ReceiverClause;
-import org.junit.After;
-import org.junit.Assert;
-import org.junit.Before;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-public abstract class BaseExpectations extends Expectations {
-    protected Mockery context;
-    protected boolean showAllExpectations;
-    private final Synchroniser synchroniser = new Synchroniser();
-    protected static final Logger LOG = LoggerFactory.getLogger(BaseExpectations.class);
-
-    @Before
-    public void before() throws Exception {
-        context = new Mockery() {
-            {
-                setImposteriser(ClassImposteriser.INSTANCE);
-                // otherwise we get errors on the finalizer thread:
-                setThreadingPolicy(synchroniser);
-            }
-        };
-        defaultAction = new ReturnDefaultValueAction(ClassImposteriser.INSTANCE);
-    }
-
-    @After
-    public void after() throws Exception {
-        context.assertIsSatisfied();
-    }
-
-    // New suger syntax
-
-    protected final void ret(Object result) {
-        will(returnValue(result));
-    }
-
-    protected final void rethrow(Throwable throwable) {
-        will(throwException(throwable));
-    }
-
-    protected final void retField(Object container, String fieldName) throws Exception {
-        will(new ReturnField(container, fieldName));
-    }
-
-    protected final void rets(Object... results) {
-        will(returnValues(results));
-    }
-
-    protected final <T> T wany(Class<T> type) {
-        return with(any(type));
-    }
-
-    protected final int wanyint() {
-        return with(any(int.class));
-    }
-
-    protected final long wanylong() {
-        return with(any(long.class));
-    }
-
-    protected final boolean wanybool() {
-        return with(any(boolean.class));
-    }
-
-    protected final <T> T wsame(T instance) {
-        return with(same(instance));
-    }
-
-    protected final <T> T weq(T instance) {
-        return with(equal(instance));
-    }
-
-    protected final short weq(short instance) {
-        return with(equal(instance));
-    }
-
-    protected final int weq(int instance) {
-        return with(equal(instance));
-    }
-
-    protected final long weq(long instance) {
-        return with(equal(instance));
-    }
-
-    protected final boolean weq(boolean instance) {
-        return with(equal(instance));
-    }
-
-    public static Action returnValues(Object... result) {
-        return new ActionSequenceValue(result);
-    }
-
-    protected void retMethod(final String methodName) {
-        will(new MethodAction(this, methodName));
-    }
-
-    private static class MethodAction implements Action {
-        private Object testInstance;
-        private String methodName;
-        private Method method;
-
-        MethodAction(Object testInstance, String methodName) {
-            this.testInstance = testInstance;
-            this.methodName = methodName;
-            method = findMethod(testInstance.getClass());
-            Assert.assertNotNull("Cannot locate '" + methodName + "'", method);
-        }
-
-        private Method findMethod(Class<? extends Object> clazz) {
-            if (Object.class.equals(clazz)) {
-                return null;
-            }
-            try {
-                return clazz.getMethod(methodName, Invocation.class);
-            } catch (SecurityException e) {
-                LOG.debug("Catched SecurityException", e);
-            } catch (NoSuchMethodException e) {
-                LOG.debug("Catched NoSuchMethodException", e);
-            }
-
-            return findMethod(clazz.getSuperclass());
-        }
-
-        public void describeTo(Description arg0) {
-            arg0.appendText("running " + methodName);
-        }
-
-        public Object invoke(Invocation invocation) throws Throwable {
-            Exception e = null;
-            try {
-                return method.invoke(testInstance, invocation);
-            } catch (SecurityException se) {
-                e = se;
-            } catch (IllegalAccessException iae) {
-                e = iae;
-            } catch (InvocationTargetException ite) {
-                throw ite.getTargetException();
-            }
-            Assert.fail("Got " + e.getMessage() + " while trying to execute '" + methodName + "'");
-            return null;
-        }
-
-    }
-
-    private static class ActionSequenceValue implements Action {
-        private final Object[] values;
-        private int i = 0;
-
-        ActionSequenceValue(Object... values) {
-            this.values = values;
-        }
-
-        public Object invoke(Invocation invocation) throws Throwable {
-            if (i < values.length) {
-                return values[i++];
-            }
-            throw new RuntimeException("no morCxtrmExpectationse actions available: " + invocation);
-        }
-
-        public void describeTo(Description description) {
-            description.appendText(", and then ").appendText(Arrays.toString(values));
-        }
-    }
-
-    protected static final class ReturnField implements Action {
-        private final Object container;
-        private final Field field;
-
-        public ReturnField(Object container, String fieldName) throws Exception {
-            this.container = container;
-            field = container.getClass().getDeclaredField(fieldName);
-            field.setAccessible(true);
-        }
-
-        public void describeTo(Description description) {
-            description.appendText("return " + container.getClass().getName() + "." + field.getName());
-        }
-
-        public Object invoke(Invocation invocation) throws Throwable {
-            return field.get(container);
-        }
-    }
-
-    public static class ValueSaverAction<T> extends BaseMatcher<T> implements Action {
-        private final String logMatch;
-        private final boolean logInvocation;
-        public T lastValue;
-        public final List<T> values = new ArrayList<T>();
-
-        public ValueSaverAction() {
-            this(null, false);
-        }
-
-        public ValueSaverAction(String logMatch, boolean logInvocation) {
-            this.logMatch = logMatch;
-            this.logInvocation = logInvocation;
-        }
-
-        @SuppressWarnings("unchecked")
-        public final boolean matches(Object arg) {
-            T value = (T) arg;
-            if (!validate(value)) {
-                return false;
-            }
-            lastValue = transformOnMatch(value);
-            values.add(lastValue);
-            boolean match = match(lastValue);
-            if (match && (logMatch != null)) {
-                LOG.trace("Match: " + logMatch + " " + value);
-            }
-            return match;
-        }
-
-        protected T onMatch(T value) {
-            return value;
-        }
-
-        protected boolean match(T lastValue2) {
-            return true;
-        }
-
-        protected boolean validate(T value) {
-            return true;
-        }
-
-        protected T transformOnMatch(T value) {
-            return value;
-        }
-
-        public void describeTo(Description arg0) {
-        }
-
-        public Object invoke(Invocation invocation) throws Throwable {
-            if (logInvocation) {
-                LOG.trace("Invoke: returning " + lastValue);
-            }
-            return lastValue;
-        }
-
-        @Override
-        public String toString() {
-            return "ValueSavers: " + values.toString();
-        }
-    }
-
-    @SafeVarargs
-    protected static final <T> Matcher<T[]> contains(final T... expected) {
-        return new BaseMatcher<T[]>() {
-            @SuppressWarnings("unchecked")
-            public boolean matches(Object actual) {
-                T[] arr = (T[]) actual;
-                if (arr.length != expected.length) {
-                    return false;
-                }
-                for (T expectedInstance : expected) {
-                    boolean found = false;
-                    for (int j = 0; (j < arr.length) && !found; j++) {
-                        found = (arr[j] == expectedInstance);
-                    }
-                    if (!found) {
-                        return false;
-                    }
-                }
-                return true;
-            }
-
-            public void describeTo(Description arg0) {
-            }
-        };
-    }
-
-    @SafeVarargs
-    protected static final <T> Matcher<T[]> sameArbitraryArray(final T... expectedArr) {
-        return new TypeSafeMatcher<T[]>() {
-            @Override
-            public boolean matchesSafely(T[] actualArr) {
-                Set<T> expected = new HashSet<T>();
-                for (T val : expectedArr) {
-                    expected.add(val);
-                }
-                Set<T> actual = new HashSet<T>();
-                actual.addAll(Arrays.asList(actualArr));
-                return actual.equals(expected);
-            }
-
-            public void describeTo(Description description) {
-                description.appendText("Same arbitrary array as " + Arrays.toString(expectedArr));
-            }
-        };
-    }
-
-    @SafeVarargs
-    protected static final <T> Matcher<T[]> doseNotContain(final T... forbiddenValues) {
-        return new TypeSafeMatcher<T[]>() {
-            @Override
-            public boolean matchesSafely(T[] arr) {
-                for (T forbiddenInstance : forbiddenValues) {
-                    for (T element : arr) {
-                        if (element == forbiddenInstance) {
-                            return false;
-                        }
-                    }
-                }
-                return true;
-            }
-
-            public void describeTo(Description description) {
-            }
-        };
-    }
-
-    public final class StringArrayMatcher extends BaseMatcher<String[]> {
-        private final Object[] expected;
-
-        /**
-         * @param expected
-         *            null are considered "any"
-         */
-        StringArrayMatcher(Object... expected) {
-            this.expected = expected;
-        }
-
-        public boolean matches(Object item) {
-            if (!(item instanceof String[])) {
-                return false;
-            }
-            String[] actual = (String[]) item;
-            if (expected.length != actual.length) {
-                return false;
-            }
-            for (int i = 0; i < expected.length; i++) {
-                if ((expected[i] != null) && !expected[i].toString().equals(actual[i])) {
-                    return false;
-                }
-            }
-            return true;
-        }
-
-        public void describeTo(Description description) {
-            description.appendText("String" + Arrays.toString(expected));
-        }
-    }
-
-    /**
-     * @param expected
-     *            null are considered "any"
-     */
-    public final String[] wStrArr(Object... expected) {
-        return with(new StringArrayMatcher(expected));
-    }
-
-    // ////////////////////////////////////////////////////////////
-    // Make expectations work in our new ConteXtream better way //
-    // ////////////////////////////////////////////////////////////
-    private ReturnDefaultValueAction defaultAction;
-
-    protected InvocationExpectationBuilder getCurrentBuilder() {
-        try {
-            return currentBuilder();
-        } catch (IllegalStateException e) {
-            LOG.debug("Catched IllegalStateException", e);
-            return null;
-        }
-    }
-
-    private void addCurrentExpectation() {
-        context.addExpectation(currentBuilder().toExpectation(defaultAction));
-    }
-
-    @Override
-    public ReceiverClause exactly(int count) {
-        ReceiverClause ret = super.exactly(count);
-        addCurrentExpectation();
-        return ret;
-    }
-
-    @Override
-    public ReceiverClause atLeast(int count) {
-        ReceiverClause ret = super.atLeast(count);
-        addCurrentExpectation();
-        return ret;
-    }
-
-    @Override
-    public ReceiverClause between(int minCount, int maxCount) {
-        ReceiverClause ret = super.between(minCount, maxCount);
-        addCurrentExpectation();
-        return ret;
-    }
-
-    @Override
-    public ReceiverClause atMost(int count) {
-        ReceiverClause ret = super.atMost(count);
-        addCurrentExpectation();
-        return ret;
-    }
-
-}
diff --git a/commons/unittest_tools/src/main/java/org/opendaylight/lispflowmapping/tools/junit/BaseTestCase.java b/commons/unittest_tools/src/main/java/org/opendaylight/lispflowmapping/tools/junit/BaseTestCase.java
deleted file mode 100644 (file)
index e2777d7..0000000
+++ /dev/null
@@ -1,159 +0,0 @@
-/*
- * Copyright (c) 2014 Contextream, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- */
-
-package org.opendaylight.lispflowmapping.tools.junit;
-
-import static org.junit.Assert.assertEquals;
-
-import java.lang.reflect.Field;
-import java.lang.reflect.Modifier;
-import java.net.InetAddress;
-import java.net.UnknownHostException;
-import java.nio.ByteBuffer;
-
-import org.hamcrest.Description;
-import org.jmock.api.Action;
-import org.jmock.api.Invocation;
-import org.junit.Assert;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-public abstract class BaseTestCase extends BaseExpectations {
-    protected static final Logger LOG = LoggerFactory.getLogger(BaseTestCase.class);
-
-    protected InetAddress asInet(int intValue) {
-        try {
-            return InetAddress.getByAddress(ByteBuffer.allocate(4).putInt(intValue).array());
-        } catch (UnknownHostException e) {
-            LOG.debug("Unknown host {}", ByteBuffer.allocate(4).putInt(intValue).array(), e);
-            fail("");
-        }
-        return null;
-    }
-
-    public static void fail(String message) {
-        Assert.fail(message);
-    }
-
-    public static void fail() {
-        Assert.fail();
-    }
-
-    public static void assertNotNull(String message, Object object) {
-        Assert.assertNotNull(message, object);
-    }
-
-    public static void assertNotNull(Object object) {
-        Assert.assertNotNull(object);
-    }
-
-    public static void assertNull(Object message, Object object) {
-        Assert.assertNull(message.toString(), object);
-    }
-
-    public static void assertNull(Object object) {
-        Assert.assertNull("" + object, object);
-    }
-
-    public static void assertSame(String message, Object expected, Object actual) {
-        Assert.assertSame(message, expected, actual);
-    }
-
-    public static void assertSame(Object expected, Object actual) {
-        Assert.assertSame(expected, actual);
-    }
-
-    public static void assertNotSame(String message, Object unexpected, Object actual) {
-        Assert.assertNotSame(message, unexpected, actual);
-    }
-
-    public static void assertNotSame(Object unexpected, Object actual) {
-        Assert.assertNotSame(unexpected, actual);
-    }
-
-    protected Object inject(Object testedObject, String memberName, Object member) throws Exception {
-        assertNotNull(testedObject);
-        assertNotNull(memberName);
-        assertNotNull(member);
-
-        Field field = null;
-        for (Class<?> cls = testedObject.getClass(); (cls != null) && (field == null); cls = cls.getSuperclass()) {
-            field = cls.getDeclaredField(memberName);
-        }
-        assertNotNull("Couldn't find member '" + memberName + "' in " + testedObject.getClass().getSimpleName(), field);
-        return inject(testedObject, new FieldData(field, member));
-    }
-
-    protected Object inject(Object testedObject, FieldData fieldData) {
-        assertNotNull(fieldData.field);
-        Field field = fieldData.field;
-        if (fieldData.value != null) {
-            try {
-                field.setAccessible(true);
-                Field modifiersField = Field.class.getDeclaredField("modifiers");
-                modifiersField.setAccessible(true);
-                modifiersField.setInt(field, field.getModifiers() & ~Modifier.FINAL);
-                field.set(testedObject, fieldData.value);
-                return fieldData.value;
-            } catch (Exception e) {
-                LOG.debug("Caught generic exception", e);
-                fail(e.getMessage());
-            }
-        }
-        return null;
-    }
-
-    protected Object injectStatic(Class<?> clazz, String memberName, Object member) throws Exception {
-        assertNotNull(clazz);
-        assertNotNull(memberName);
-        assertNotNull(member);
-
-        Field field = null;
-        for (Class<?> cls = clazz; (cls != null) && (field == null); cls = cls.getSuperclass()) {
-            field = cls.getDeclaredField(memberName);
-        }
-        assertNotNull("Couldn't find member '" + memberName + "' in " + clazz.getSimpleName(), field);
-        return inject(null, new FieldData(field, member));
-    }
-
-    protected static final class FieldData {
-        public final Field field;
-        public Object value;
-
-        public FieldData(Field field, Object value) {
-            assertNotNull(field);
-            this.field = field;
-            this.value = value;
-        }
-    }
-
-    protected abstract class SimpleAction implements Action {
-        public void describeTo(Description arg0) {
-        }
-
-        public abstract Object invoke(Invocation invocation) throws Throwable;
-    }
-
-    protected static ByteBuffer hexToByteBuffer(String hex) {
-        String[] hexBytes = hex.split(" ");
-        ByteBuffer bb = ByteBuffer.allocate(hexBytes.length);
-        for (String hexByte : hexBytes) {
-            bb.put((byte) Integer.parseInt(hexByte, 16));
-        }
-        bb.clear();
-        return bb;
-    }
-
-    protected static void assertHexEquals(short expected, short actual) {
-        assertEquals(String.format("0x%04X", expected), String.format("0x%04X", actual));
-    }
-
-    protected static void assertHexEquals(byte expected, byte actual) {
-        assertEquals(String.format("0x%02X", expected), String.format("0x%02X", actual));
-    }
-}
index 8da094c7c537468d4f73d16c6b18adfad99c9503..978ca0e930640da11d2d791169845b6e937ad017 100644 (file)
       <groupId>${project.groupId}</groupId>
       <artifactId>mappingservice.config</artifactId>
     </dependency>
-    <dependency>
-      <groupId>${project.groupId}</groupId>
-      <artifactId>common.unittest.tools</artifactId>
-    </dependency>
     <dependency>
       <groupId>org.mockito</groupId>
       <artifactId>mockito-core</artifactId>
index cb3a975aafa658204323d0d5f8dc1636a33ff9c1..65e586f8a60171b09f8e8d916844d61b66ebae81 100644 (file)
@@ -42,11 +42,5 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
       <groupId>org.apache.commons</groupId>
       <artifactId>commons-lang3</artifactId>
     </dependency>
-    <dependency>
-      <groupId>org.opendaylight.lispflowmapping</groupId>
-      <artifactId>common.unittest.tools</artifactId>
-      <version>${project.version}</version>
-      <scope>test</scope>
-    </dependency>
   </dependencies>
 </project>
diff --git a/mappingservice/lisp-proto/src/test/java/org/opendaylight/lispflowmapping/TestUtils.java b/mappingservice/lisp-proto/src/test/java/org/opendaylight/lispflowmapping/TestUtils.java
new file mode 100644 (file)
index 0000000..d8d4cf4
--- /dev/null
@@ -0,0 +1,37 @@
+/*
+ * Copyright (c) 2023 PANTHEON.tech s.r.o. All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.opendaylight.lispflowmapping;
+
+import static org.junit.Assert.assertEquals;
+
+import java.nio.ByteBuffer;
+
+public final class TestUtils {
+
+    private TestUtils() {
+        // utility class
+    }
+
+    public static ByteBuffer hexToByteBuffer(String hex) {
+        String[] hexBytes = hex.split(" ");
+        ByteBuffer bb = ByteBuffer.allocate(hexBytes.length);
+        for (String hexByte : hexBytes) {
+            bb.put((byte) Integer.parseInt(hexByte, 16));
+        }
+        bb.clear();
+        return bb;
+    }
+
+    public static void assertHexEquals(short expected, short actual) {
+        assertEquals(String.format("0x%04X", expected), String.format("0x%04X", actual));
+    }
+
+    public static void assertHexEquals(byte expected, byte actual) {
+        assertEquals(String.format("0x%02X", expected), String.format("0x%02X", actual));
+    }
+}
index 7daabcc7bee3f659bd1ec9532bc7befdefeae13f..119ca17ba8167fe297e3065083218ce96b222f00 100644 (file)
@@ -10,6 +10,7 @@ package org.opendaylight.lispflowmapping.lisp.authentication;
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
+import static org.opendaylight.lispflowmapping.TestUtils.hexToByteBuffer;
 
 import java.nio.ByteBuffer;
 import java.util.ArrayList;
@@ -17,7 +18,6 @@ import org.junit.Test;
 import org.opendaylight.lispflowmapping.lisp.serializer.MapNotifySerializer;
 import org.opendaylight.lispflowmapping.lisp.serializer.MapRegisterSerializer;
 import org.opendaylight.lispflowmapping.lisp.util.LispAddressUtil;
-import org.opendaylight.lispflowmapping.tools.junit.BaseTestCase;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.MapRegister;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.locatorrecords.LocatorRecord;
@@ -29,7 +29,7 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.ma
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.mapping.authkey.container.MappingAuthkeyBuilder;
 import org.opendaylight.yangtools.yang.common.Uint16;
 
-public class LispAuthenticationTest extends BaseTestCase {
+public class LispAuthenticationTest {
     private static final String PASSWORD = "password";
     private static final String WRONG_PASSWORD = "wrongPassword";
 
index 33e62c02330e55b6d2f8b00491b057f3acc94346..2f197fb5ea779efd9f1e29d03692abc53f3829b3 100644 (file)
@@ -11,6 +11,8 @@ import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
+import static org.opendaylight.lispflowmapping.TestUtils.assertHexEquals;
+import static org.opendaylight.lispflowmapping.TestUtils.hexToByteBuffer;
 
 import java.nio.ByteBuffer;
 import java.util.ArrayList;
@@ -19,7 +21,6 @@ import org.opendaylight.lispflowmapping.lisp.serializer.MapNotifySerializer;
 import org.opendaylight.lispflowmapping.lisp.serializer.exception.LispSerializationException;
 import org.opendaylight.lispflowmapping.lisp.util.LispAddressUtil;
 import org.opendaylight.lispflowmapping.lisp.util.MaskUtil;
-import org.opendaylight.lispflowmapping.tools.junit.BaseTestCase;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.MapNotify;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.locatorrecords.LocatorRecord;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.mapnotifymessage.MapNotifyBuilder;
@@ -29,7 +30,7 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.ma
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.mapping._record.list.MappingRecordItem;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.mapping._record.list.MappingRecordItemBuilder;
 
-public class MapNotifySerializationTest extends BaseTestCase {
+public class MapNotifySerializationTest {
 
     @Test
     public void serialize__Fields() throws Exception {
index bce35e483e939900562ab30ef56551598b7dd4f0..b1ba5327846dc80d3d11ed0816ef9a351a44612d 100644 (file)
@@ -11,6 +11,8 @@ import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
+import static org.opendaylight.lispflowmapping.TestUtils.assertHexEquals;
+import static org.opendaylight.lispflowmapping.TestUtils.hexToByteBuffer;
 
 import java.nio.ByteBuffer;
 import java.util.ArrayList;
@@ -20,7 +22,6 @@ import org.opendaylight.lispflowmapping.lisp.serializer.MapRegisterSerializer.Le
 import org.opendaylight.lispflowmapping.lisp.serializer.exception.LispSerializationException;
 import org.opendaylight.lispflowmapping.lisp.util.LispAddressUtil;
 import org.opendaylight.lispflowmapping.lisp.util.MaskUtil;
-import org.opendaylight.lispflowmapping.tools.junit.BaseTestCase;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.MapRegister;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.SiteId;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.XtrId;
@@ -32,7 +33,7 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.ma
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.mapping._record.list.MappingRecordItemBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.mapregisternotification.MapRegisterBuilder;
 
-public class MapRegisterSerializationTest extends BaseTestCase {
+public class MapRegisterSerializationTest {
 
     @Test
     public void serialize__Fields() throws Exception {
index 74799536a6f2e9873208b2f7108fd61656dfb713..63fc3b29bbb75fd05c99556014bbb7b155bdb8e7 100644 (file)
@@ -9,6 +9,9 @@ package org.opendaylight.lispflowmapping.serializer;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.fail;
+import static org.opendaylight.lispflowmapping.TestUtils.assertHexEquals;
+import static org.opendaylight.lispflowmapping.TestUtils.hexToByteBuffer;
 
 import java.nio.ByteBuffer;
 import java.util.ArrayList;
@@ -17,7 +20,6 @@ import org.junit.Test;
 import org.opendaylight.lispflowmapping.lisp.serializer.MapReplySerializer;
 import org.opendaylight.lispflowmapping.lisp.util.LispAddressUtil;
 import org.opendaylight.lispflowmapping.lisp.util.MaskUtil;
-import org.opendaylight.lispflowmapping.tools.junit.BaseTestCase;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.binary.address.types.rev160504.augmented.lisp.address.address.Ipv4Binary;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.binary.address.types.rev160504.augmented.lisp.address.address.Ipv4PrefixBinary;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.binary.address.types.rev160504.augmented.lisp.address.address.Ipv6Binary;
@@ -31,7 +33,7 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.ma
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.mapreplymessage.MapReplyBuilder;
 import org.opendaylight.yangtools.yang.common.Uint8;
 
-public class MapReplySerializationTest extends BaseTestCase {
+public class MapReplySerializationTest {
 
     @Test
     @Ignore
index fce1ed52b60048c1882ee75fab9bfb3d2ee447e3..8b4df15077f5b3a3eb4b0d295521f27c58296af4 100644 (file)
@@ -11,6 +11,7 @@ import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
+import static org.opendaylight.lispflowmapping.TestUtils.hexToByteBuffer;
 
 import java.nio.ByteBuffer;
 import java.util.ArrayList;
@@ -18,7 +19,6 @@ import org.junit.Test;
 import org.opendaylight.lispflowmapping.lisp.serializer.MapRequestSerializer;
 import org.opendaylight.lispflowmapping.lisp.util.LispAddressUtil;
 import org.opendaylight.lispflowmapping.lisp.util.MaskUtil;
-import org.opendaylight.lispflowmapping.tools.junit.BaseTestCase;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.NoAddressAfi;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.binary.address.types.rev160504.augmented.lisp.address.address.Ipv4Binary;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.binary.address.types.rev160504.augmented.lisp.address.address.Ipv6Binary;
@@ -36,7 +36,7 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.ma
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.maprequest.SourceEidBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.maprequestnotification.MapRequestBuilder;
 
-public class MapRequestSerializationTest extends BaseTestCase {
+public class MapRequestSerializationTest {
 
     @Test
     public void prefix__NoPrefix() throws Exception {
index ef37d3866972e38c3257a2002dbb6fd4db983cf5..ab3a48fbe8cba66ac26e14a0c40396367665b31f 100644 (file)
@@ -10,6 +10,7 @@ package org.opendaylight.lispflowmapping.serializer.address;
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotEquals;
+import static org.opendaylight.lispflowmapping.TestUtils.hexToByteBuffer;
 
 import com.google.common.collect.ImmutableSet;
 import java.nio.ByteBuffer;
@@ -18,7 +19,6 @@ import java.util.Set;
 import org.junit.Test;
 import org.opendaylight.lispflowmapping.lisp.serializer.address.LispAddressSerializer;
 import org.opendaylight.lispflowmapping.lisp.serializer.exception.LispSerializationException;
-import org.opendaylight.lispflowmapping.tools.junit.BaseTestCase;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.AfiListLcaf;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.SimpleAddress;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.SimpleAddressBuilder;
@@ -27,7 +27,7 @@ import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.addres
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.rloc.container.Rloc;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.rloc.container.RlocBuilder;
 
-public class AfiListSerializerTest extends BaseTestCase {
+public class AfiListSerializerTest {
 
     @Test
     public void deserialize__Simple() throws Exception {
index c22ff7a32172c1efad62426f5ca0f089cfd1a88c..13469f63f432de32d34c0db101fc940c6d8706f8 100644 (file)
@@ -9,13 +9,13 @@ package org.opendaylight.lispflowmapping.serializer.address;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
+import static org.opendaylight.lispflowmapping.TestUtils.hexToByteBuffer;
 
 import java.nio.ByteBuffer;
 import org.junit.Test;
 import org.opendaylight.lispflowmapping.lisp.serializer.address.LispAddressSerializer;
 import org.opendaylight.lispflowmapping.lisp.serializer.exception.LispSerializationException;
 import org.opendaylight.lispflowmapping.lisp.util.ByteUtil;
-import org.opendaylight.lispflowmapping.tools.junit.BaseTestCase;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.IpAddress;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Ipv4Address;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.PortNumber;
@@ -28,7 +28,7 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.ei
 import org.opendaylight.yangtools.yang.common.Uint16;
 import org.opendaylight.yangtools.yang.common.Uint8;
 
-public class ApplicationDataSerializerTest extends BaseTestCase {
+public class ApplicationDataSerializerTest {
 
     @Test
     public void deserialize__Simple() throws Exception {
index d8bb2dec72c67e32f12aa64101b5aec181e52f2d..b793f9bbad490e2149037f50563414e3d52a1f0f 100644 (file)
@@ -9,12 +9,12 @@ package org.opendaylight.lispflowmapping.serializer.address;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
+import static org.opendaylight.lispflowmapping.TestUtils.hexToByteBuffer;
 
 import java.nio.ByteBuffer;
 import org.junit.Test;
 import org.opendaylight.lispflowmapping.lisp.serializer.address.LispAddressSerializer;
 import org.opendaylight.lispflowmapping.lisp.serializer.exception.LispSerializationException;
-import org.opendaylight.lispflowmapping.tools.junit.BaseTestCase;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.AfiListLcaf;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.DistinguishedNameAfi;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.DistinguishedNameType;
@@ -24,7 +24,7 @@ import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.addres
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.EidBuilder;
 
-public class DistinguishedNameSerializerTest extends BaseTestCase {
+public class DistinguishedNameSerializerTest {
 
     @Test
     public void deserialize__EmptyString() throws Exception {
index a9b1db0bbc657273eda48050933aedde0d39b66a..995c5fef77de41809843c73a9e06c4507f8ee393 100644 (file)
@@ -10,7 +10,9 @@ package org.opendaylight.lispflowmapping.serializer.address;
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNull;
 import static org.junit.Assert.assertTrue;
+import static org.opendaylight.lispflowmapping.TestUtils.hexToByteBuffer;
 
 import java.nio.ByteBuffer;
 import java.util.ArrayList;
@@ -18,7 +20,6 @@ import java.util.List;
 import org.junit.Test;
 import org.opendaylight.lispflowmapping.lisp.serializer.address.LispAddressSerializer;
 import org.opendaylight.lispflowmapping.lisp.serializer.exception.LispSerializationException;
-import org.opendaylight.lispflowmapping.tools.junit.BaseTestCase;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.ExplicitLocatorPathLcaf;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.SimpleAddressBuilder;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.lisp.address.address.ExplicitLocatorPath;
@@ -28,7 +29,7 @@ import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.addres
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.rloc.container.Rloc;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.rloc.container.RlocBuilder;
 
-public class ExplicitLocatorPathSerializerTest extends BaseTestCase {
+public class ExplicitLocatorPathSerializerTest {
 
     @Test
     public void deserialize__Simple() throws Exception {
index f910a38ae7839dabf51a4a3d785d390a520a0383..cc725419a98d5f153d465a36d65bc74571b04854 100644 (file)
@@ -9,6 +9,7 @@ package org.opendaylight.lispflowmapping.serializer.address;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
+import static org.opendaylight.lispflowmapping.TestUtils.hexToByteBuffer;
 
 import java.nio.ByteBuffer;
 import org.junit.Test;
@@ -16,13 +17,12 @@ import org.opendaylight.lispflowmapping.lisp.serializer.address.LispAddressSeria
 import org.opendaylight.lispflowmapping.lisp.serializer.address.LispAddressSerializerContext;
 import org.opendaylight.lispflowmapping.lisp.serializer.exception.LispSerializationException;
 import org.opendaylight.lispflowmapping.lisp.util.LispAddressUtil;
-import org.opendaylight.lispflowmapping.tools.junit.BaseTestCase;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.binary.address.types.rev160504.Ipv4BinaryAfi;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.binary.address.types.rev160504.augmented.lisp.address.address.Ipv4Binary;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.binary.address.types.rev160504.augmented.lisp.address.address.Ipv6Binary;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid;
 
-public class InstanceIdSerializerTest extends BaseTestCase {
+public class InstanceIdSerializerTest {
 
     @Test
     public void deserialize__Simple() throws Exception {
index 8296a264e46b2380c3f43ef411b05eec84cb4e35..4345be56027f57717e51b68bdbde217a48257182 100644 (file)
@@ -13,12 +13,11 @@ import static org.junit.Assert.assertEquals;
 import org.junit.Test;
 import org.opendaylight.lispflowmapping.lisp.serializer.address.LispAddressSerializer;
 import org.opendaylight.lispflowmapping.lisp.util.LispAddressUtil;
-import org.opendaylight.lispflowmapping.tools.junit.BaseTestCase;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.binary.address.types.rev160504.Ipv6BinaryAfi;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.binary.address.types.rev160504.augmented.lisp.address.address.Ipv6Binary;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.rloc.container.Rloc;
 
-public class Ipv6SerializerTest extends BaseTestCase {
+public class Ipv6SerializerTest {
 
     @Test
     public void constructor__Name() throws Exception {
index 63705aec749acb4c7c700135086665b5fd4dbd4b..d337f34e26cf5cd6b3e39a556ef47b2be2c79c12 100644 (file)
@@ -9,12 +9,12 @@ package org.opendaylight.lispflowmapping.serializer.address;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
+import static org.opendaylight.lispflowmapping.TestUtils.hexToByteBuffer;
 
 import java.nio.ByteBuffer;
 import org.junit.Test;
 import org.opendaylight.lispflowmapping.lisp.serializer.address.LispAddressSerializer;
 import org.opendaylight.lispflowmapping.lisp.serializer.exception.LispSerializationException;
-import org.opendaylight.lispflowmapping.tools.junit.BaseTestCase;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.IpAddress;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Ipv4Address;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.KeyValueAddressLcaf;
@@ -24,7 +24,7 @@ import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.addres
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.EidBuilder;
 
-public class KeyValueAddressSerializerTest extends BaseTestCase {
+public class KeyValueAddressSerializerTest {
 
     @Test
     public void deserialize__Simple() throws Exception {
index 6b7ee18172093ca04c620790199e807fff050dc4..ce449b8dc889d20980695483b1018201ff7e6fb9 100644 (file)
@@ -9,6 +9,7 @@ package org.opendaylight.lispflowmapping.serializer.address;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
+import static org.opendaylight.lispflowmapping.TestUtils.hexToByteBuffer;
 
 import java.nio.ByteBuffer;
 import org.junit.Test;
@@ -16,7 +17,6 @@ import org.opendaylight.lispflowmapping.lisp.serializer.address.LispAddressSeria
 import org.opendaylight.lispflowmapping.lisp.serializer.address.LispAddressSerializerContext;
 import org.opendaylight.lispflowmapping.lisp.util.ByteUtil;
 import org.opendaylight.lispflowmapping.lisp.util.LispAddressUtil;
-import org.opendaylight.lispflowmapping.tools.junit.BaseTestCase;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.ServicePathLcaf;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.lisp.address.address.ServicePath;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid;
@@ -26,7 +26,7 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.ei
  *
  * @author Lorand Jakab
  */
-public class ServicePathTest extends BaseTestCase {
+public class ServicePathTest {
 
     @Test
     public void deserialize__Simple() throws Exception {
index 7564dab457873cbdbfaa995af701970c53f3d3ac..96870ddb29c9e7bb29fe5a02f3f4555282e8c7fc 100644 (file)
@@ -9,6 +9,7 @@ package org.opendaylight.lispflowmapping.serializer.address;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
+import static org.opendaylight.lispflowmapping.TestUtils.hexToByteBuffer;
 
 import java.nio.ByteBuffer;
 import org.junit.Test;
@@ -16,7 +17,6 @@ import org.opendaylight.lispflowmapping.lisp.serializer.address.LispAddressSeria
 import org.opendaylight.lispflowmapping.lisp.serializer.address.LispAddressSerializerContext;
 import org.opendaylight.lispflowmapping.lisp.serializer.exception.LispSerializationException;
 import org.opendaylight.lispflowmapping.lisp.util.MaskUtil;
-import org.opendaylight.lispflowmapping.tools.junit.BaseTestCase;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.IpPrefix;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Ipv4Prefix;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.SimpleAddress;
@@ -26,7 +26,7 @@ import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.addres
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.EidBuilder;
 
-public class SourceDestKeySerializerTest extends BaseTestCase {
+public class SourceDestKeySerializerTest {
 
     @Test
     public void deserialize__Simple() throws Exception {
index 31c75f82678bfed847978c6cf60ef674e316cf4c..9d7c0d53838aa05d3f6a3137ff20c55e90e9f3f2 100644 (file)
         <type>pom</type>
         <scope>import</scope>
       </dependency>
-      <dependency>
-        <groupId>${project.groupId}</groupId>
-        <artifactId>common.unittest.tools</artifactId>
-        <version>${project.version}</version>
-        <scope>test</scope>
-      </dependency>
     </dependencies>
   </dependencyManagement>
 
index ec3293539bbfc6695e719e9a59b4fa2f367c6f2e..fed7e3ee3b3fdcc6804c76bbb3b46b5de5545315 100644 (file)
@@ -16,8 +16,6 @@
 
   <properties>
     <odlparent.spotbugs.enforce>false</odlparent.spotbugs.enforce>
-    <!-- FIXME: needed to get cglib working -->
-    <jacoco.version>0.8.8</jacoco.version>
   </properties>
 
   <dependencies>
       <artifactId>netty-transport-native-epoll</artifactId>
       <classifier>linux-x86_64</classifier>
     </dependency>
-    <dependency>
-      <groupId>org.opendaylight.lispflowmapping</groupId>
-      <artifactId>common.unittest.tools</artifactId>
-    </dependency>
     <dependency>
       <groupId>org.mockito</groupId>
       <artifactId>mockito-core</artifactId>
index 9c66d731211ea78e101e3e0691c12c967b3a4455..e3f4f5e71864705c9ce793400a56ab506db6a205 100644 (file)
@@ -12,6 +12,7 @@ import static io.netty.buffer.Unpooled.wrappedBuffer;
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNull;
 import static org.junit.Assert.assertTrue;
 import static org.opendaylight.lispflowmapping.southbound.lisp.MapRegisterCacheTestUtil.DATA1;
 import static org.opendaylight.lispflowmapping.southbound.lisp.MapRegisterCacheTestUtil.DATA2;
@@ -35,11 +36,14 @@ import org.junit.Before;
 import org.junit.BeforeClass;
 import org.junit.Ignore;
 import org.junit.Test;
+import org.junit.runner.RunWith;
 import org.mockito.AdditionalMatchers;
 import org.mockito.ArgumentCaptor;
 import org.mockito.ArgumentMatchers;
 import org.mockito.InOrder;
+import org.mockito.Mock;
 import org.mockito.Mockito;
+import org.mockito.junit.MockitoJUnitRunner;
 import org.opendaylight.lispflowmapping.lisp.serializer.MapNotifySerializer;
 import org.opendaylight.lispflowmapping.lisp.serializer.MapReplySerializer;
 import org.opendaylight.lispflowmapping.lisp.type.LispMessage;
@@ -51,8 +55,6 @@ import org.opendaylight.lispflowmapping.southbound.ConcurrentLispSouthboundStats
 import org.opendaylight.lispflowmapping.southbound.LispSouthboundPlugin;
 import org.opendaylight.lispflowmapping.southbound.lisp.cache.MapRegisterCache;
 import org.opendaylight.lispflowmapping.southbound.lisp.exception.LispMalformedPacketException;
-import org.opendaylight.lispflowmapping.tools.junit.BaseTestCase;
-import org.opendaylight.mdsal.binding.api.DataBroker;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.iana.afn.safi.rev130704.AddressFamily;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.InstanceIdType;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.binary.address.types.rev160504.Ipv4BinaryAfi;
@@ -78,11 +80,11 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.ma
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.mapping._record.list.MappingRecordItemBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.mapping.authkey.container.MappingAuthkeyBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.mapreplymessage.MapReplyBuilder;
-import org.opendaylight.yangtools.yang.binding.Notification;
 import org.opendaylight.yangtools.yang.common.Uint16;
 import org.opendaylight.yangtools.yang.common.Uint32;
 
-public class LispSouthboundHandlerTest extends BaseTestCase {
+@RunWith(MockitoJUnitRunner.class)
+public class LispSouthboundHandlerTest {
 
     private LispSouthboundHandler testedLispService;
     private byte[] mapRequestPacket;
@@ -91,8 +93,8 @@ public class LispSouthboundHandlerTest extends BaseTestCase {
     private MapReplyBuilder mapReplyBuilder;
     private MappingRecordBuilder mappingRecordBuilder;
     private MapRegisterCache mapRegisterCache;
+    @Mock
     private LispSouthboundPlugin mockLispSouthboundPlugin;
-    private LispSouthboundPlugin contextMockLispSouthboundPlugin;
     private static final long CACHE_RECORD_TIMEOUT = 90000;
 
     private static AuthKeyDb akdb;
@@ -146,17 +148,13 @@ public class LispSouthboundHandlerTest extends BaseTestCase {
         Mockito.when(akdl.authKeysForEidsUnchanged(Mockito.anyMap(), Mockito.anyLong())).thenReturn(true);
     }
 
-    @Override
+
     @Before
     public void before() throws Exception {
-        super.before();
-        mockLispSouthboundPlugin = Mockito.mock(LispSouthboundPlugin.class);
-        contextMockLispSouthboundPlugin = context.mock(LispSouthboundPlugin.class);
         Mockito.when(mockLispSouthboundPlugin.isMapRegisterCacheEnabled()).thenReturn(true);
         Mockito.when(mockLispSouthboundPlugin.getMapRegisterCacheTimeout()).thenReturn(CACHE_RECORD_TIMEOUT);
         mapRegisterCache = new MapRegisterCache();
         Mockito.when(mockLispSouthboundPlugin.getMapRegisterCache()).thenReturn(mapRegisterCache);
-        Mockito.when(mockLispSouthboundPlugin.getDataBroker()).thenReturn(Mockito.mock(DataBroker.class));
         Mockito.when(mockLispSouthboundPlugin.getAkdb()).thenReturn(akdb);
         Mockito.when(mockLispSouthboundPlugin.getAuthenticationKeyDataListener()).thenReturn(akdl);
         ConcurrentLispSouthboundStats lispSouthboundStats = new ConcurrentLispSouthboundStats();
@@ -820,8 +818,6 @@ public class LispSouthboundHandlerTest extends BaseTestCase {
         mappingRecordBuilder.setEid(LispAddressUtil.asIpv4PrefixEid("10.0.20.200/32"));
         mapReplyBuilder.setNonce(0x3d8d2acd39c8d608L);
 
-        stubHandleRequest();
-
         byte[] result = handleMapRequestAsByteArray(mapRequestPacket);
 
         assertEquals(28, result.length);
@@ -844,8 +840,6 @@ public class LispSouthboundHandlerTest extends BaseTestCase {
     public void mapReply_q_VerifyBasicIPv6() throws Exception {
         mappingRecordBuilder.setEid(LispAddressUtil.asIpv6PrefixEid("0:0:0:0:0:0:0:1/128"));
 
-        stubHandleRequest();
-
         byte[] result = handleMapRequestAsByteArray(mapRequestPacket);
 
         assertEquals(40, result.length);
@@ -868,8 +862,6 @@ public class LispSouthboundHandlerTest extends BaseTestCase {
         mappingRecordBuilder.getLocatorRecord().add(
                 new LocatorRecordBuilder().setRloc(LispAddressUtil.asIpv6Rloc("0:0:0:0:0:0:0:2")).build());
 
-        stubHandleRequest();
-
         byte[] result = handleMapRequestAsByteArray(mapRequestPacket);
 
         assertEquals(64, result.length);
@@ -884,8 +876,6 @@ public class LispSouthboundHandlerTest extends BaseTestCase {
     @Ignore
     @Test
     public void mapReply__UseEncapsulatedUdpPort() throws Exception {
-        stubHandleRequest();
-
         assertEquals(LispMessage.PORT_NUM, handleMapRequestPacket(mapRequestPacket).recipient().getPort());
     }
 
@@ -895,7 +885,6 @@ public class LispSouthboundHandlerTest extends BaseTestCase {
         mappingRecordBuilder.setEid(LispAddressUtil.asIpv4PrefixEid("10.0.20.200/32"));
         mappingRecordBuilder.getLocatorRecord().add(
                 new LocatorRecordBuilder().setRouted(false).setRloc(LispAddressUtil.asIpv4Rloc("4.3.2.1")).build());
-        stubHandleRequest();
 
         byte[] result = handleMapRequestAsByteArray(mapRequestPacket);
         assertEquals(0x00, result[MapReplyIpv4SingleLocatorPos.LOCATOR_RBIT] & 0x01);
@@ -907,7 +896,6 @@ public class LispSouthboundHandlerTest extends BaseTestCase {
         mappingRecordBuilder.setEid(LispAddressUtil.asIpv4PrefixEid("10.0.20.200/32"));
         mappingRecordBuilder.getLocatorRecord().add(
                 new LocatorRecordBuilder().setRouted(true).setRloc(LispAddressUtil.asIpv4Rloc("4.3.2.1")).build());
-        stubHandleRequest();
 
         byte[] result = handleMapRequestAsByteArray(mapRequestPacket);
         assertEquals(40, result.length);
@@ -929,7 +917,6 @@ public class LispSouthboundHandlerTest extends BaseTestCase {
         mappingRecordBuilder.getLocatorRecord().add(
                 new LocatorRecordBuilder().setRouted(true).setRloc(LispAddressUtil.asIpv6Rloc("0:0:0:0:0:0:0:1"))
                 .build());
-        stubHandleRequest();
 
         byte[] result = handleMapRequestAsByteArray(mapRequestPacket);
         assertEquals(64, result.length);
@@ -989,14 +976,6 @@ public class LispSouthboundHandlerTest extends BaseTestCase {
         Mockito.verify(mockLispSouthboundPlugin).sendNotificationIfPossible(Mockito.any(RequestMapping.class));
     }
 
-    private void stubHandleRequest() {
-        try {
-            allowing(contextMockLispSouthboundPlugin).sendNotificationIfPossible(wany(Notification.class));
-        } catch (InterruptedException e) {
-            LOG.debug("Interrupted", e);
-        }
-    }
-
     private byte[] handleMapRequestAsByteArray(byte[] inPacket) {
         handleMapRequestPacket(inPacket);
         return lastMapReplyPacket().content().array();
@@ -1038,7 +1017,7 @@ public class LispSouthboundHandlerTest extends BaseTestCase {
         return null;
     }
 
-    private byte[] extractWSUdpByteArray(String wiresharkHex) {
+    private static byte[] extractWSUdpByteArray(String wiresharkHex) {
         final int headerLen = 42;
         byte[] res = new byte[1000];
         String[] split = wiresharkHex.split(" ");
@@ -1056,6 +1035,20 @@ public class LispSouthboundHandlerTest extends BaseTestCase {
         return Arrays.copyOf(res, counter - headerLen);
     }
 
+    private static ByteBuffer hexToByteBuffer(String hex) {
+        String[] hexBytes = hex.split(" ");
+        ByteBuffer bb = ByteBuffer.allocate(hexBytes.length);
+        for (String hexByte : hexBytes) {
+            bb.put((byte) Integer.parseInt(hexByte, 16));
+        }
+        bb.clear();
+        return bb;
+    }
+
+    private static void assertHexEquals(byte expected, byte actual) {
+        assertEquals(String.format("0x%02X", expected), String.format("0x%02X", actual));
+    }
+
     @Test(expected = LispMalformedPacketException.class)
     public void mapRequest__NoIpItrRloc() throws Exception {
         mapRequestPacket = hexToByteBuffer("10 00 "
diff --git a/pom.xml b/pom.xml
index 8782aa2ecff1a48344522c968e4dff5194051bf6..c9a0c5a1e2a1dfff3179548456cb69de4977d327 100644 (file)
--- a/pom.xml
+++ b/pom.xml
@@ -17,7 +17,6 @@
   <modules>
     <module>commons/parent</module>
     <module>commons/build_tools</module>
-    <module>commons/unittest_tools</module>
     <module>artifacts</module>
     <module>mappingservice</module>
     <module>features</module>