Revert "Read HV-VES healtcheck api port from cmd line"
[dcaegen2/collectors/hv-ves.git] / sources / hv-collector-configuration / src / test / kotlin / org / onap / dcae / collectors / veshv / config / impl / ArgHvVesConfigurationTest.kt
1 /*
2  * ============LICENSE_START=======================================================
3  * dcaegen2-collectors-veshv
4  * ================================================================================
5  * Copyright (C) 2018-2019 NOKIA
6  * ================================================================================
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  *
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  *
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  * ============LICENSE_END=========================================================
19  */
20 package org.onap.dcae.collectors.veshv.config.impl
21
22 import org.assertj.core.api.Assertions.assertThat
23 import org.jetbrains.spek.api.Spek
24 import org.jetbrains.spek.api.dsl.describe
25 import org.jetbrains.spek.api.dsl.given
26 import org.jetbrains.spek.api.dsl.it
27 import org.jetbrains.spek.api.dsl.on
28 import org.onap.dcae.collectors.veshv.commandline.WrongArgumentError
29 import org.onap.dcae.collectors.veshv.tests.utils.absoluteResourcePath
30 import org.onap.dcae.collectors.veshv.tests.utils.parseExpectingFailure
31 import org.onap.dcae.collectors.veshv.tests.utils.parseExpectingSuccess
32 import java.io.File
33
34 /**
35  * @author Piotr Jaszczyk <piotr.jaszczyk@nokia.com>
36  * @since May 2018
37  */
38 object ArgVesHvConfigurationTest : Spek({
39     lateinit var cut: ArgHvVesConfiguration
40     val configFilePath = javaClass.absoluteResourcePath("sampleConfig.json")
41
42     beforeEachTest {
43         cut = ArgHvVesConfiguration()
44     }
45
46     describe("parsing arguments") {
47         given("all parameters are present in the long form") {
48             lateinit var result: File
49
50             beforeEachTest {
51                 result = cut.parseExpectingSuccess(
52                         "--configuration-file", configFilePath
53                 )
54             }
55
56             it("should read proper configuration file") {
57                 assertThat(result.exists()).isTrue()
58             }
59         }
60
61         describe("required parameter is absent") {
62             on("missing configuration file path") {
63                 it("should throw exception") {
64                     assertThat(
65                             cut.parseExpectingFailure(
66                                     "--non-existing-option", ""
67                             )
68                     ).isInstanceOf(WrongArgumentError::class.java)
69                 }
70             }
71         }
72     }
73 })