2 * ================================================================================
3 * Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
4 * ================================================================================
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
9 * http://www.apache.org/licenses/LICENSE-2.0
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 * ============LICENSE_END=========================================================
20 package org.onap.dcae.analytics.model.util.json.mixin.cef;
22 import static org.onap.dcae.analytics.model.util.json.AnalyticsModelJsonConversion.ANALYTICS_MODEL_OBJECT_MAPPER;
24 import org.assertj.core.api.Assertions;
25 import org.junit.jupiter.api.DisplayName;
26 import org.junit.jupiter.api.Test;
27 import org.onap.dcae.analytics.model.BaseAnalyticsModelTest;
28 import org.onap.dcae.analytics.model.cef.AlertType;
32 * Test Alert Type Mixin JSON conversions.
34 * @author Rajiv Singla
36 class AlertTypeMixinTest extends BaseAnalyticsModelTest {
38 // NOTE: Alert type enum has some special customizations in AlertTypeMixin class
39 // as Java enum names does not allow for "-" so actual values are coded as enum names
41 @DisplayName("Test Alert Type Json Conversions")
42 public void testAlertTypeJsonConversions() throws Exception {
44 final String alertTypeJson = serializeModelToJson(AlertType.CARD_ANOMALY, ANALYTICS_MODEL_OBJECT_MAPPER);
45 Assertions.assertThat(alertTypeJson)
46 .as("Alert Type Json for CARD ANOMALY must have hyphen in it").isEqualTo("\"CARD-ANOMALY\"");
47 // convert parsed alert type back to enum
48 final AlertType alertType = ANALYTICS_MODEL_OBJECT_MAPPER.readValue(alertTypeJson, AlertType.class);
49 Assertions.assertThat(alertType)
50 .as("Json String for CARD ANOMALY with hyphen can be converted back to Alert Type")
51 .isEqualTo(AlertType.CARD_ANOMALY);