package org.opendaylight.controller.netconf.confignetconfconnector.osgi;
+import static org.junit.Assert.fail;
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.mock;
+
import com.google.common.collect.Maps;
import com.google.common.collect.Sets;
+import java.net.URI;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.Map;
+import java.util.Set;
import org.junit.Assert;
import org.junit.Test;
-import org.junit.matchers.JUnitMatchers;
+import org.hamcrest.CoreMatchers;
import org.opendaylight.controller.config.api.LookupRegistry;
-import org.opendaylight.controller.config.yang.store.api.YangStoreSnapshot;
import org.opendaylight.controller.config.yangjmxgenerator.ModuleMXBeanEntry;
import org.opendaylight.yangtools.yang.common.QName;
-import java.net.URI;
-import java.util.Date;
-import java.util.Map;
-import java.util.Set;
-
-import static org.mockito.Mockito.doReturn;
-import static org.mockito.Mockito.mock;
-
public class NetconfOperationServiceImplTest {
- private Date date = new Date(0);
+ private static final Date date1970_01_01;
+
+ static {
+ try {
+ date1970_01_01 = new SimpleDateFormat("yyyy-MM-dd").parse("1970-01-01");
+ } catch (ParseException e) {
+ throw new IllegalStateException(e);
+ }
+ }
@Test
public void testCheckConsistencyBetweenYangStoreAndConfig_ok() throws Exception {
mockYangStoreSnapshot());
}
- @Test(expected = IllegalStateException.class)
+ @Test
public void testCheckConsistencyBetweenYangStoreAndConfig_yangStoreMore() throws Exception {
try {
NetconfOperationServiceImpl.checkConsistencyBetweenYangStoreAndConfig(mockJmxClient("qname1"),
mockYangStoreSnapshot("qname2", "qname1"));
+ fail("An exception of type " + IllegalStateException.class + " was expected");
} catch (IllegalStateException e) {
String message = e.getMessage();
Assert.assertThat(
message,
- JUnitMatchers
- .containsString(" missing from config subsystem but present in yangstore: [(namespace?revision=1970-01-01)qname2]"));
+ CoreMatchers
+ .containsString("missing from config subsystem but present in yangstore: [(namespace?revision=1970-01-01)qname2]"));
Assert.assertThat(
message,
- JUnitMatchers
- .containsString("All modules present in config: [(namespace?revision=1970-01-01)qname1]"));
- throw e;
+ CoreMatchers
+ .containsString("All modules present in config: [(namespace?revision=1970-01-01)qname1]"));
}
}
- private YangStoreSnapshot mockYangStoreSnapshot(String... qnames) {
+ private YangStoreSnapshot mockYangStoreSnapshot(final String... qnames) {
YangStoreSnapshot mock = mock(YangStoreSnapshot.class);
Map<String, Map<String, ModuleMXBeanEntry>> map = Maps.newHashMap();
return mock;
}
- private ModuleMXBeanEntry mockMBeanEntry(String qname) {
+ private ModuleMXBeanEntry mockMBeanEntry(final String qname) {
ModuleMXBeanEntry mock = mock(ModuleMXBeanEntry.class);
QName q = getQName(qname);
doReturn(q).when(mock).getYangModuleQName();
return mock;
}
- private QName getQName(String qname) {
- return new QName(URI.create("namespace"), date, qname);
+ private QName getQName(final String qname) {
+ return QName.create(URI.create("namespace"), date1970_01_01, qname);
}
- private LookupRegistry mockJmxClient(String... visibleQNames) {
+ private LookupRegistry mockJmxClient(final String... visibleQNames) {
LookupRegistry mock = mock(LookupRegistry.class);
Set<String> qnames = Sets.newHashSet();
for (String visibleQName : visibleQNames) {