8ed3a9fec5e75ab9a2a9324bbe18b9cc95c71995
[policy/apex-pdp.git] /
1 /*
2  * ============LICENSE_START=======================================================
3  *  Copyright (C) 2021  Nordix Foundation
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
8  *
9  *        http://www.apache.org/licenses/LICENSE-2.0
10  *  Unless required by applicable law or agreed to in writing, software
11  *  distributed under the License is distributed on an "AS IS" BASIS,
12  *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  *  See the License for the specific language governing permissions and
14  *  limitations under the License.
15  *
16  *  SPDX-License-Identifier: Apache-2.0
17  *  ============LICENSE_END=========================================================
18  */
19
20 package org.onap.policy.apex.service.engine.event.impl;
21
22 import static org.assertj.core.api.Assertions.assertThatThrownBy;
23 import static org.junit.Assert.assertNotNull;
24
25 import org.apache.commons.lang3.RandomStringUtils;
26 import org.junit.Before;
27 import org.junit.Test;
28 import org.onap.policy.apex.service.engine.event.ApexEventProtocolConverter;
29 import org.onap.policy.apex.service.engine.event.ApexEventRuntimeException;
30 import org.onap.policy.apex.service.engine.event.impl.apexprotocolplugin.ApexEventProtocolParameters;
31 import org.onap.policy.apex.service.engine.event.impl.jsonprotocolplugin.JsonEventProtocolParameters;
32 import org.onap.policy.apex.service.parameters.eventprotocol.EventProtocolParameters;
33
34 public class EventProtocolFactoryTest {
35     private EventProtocolFactory factory;
36
37     @Before
38     public void setUp() throws Exception {
39         factory = new EventProtocolFactory();
40     }
41
42     @Test
43     public void createConsumerNoConsumerPlugin() {
44         final EventProtocolParameters parameters = new ApexEventProtocolParameters();
45         parameters.setEventProtocolPluginClass("");
46         final String name = RandomStringUtils.randomAlphabetic(9);
47
48         assertThatThrownBy(() -> factory.createConverter(name, parameters))
49             .isInstanceOf(ApexEventRuntimeException.class);
50     }
51
52     @Test
53     public void createConsumer2() {
54         final EventProtocolParameters parameters = new ApexEventProtocolParameters();
55         final String name = RandomStringUtils.randomAlphabetic(9);
56         parameters.setEventProtocolPluginClass("java.lang.Object");
57
58         assertThatThrownBy(() -> factory.createConverter(name, parameters))
59             .isInstanceOf(ApexEventRuntimeException.class);
60     }
61
62     @Test
63     public void createConsumer() {
64         final EventProtocolParameters parameters = new JsonEventProtocolParameters();
65         final String name = RandomStringUtils.randomAlphabetic(9);
66
67         final ApexEventProtocolConverter actual = factory.createConverter(name, parameters);
68         assertNotNull(actual);
69     }
70 }