push addional code
[sdc.git] / openecomp-be / lib / openecomp-core-lib / openecomp-config-lib / src / test / java / org / openecomp / sdc / applicationconfig / dao / ApplicationConfigImplDaoTest.java
1 package org.openecomp.sdc.applicationconfig.dao;
2
3 import org.openecomp.sdc.common.errors.CoreException;
4 import org.openecomp.sdc.common.errors.ErrorCategory;
5 import org.openecomp.sdc.common.errors.ErrorCode;
6 import org.openecomp.sdc.vendorsoftwareproduct.types.composition.CompositionEntityType;
7 import org.openecomp.core.utilities.applicationconfig.ApplicationConfig;
8 import org.openecomp.core.utilities.applicationconfig.ApplicationConfigFactory;
9 import org.openecomp.core.utilities.applicationconfig.dao.ApplicationConfigDao;
10 import org.openecomp.core.utilities.applicationconfig.dao.ApplicationConfigDaoFactory;
11 import org.openecomp.core.utilities.applicationconfig.dao.type.ApplicationConfigEntity;
12 import org.openecomp.core.utilities.applicationconfig.type.ConfigurationData;
13 import org.openecomp.core.utilities.file.FileUtils;
14 import org.testng.Assert;
15 import org.testng.annotations.BeforeClass;
16 import org.testng.annotations.Test;
17
18
19 public class ApplicationConfigImplDaoTest {
20
21   private static final String SCHEMA_GENERATOR_INITIALIZATION_ERROR =
22       "SCHEMA_GENERATOR_INITIALIZATION_ERROR";
23   private static final String SCHEMA_GENERATOR_INITIALIZATION_ERROR_MSG =
24       "Error occurred while loading questionnaire schema templates";
25   private static ApplicationConfigDao applicationConfigDao =
26       ApplicationConfigDaoFactory.getInstance().createInterface();
27   private static ApplicationConfig applicationConfig =
28       ApplicationConfigFactory.getInstance().createInterface();
29
30 //  @BeforeClass
31   public static void init() {
32     try {
33
34       ApplicationConfigEntity applicationConfigEntity1 =
35           new ApplicationConfigEntity("test - namespace", "vsp", "vspTemplate");
36       ApplicationConfigEntity applicationConfigEntity2 =
37           new ApplicationConfigEntity("test - namespace", "nic", "nicTemplate");
38       ApplicationConfigEntity applicationConfigEntity3 =
39           new ApplicationConfigEntity("test - namespace", "component", "componentTemplate");
40
41       applicationConfigDao.create(applicationConfigEntity1);
42       applicationConfigDao.create(applicationConfigEntity2);
43       applicationConfigDao.create(applicationConfigEntity3);
44
45     } catch (Exception e) {
46       throw new CoreException(new ErrorCode.ErrorCodeBuilder().
47           withCategory(ErrorCategory.APPLICATION).
48           withId(SCHEMA_GENERATOR_INITIALIZATION_ERROR).
49           withMessage(SCHEMA_GENERATOR_INITIALIZATION_ERROR_MSG).
50           build());
51     }
52   }
53
54   private static String loadFileToString(String path) {
55     return new String(FileUtils.toByteArray(FileUtils.loadFileToInputStream(path)));
56   }
57
58 //  @Test
59   public void testApplicationConfigTimestampValue() {
60     ConfigurationData configurationData = applicationConfig
61         .getConfigurationData("test - namespace", CompositionEntityType.vsp.name());
62
63     Assert.assertNotNull(configurationData);
64     Assert.assertNotEquals(configurationData.getTimeStamp(), 0);
65
66   }
67
68 //  @Test(dependsOnMethods = "testApplicationConfigTimestampValue")
69   public void testNotExistingApplicationConfigTimestampValue() {
70     try {
71       applicationConfig.getConfigurationData("test - namespace", "aaa");
72     } catch (CoreException ce) {
73       Assert.assertEquals(ce.getMessage(),
74           "Configuration for namespace test - namespace and key aaa was not found");
75     }
76
77   }
78
79 //  @Test(dependsOnMethods = "testApplicationConfigTimestampValue")
80   public void testInsertApplicationConfiguration() {
81     String testTemplate = loadFileToString("questionnaire/testTemplate.txt");
82     applicationConfig.insertValue("test_namespace", "test_key", testTemplate);
83
84     Assert.assertEquals(testTemplate,
85         applicationConfig.getConfigurationData("test_namespace", "test_key").getValue());
86   }
87
88 }