Fixed SONAR issues
[sdc.git] / openecomp-be / lib / openecomp-sdc-validation-lib / openecomp-sdc-validation-core / src / test / java / org / openecomp / sdc / heat / services / tree / HeatTreeManagerTest.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * SDC
4  * ================================================================================
5  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
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
21 package org.openecomp.sdc.heat.services.tree;
22
23 import org.openecomp.config.ConfigurationUtils;
24 import org.openecomp.core.utilities.file.FileContentHandler;
25 import org.openecomp.core.utilities.file.FileUtils;
26 import org.openecomp.sdc.heat.datatypes.structure.HeatStructureTree;
27 import org.openecomp.sdc.logging.api.Logger;
28 import org.openecomp.sdc.logging.api.LoggerFactory;
29 import org.testng.Assert;
30 import org.testng.annotations.Test;
31
32 import java.io.File;
33 import java.io.FileInputStream;
34 import java.io.IOException;
35 import java.net.URL;
36 import java.util.ArrayList;
37 import java.util.List;
38 import java.util.stream.Collectors;
39
40
41 public class HeatTreeManagerTest {
42
43   private Logger logger = LoggerFactory.getLogger(HeatTreeManagerTest.class);
44
45   @Test
46   public void testHeatTreeCreation() {
47
48     FileContentHandler fileContentMap = new FileContentHandler();
49     URL url = this.getClass().getResource("/heatTreeValidationOutput");
50
51     File templateDir = new File(url.getFile());
52     File[] files = templateDir.listFiles();
53
54     if (files == null || files.length == 0) {
55       return;
56     }
57
58     for (File file : files) {
59       fileContentMap.addFile(file.getName(), getFileContent(file));
60     }
61
62     HeatTreeManager heatTreeManager = HeatTreeManagerUtil.initHeatTreeManager(fileContentMap);
63     heatTreeManager.createTree();
64     HeatStructureTree tree = heatTreeManager.getTree();
65     Assert.assertNotNull(tree);
66     Assert.assertEquals(tree.getHeat().size(), 2);
67   }
68
69   private byte[] getFileContent(File file) {
70     try {
71       return FileUtils.toByteArray(new FileInputStream(file));
72     } catch (IOException e) {
73       logger.debug("",e);
74     }
75
76     return new byte[0];
77   }
78 }