diff options
author | Maros Marsalek <mmarsale@cisco.com> | 2016-05-18 15:05:51 +0200 |
---|---|---|
committer | Maros Marsalek <mmarsale@cisco.com> | 2016-05-24 08:36:34 +0000 |
commit | ee1202f9cb83b2b9bcf6ae3f8704bbf0f39b77a5 (patch) | |
tree | d3bcb31ef2138c90445199b3709802206c5e2cdc /v3po/data-impl/src/test | |
parent | 5e1e4256dbd294cf2ccc3b0ad2435b403a420214 (diff) |
HONEYCOMB-61: Restore configuration and context from persisted files
Change-Id: I6edce127f8895f5d65998b4be71a0a111ca2e8bb
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
Diffstat (limited to 'v3po/data-impl/src/test')
3 files changed, 0 insertions, 89 deletions
diff --git a/v3po/data-impl/src/test/java/io/fd/honeycomb/v3po/data/impl/PersistingDataTreeAdapterTest.java b/v3po/data-impl/src/test/java/io/fd/honeycomb/v3po/data/impl/PersistingDataTreeAdapterTest.java index 986d7cfb1..523d9dd70 100644 --- a/v3po/data-impl/src/test/java/io/fd/honeycomb/v3po/data/impl/PersistingDataTreeAdapterTest.java +++ b/v3po/data-impl/src/test/java/io/fd/honeycomb/v3po/data/impl/PersistingDataTreeAdapterTest.java @@ -16,17 +16,12 @@ package io.fd.honeycomb.v3po.data.impl; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertFalse; -import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; import static org.mockito.Matchers.any; -import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.doThrow; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; -import com.google.common.io.ByteStreams; import java.nio.file.Files; import java.nio.file.Path; import org.junit.Before; @@ -34,28 +29,12 @@ import org.junit.Test; import org.mockito.Mock; import org.mockito.MockitoAnnotations; import org.opendaylight.controller.sal.core.api.model.SchemaService; -import org.opendaylight.yangtools.yang.common.QName; -import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; -import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTree; import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate; import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeSnapshot; -import org.opendaylight.yangtools.yang.data.impl.schema.Builders; -import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes; -import org.opendaylight.yangtools.yang.parser.stmt.reactor.CrossSourceStatementReactor; -import org.opendaylight.yangtools.yang.parser.stmt.rfc6020.YangInferencePipeline; -import org.opendaylight.yangtools.yang.parser.stmt.rfc6020.YangStatementSourceImpl; -import org.opendaylight.yangtools.yang.parser.stmt.rfc6020.effective.EffectiveSchemaContext; public class PersistingDataTreeAdapterTest { - public static final String NAMESPACE = "urn:opendaylight:params:xml:ns:yang:test:persistence"; - - // The root QNAME can be anything, onyl its children are iterated - private static final QName ROOT_QNAME = QName.create("random", "data"); - private static final QName TOP_CONTAINER_NAME = QName.create(NAMESPACE, "2015-01-05", "top-container"); - private static final QName STRING_LEAF_QNAME = QName.create(TOP_CONTAINER_NAME, "string"); - @Mock private DataTree delegatingDataTree; @Mock @@ -71,47 +50,10 @@ public class PersistingDataTreeAdapterTest { public void setUp() throws Exception { MockitoAnnotations.initMocks(this); tmpPersistFile = Files.createTempFile("testing-hc-persistence", "json"); - - // Build test yang schemas - final CrossSourceStatementReactor.BuildAction buildAction = YangInferencePipeline.RFC6020_REACTOR.newBuild(); - buildAction.addSource(new YangStatementSourceImpl(getClass().getResourceAsStream("/test-persistence.yang"))); - final EffectiveSchemaContext effectiveSchemaContext = buildAction.buildEffective(); - doReturn(effectiveSchemaContext).when(schemaService).getGlobalContext(); - persistingDataTreeAdapter = new PersistingDataTreeAdapter(delegatingDataTree, schemaService, tmpPersistFile); } @Test - public void testPersist() throws Exception { - doReturn(snapshot).when(delegatingDataTree).takeSnapshot(); - - NormalizedNode<?, ?> data = getData("testing"); - doReturn(com.google.common.base.Optional.of(data)).when(snapshot).readNode(YangInstanceIdentifier.EMPTY); - persistingDataTreeAdapter.commit(null); - assertTrue(Files.exists(tmpPersistFile)); - - String persisted = new String(Files.readAllBytes(tmpPersistFile)); - String expected = - new String(ByteStreams.toByteArray(getClass().getResourceAsStream("/expected-persisted-output.txt"))); - - assertEquals(expected, persisted); - - data = getData("testing2"); - doReturn(com.google.common.base.Optional.of(data)).when(snapshot).readNode(YangInstanceIdentifier.EMPTY); - persistingDataTreeAdapter.commit(null); - - verify(delegatingDataTree, times(2)).commit(null); - - persisted = new String(Files.readAllBytes(tmpPersistFile)); - assertEquals(expected.replace("testing", "testing2"), persisted); - - persistingDataTreeAdapter.close(); - - // File has to stay even after close - assertTrue(Files.exists(tmpPersistFile)); - } - - @Test public void testNoPersistOnFailure() throws Exception { doThrow(new IllegalStateException("testing errors")).when(delegatingDataTree).commit(any(DataTreeCandidate.class)); @@ -119,19 +61,9 @@ public class PersistingDataTreeAdapterTest { persistingDataTreeAdapter.commit(null); fail("Exception expected"); } catch (IllegalStateException e) { - assertFalse(Files.exists(tmpPersistFile)); verify(delegatingDataTree, times(0)).takeSnapshot(); verify(delegatingDataTree).commit(any(DataTreeCandidate.class)); } } - private NormalizedNode<?, ?> getData(final String stringValue) { - return Builders.containerBuilder() - .withNodeIdentifier(new YangInstanceIdentifier.NodeIdentifier(ROOT_QNAME)) - .withChild(Builders.containerBuilder() - .withNodeIdentifier(new YangInstanceIdentifier.NodeIdentifier(TOP_CONTAINER_NAME)) - .withChild(ImmutableNodes.leafNode(STRING_LEAF_QNAME, stringValue)) - .build()) - .build(); - } }
\ No newline at end of file diff --git a/v3po/data-impl/src/test/resources/expected-persisted-output.txt b/v3po/data-impl/src/test/resources/expected-persisted-output.txt deleted file mode 100644 index fb21d61e8..000000000 --- a/v3po/data-impl/src/test/resources/expected-persisted-output.txt +++ /dev/null @@ -1,5 +0,0 @@ -{ - "test-persistence:top-container": { - "string": "testing" - } -}
\ No newline at end of file diff --git a/v3po/data-impl/src/test/resources/test-persistence.yang b/v3po/data-impl/src/test/resources/test-persistence.yang deleted file mode 100644 index b7dbbb1bc..000000000 --- a/v3po/data-impl/src/test/resources/test-persistence.yang +++ /dev/null @@ -1,16 +0,0 @@ -module test-persistence { - yang-version 1; - namespace "urn:opendaylight:params:xml:ns:yang:test:persistence"; - prefix "tp"; - - revision "2015-01-05" { - description "Initial revision"; - } - - container top-container { - leaf string { - type string; - } - } - -} |