aboutsummaryrefslogtreecommitdiffstats
path: root/hv-collector-test-utils/src/main/kotlin/configurations.kt
diff options
context:
space:
mode:
authorfkrzywka <filip.krzywka@nokia.com>2018-07-31 14:26:09 +0200
committerPiotr Jaszczyk <piotr.jaszczyk@nokia.com>2018-08-03 11:02:26 +0200
commit185bc70fa1c024e532649bea650183e05c2d3d87 (patch)
treedafcd1a21d71948d79f903380b860cca36bebb6c /hv-collector-test-utils/src/main/kotlin/configurations.kt
parent8a0e9e5d4d7613793d2804d7e16a9352e3883874 (diff)
Extract test-utils module
- removed duplicate code that was creating VesMessages and similiar objects - removed duplicate code in command line parsing tests - made minor refactorings to avoid passing unnecessary params and to be as verbose as possible in tests Closes ONAP-699 Change-Id: I2607f1f775054ae1c5f275c231895f838b415371 Signed-off-by: fkrzywka <filip.krzywka@nokia.com> Issue-ID: DCAEGEN2-601
Diffstat (limited to 'hv-collector-test-utils/src/main/kotlin/configurations.kt')
-rw-r--r--hv-collector-test-utils/src/main/kotlin/configurations.kt37
1 files changed, 37 insertions, 0 deletions
diff --git a/hv-collector-test-utils/src/main/kotlin/configurations.kt b/hv-collector-test-utils/src/main/kotlin/configurations.kt
new file mode 100644
index 00000000..57843b45
--- /dev/null
+++ b/hv-collector-test-utils/src/main/kotlin/configurations.kt
@@ -0,0 +1,37 @@
+/*
+ * ============LICENSE_START=======================================================
+ * dcaegen2-collectors-veshv
+ * ================================================================================
+ * Copyright (C) 2018 NOKIA
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+package org.onap.dcae.collectors.veshv.tests.utils
+
+import arrow.core.identity
+import org.onap.dcae.collectors.veshv.utils.commandline.ArgBasedConfiguration
+import org.onap.dcae.collectors.veshv.utils.commandline.WrongArgumentError
+
+
+fun <T> ArgBasedConfiguration<T>.parseExpectingSuccess(vararg cmdLine: String): T =
+ parse(cmdLine).fold(
+ { throw AssertionError("Parsing result should be present") },
+ ::identity
+ )
+
+fun <T> ArgBasedConfiguration<T>.parseExpectingFailure(vararg cmdLine: String): WrongArgumentError =
+ parse(cmdLine).fold(
+ ::identity,
+ { throw AssertionError("parsing should have failed") }
+ ) \ No newline at end of file