/*
* ============LICENSE_START======================================================= ONAP : SO
* ================================================================================ Copyright (C) 2018 AT&T Intellectual
* Property. All rights reserved. ================================================================================
* 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.so.bpmn.core.xml;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import java.util.Optional;
import org.junit.Test;
public class XmlToolTest {
private String response = "good";
private String responseModified = "veryGood";
private String encodeResponse = "<Response>good</Response>";
private String encodeResponseNamespace =
"good";
private String attribute = "good&\"bad\"";
// private String updatedAttribute = "<Response>good&"bad"</Response>";
private String content = "" + "test"
+ "test" + "123"
+ "" + "test"
+ "test" + "";
@Test
public void test() throws Exception {
Object xmlMessage = new String(response);
String xmlResponse = XmlTool.normalize(xmlMessage);
assertEquals(response, xmlResponse.toString());
String xmlEncode = XmlTool.encode(xmlMessage);
assertEquals(encodeResponse, xmlEncode.toString());
Optional optXml = XmlTool.modifyElement(response, "Response", "veryGood");
Object obj1 = new String(optXml.get().toString());
String noPreamble = XmlTool.removePreamble(obj1);
assertEquals(responseModified, noPreamble.toString());
Object obj2 = new String(encodeResponseNamespace);
String noNamespace = XmlTool.removeNamespaces(obj2);
assertEquals(response, noNamespace.toString());
Object obj3 = new String(attribute);
assertEquals(null, XmlTool.normalize(null));
assertEquals(null, XmlTool.encode(null));
assertEquals(null, XmlTool.removePreamble(null));
assertEquals(null, XmlTool.removeNamespaces(null));
assertEquals(Optional.empty(), XmlTool.modifyElement(null, "Response", "veryGood"));
}
@Test
public void normalizeTest() throws Exception {
String response = XmlTool.normalize(content);
assertNotNull(response);
}
@Test
public void modifyElementTest() throws Exception {
String response = XmlTool.modifyElement(content, "event-type", "uCPE-VMS").get();
assertNotNull(response);
}
}