From ce597c19c2df8169449bd74376a5bf1082e75bb6 Mon Sep 17 00:00:00 2001 From: Oleg Mitsura Date: Wed, 10 Apr 2019 15:37:00 -0400 Subject: netconf-executor: RpcMessageUtilsTest improvement Issue-ID: CCSDK-1126 Change-Id: I245661bb6ca1afa6aece98c83a1758a7a6f93621 Signed-off-by: Oleg Mitsura --- .../netconf/executor/utils/NetconfMessageUtils.kt | 2 +- .../netconf/executor/utils/RpcMessageUtilsTest.kt | 36 +++++++++++++++++++--- 2 files changed, 33 insertions(+), 5 deletions(-) diff --git a/ms/blueprintsprocessor/functions/netconf-executor/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/netconf/executor/utils/NetconfMessageUtils.kt b/ms/blueprintsprocessor/functions/netconf-executor/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/netconf/executor/utils/NetconfMessageUtils.kt index 1ffc9a68c..bb5cdb0b5 100644 --- a/ms/blueprintsprocessor/functions/netconf-executor/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/netconf/executor/utils/NetconfMessageUtils.kt +++ b/ms/blueprintsprocessor/functions/netconf-executor/src/main/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/netconf/executor/utils/NetconfMessageUtils.kt @@ -396,7 +396,7 @@ class NetconfMessageUtils { fun checkReply(reply: String?): Boolean { return if (reply != null) { - !reply.contains("rpc-error>") || reply.contains("warning") || reply.contains("ok/>") + !reply.contains("rpc-error>") || reply.contains("ok/>") } else false } } diff --git a/ms/blueprintsprocessor/functions/netconf-executor/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/netconf/executor/utils/RpcMessageUtilsTest.kt b/ms/blueprintsprocessor/functions/netconf-executor/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/netconf/executor/utils/RpcMessageUtilsTest.kt index a4ef4410a..ffbf7306c 100644 --- a/ms/blueprintsprocessor/functions/netconf-executor/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/netconf/executor/utils/RpcMessageUtilsTest.kt +++ b/ms/blueprintsprocessor/functions/netconf-executor/src/test/kotlin/org/onap/ccsdk/cds/blueprintsprocessor/functions/netconf/executor/utils/RpcMessageUtilsTest.kt @@ -17,8 +17,11 @@ package org.onap.ccsdk.cds.blueprintsprocessor.functions.netconf.executor.utils import org.junit.Assert import org.junit.Assert.assertTrue +import org.junit.Ignore import org.junit.Test import org.onap.ccsdk.cds.blueprintsprocessor.functions.netconf.executor.api.NetconfException +import kotlin.test.assertFailsWith +import kotlin.test.assertFalse import kotlin.test.fail class RpcMessageUtilsTest { @@ -213,6 +216,15 @@ class RpcMessageUtilsTest { Assert.assertEquals(checkString, result) } + @Test + fun deleteConfigThrowsNetconfExceptionOnRunningDataStore() { + assertFailsWith(exceptionClass = NetconfException::class) { + val netconfTargetConfig = NetconfDatastore.RUNNING.datastore + val msgId = "35" + NetconfMessageUtils.deleteConfig(msgId, netconfTargetConfig) + } + } + @Test fun discardChanges() { val checkString = ("" @@ -277,10 +289,20 @@ class RpcMessageUtilsTest { } @Test - fun checkReply(){ + fun `checkReply should return true on ok msg`() { assertTrue(NetconfMessageUtils.checkReply("ok")) } + @Test + fun `checkReply on rpc-error should return false`() { + assertFalse { NetconfMessageUtils.checkReply("something something rpc-error>") } + } + + @Test + fun `checkReply on null input should return false`() { + assertFalse { NetconfMessageUtils.checkReply(null) } + } + @Test fun formatRPCRequest(){ val checkString = ("#199" + @@ -296,11 +318,17 @@ class RpcMessageUtilsTest { val result = NetconfMessageUtils.formatRPCRequest(request,messageId,capabilities).replace("[\n\r\t]".toRegex(), "") Assert.assertEquals(checkString, result) - - } + @Test + fun `validateRPCXML on empty input returns false`() { + assertFalse { NetconfMessageUtils.validateRPCXML("") } + } - + @Test + fun `validateRPCXML on bad input returns false`() { + println("Don't fear \"[Fatal Error] :1:1: Content is not allowed in prolog.\" TODO: adjust logging for NetconfMessageUtils") + assertFalse { NetconfMessageUtils.validateRPCXML("really bad XML ~~~input") } + } } \ No newline at end of file -- cgit 1.2.3-korg