11// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
22// SPDX-License-Identifier: Apache-2.0
33
4- import aws.sdk.kotlin.runtime.auth.credentials.EnvironmentCredentialsProvider
54import aws.sdk.kotlin.services.secretsmanager.SecretsManagerClient
65import aws.sdk.kotlin.services.secretsmanager.model.GetSecretValueRequest
76import com.google.gson.Gson
@@ -27,10 +26,13 @@ import org.junit.jupiter.api.Order
2726import org.junit.jupiter.api.Test
2827import org.junit.jupiter.api.TestInstance
2928import org.junit.jupiter.api.TestMethodOrder
29+ import org.slf4j.Logger
30+ import org.slf4j.LoggerFactory
3031
3132@TestInstance(TestInstance .Lifecycle .PER_CLASS )
3233@TestMethodOrder(OrderAnnotation ::class )
3334class CloudWatchTest {
35+ private val logger: Logger = LoggerFactory .getLogger(CloudWatchTest ::class .java)
3436 private var logGroup = " "
3537 private var alarmName = " "
3638 private var streamName = " "
@@ -79,137 +81,110 @@ class CloudWatchTest {
7981 dashboardAddSc = values.dashboardAddSc.toString()
8082 settingsSc = values.settingsSc.toString()
8183 metricImageSc = values.metricImageSc.toString()
82-
83- // Uncomment this code block if you prefer using a config.properties file to retrieve AWS values required for these tests.
84- /*
85- val input: InputStream = this.javaClass.getClassLoader().getResourceAsStream("config.properties")
86- val prop = Properties()
87- prop.load(input)
88- logGroup = prop.getProperty("logGroup")
89- alarmName = prop.getProperty("alarmName")
90- streamName = prop.getProperty("streamName")
91- ruleResource = prop.getProperty("ruleResource")
92- metricId = prop.getProperty("metricId")
93- filterName = prop.getProperty("filterName")
94- destinationArn = prop.getProperty("destinationArn")
95- roleArn = prop.getProperty("roleArn")
96- filterPattern = prop.getProperty("filterPattern")
97- instanceId = prop.getProperty("instanceId")
98- ruleName = prop.getProperty("ruleName")
99- ruleArn = prop.getProperty("ruleArn")
100- namespace = prop.getProperty("namespace")
101- myDateSc = prop.getProperty("myDateSc")
102- costDateWeekSc = prop.getProperty("costDateWeekSc")
103- dashboardNameSc = prop.getProperty("dashboardNameSc")
104- dashboardJsonSc = prop.getProperty("dashboardJsonSc")
105- dashboardAddSc = prop.getProperty("dashboardAddSc")
106- settingsSc = prop.getProperty("settingsSc")
107- metricImageSc = prop.getProperty("metricImageSc")
108- */
10984 }
11085
11186 @Test
11287 @Order(1 )
11388 fun createAlarmTest () =
11489 runBlocking {
11590 putAlarm(alarmName, instanceId)
116- println (" Test 1 passed" )
91+ logger.info (" Test 1 passed" )
11792 }
11893
11994 @Test
12095 @Order(2 )
12196 fun describeAlarmsTest () =
12297 runBlocking {
12398 desCWAlarms()
124- println (" Test 2 passed" )
99+ logger.info (" Test 2 passed" )
125100 }
126101
127102 @Test
128103 @Order(3 )
129104 fun createSubscriptionFiltersTest () =
130105 runBlocking {
131106 putSubFilters(filterName, filterPattern, logGroup, destinationArn)
132- println (" Test 3 passed" )
107+ logger.info (" Test 3 passed" )
133108 }
134109
135110 @Test
136111 @Order(4 )
137112 fun describeSubscriptionFiltersTest () =
138113 runBlocking {
139114 describeFilters(logGroup)
140- println (" Test 4 passed" )
115+ logger.info (" Test 4 passed" )
141116 }
142117
143118 @Test
144119 @Order(5 )
145120 fun disableAlarmActionsTest () =
146121 runBlocking {
147122 disableActions(alarmName)
148- println (" Test 5 passed" )
123+ logger.info (" Test 5 passed" )
149124 }
150125
151126 @Test
152127 @Order(6 )
153128 fun enableAlarmActionsTest () =
154129 runBlocking {
155130 enableActions(alarmName)
156- println (" Test 6 passed" )
131+ logger.info (" Test 6 passed" )
157132 }
158133
159134 @Test
160135 @Order(7 )
161136 fun getLogEventsTest () =
162137 runBlocking {
163138 getCWLogEvents(logGroup, streamName)
164- println (" Test 7 passed" )
139+ logger.info (" Test 7 passed" )
165140 }
166141
167142 @Test
168143 @Order(8 )
169144 fun putCloudWatchEventTest () =
170145 runBlocking {
171146 putCWEvents(ruleResource)
172- println (" Test 8 passed" )
147+ logger.info (" Test 8 passed" )
173148 }
174149
175150 @Test
176151 @Order(9 )
177152 fun getMetricDataTest () =
178153 runBlocking {
179154 getMetData()
180- println (" Test 9 passed" )
155+ logger.info (" Test 9 passed" )
181156 }
182157
183158 @Test
184159 @Order(10 )
185160 fun deleteSubscriptionFilterTest () =
186161 runBlocking {
187162 deleteSubFilter(filterName, logGroup)
188- println (" Test 10 passed" )
163+ logger.info (" Test 10 passed" )
189164 }
190165
191166 @Test
192167 @Order(11 )
193168 fun putRuleTest () =
194169 runBlocking {
195170 putCWRule(ruleName, ruleArn)
196- println (" Test 11 passed" )
171+ logger.info (" Test 11 passed" )
197172 }
198173
199174 @Test
200175 @Order(12 )
201176 fun putLogEvents () =
202177 runBlocking {
203178 putCWLogEvents(logGroup, streamName)
204- println (" Test 12 passed" )
179+ logger.info (" Test 12 passed" )
205180 }
206181
207182 @Test
208183 @Order(13 )
209184 fun deleteCWAlarmTest () =
210185 runBlocking {
211186 deleteCWAlarm(alarmName)
212- println (" Test 13 passed" )
187+ logger.info (" Test 13 passed" )
213188 }
214189
215190 private suspend fun getSecretValues (): String {
@@ -220,7 +195,6 @@ class CloudWatchTest {
220195 }
221196 SecretsManagerClient {
222197 region = " us-east-1"
223- credentialsProvider = EnvironmentCredentialsProvider ()
224198 }.use { secretClient ->
225199 val valueResponse = secretClient.getSecretValue(valueRequest)
226200 return valueResponse.secretString.toString()
0 commit comments