blob: 0fee8314ce8854177e5f28d1fd5509ea21c322b4 [file] [log] [blame]
b.janani8b8ebdc2016-02-25 12:25:55 +05301/*
Brian O'Connor5ab426f2016-04-09 01:19:45 -07002 * Copyright 2016-present Open Networking Laboratory
b.janani8b8ebdc2016-02-25 12:25:55 +05303 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
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
17package org.onosproject.yangutils.translator.tojava.utils;
18
Gaurav Agrawalc5f63272016-06-16 13:09:53 +053019import java.io.File;
20import java.io.IOException;
b.janani8b8ebdc2016-02-25 12:25:55 +053021import java.lang.reflect.Constructor;
22import java.lang.reflect.InvocationTargetException;
Vidyashree Ramadeac28b2016-06-20 15:12:43 +053023import java.text.ParseException;
24import java.text.SimpleDateFormat;
25import java.util.Date;
janani bdd1314f2016-05-19 17:39:50 +053026import org.junit.Rule;
Vinod Kumar S38046502016-03-23 15:30:27 +053027import org.junit.Test;
janani bdd1314f2016-05-19 17:39:50 +053028import org.junit.rules.ExpectedException;
29import org.onosproject.yangutils.translator.exception.TranslatorException;
Shankara-Huaweibdf24bb2016-08-02 18:13:13 +053030import org.onosproject.yangutils.datamodel.javadatamodel.YangToJavaNamingConflictUtil;
Bharat saraswal2f11f652016-03-25 18:19:46 +053031
Gaurav Agrawalc5f63272016-06-16 13:09:53 +053032import static org.apache.commons.io.FileUtils.deleteDirectory;
Bharat saraswal2f11f652016-03-25 18:19:46 +053033import static org.hamcrest.core.Is.is;
Bharat saraswal6ef0b762016-04-05 12:45:45 +053034import static org.hamcrest.core.IsNot.not;
Bharat saraswal2f11f652016-03-25 18:19:46 +053035import static org.junit.Assert.assertThat;
Gaurav Agrawalc5f63272016-06-16 13:09:53 +053036import static org.onosproject.yangutils.translator.tojava.utils.JavaIdentifierSyntax.doesPackageExist;
37import static org.onosproject.yangutils.translator.tojava.utils.JavaIdentifierSyntax.getRootPackage;
38import static org.onosproject.yangutils.utils.UtilConstants.DEFAULT_BASE_PKG;
39import static org.onosproject.yangutils.utils.UtilConstants.PERIOD;
40import static org.onosproject.yangutils.utils.UtilConstants.SLASH;
Gaurav Agrawal8a5af142016-06-15 13:58:01 +053041import static org.onosproject.yangutils.utils.io.impl.YangIoUtils.getCamelCase;
42import static org.onosproject.yangutils.utils.io.impl.YangIoUtils.getCapitalCase;
43import static org.onosproject.yangutils.utils.io.impl.YangIoUtils.getJavaPackageFromPackagePath;
44import static org.onosproject.yangutils.utils.io.impl.YangIoUtils.getPackageDirPathFromJavaJPackage;
Gaurav Agrawal8a5af142016-06-15 13:58:01 +053045import static org.onosproject.yangutils.utils.io.impl.YangIoUtils.getSmallCase;
Vinod Kumar S38046502016-03-23 15:30:27 +053046
b.janani8b8ebdc2016-02-25 12:25:55 +053047/**
48 * Unit tests for java identifier syntax.
49 */
50public final class JavaIdentifierSyntaxTest {
51
janani bdd1314f2016-05-19 17:39:50 +053052 @Rule
53 public ExpectedException thrown = ExpectedException.none();
54
Bharat saraswal2f11f652016-03-25 18:19:46 +053055 private static final String PARENT_PACKAGE = "test5/test6/test7";
56 private static final String CHILD_PACKAGE = "test1:test2:test3";
57 private static final String DATE1 = "2000-1-5";
58 private static final String DATE2 = "1992-01-25";
59 private static final String PARENT_WITH_PERIOD = "test5.test6.test7";
60 private static final String CHILD_WITH_PERIOD = "test1.test2.test3";
61 private static final String DATE_WITH_REV1 = "rev20000105";
62 private static final String DATE_WITH_REV2 = "rev19920125";
63 private static final String VERSION_NUMBER = "v1";
janani bdd1314f2016-05-19 17:39:50 +053064 private static final String VALID_PREFIX = "123add-prefix";
65 private static final String INVALID_PREFIX = "-*()&^&#$%";
66 private static final String INVALID_PREFIX1 = "abc~!@#$%^&*()_+}{:<>?`1234567890-=[]''|,./SS";
67 private static final String INVALID_NAME_SPACE_FOR_INVALID_PREFIX = "try:#test3:9case3";
Bharat saraswal2f11f652016-03-25 18:19:46 +053068 private static final String INVALID_NAME_SPACE1 = "byte:#test2:9test3";
69 private static final String INVALID_NAME_SPACE2 = "const:#test2://9test3";
janani bdd1314f2016-05-19 17:39:50 +053070 private static final String INVALID_NAME_SPACE3 = "CONST:TRY://9test3";
71 private static final String VALID_NAME_SPACE1 = "123addprefixbyte.test2.123addprefix9test3";
janani bde4ffab2016-04-15 16:18:30 +053072 private static final String VALID_NAME_SPACE2 = "yangautoprefixconst.test2.yangautoprefix9test3";
janani bdd1314f2016-05-19 17:39:50 +053073 private static final String VALID_NAME_SPACE3 = "abc1234567890ssconst.test2.abc1234567890ss9test3";
74 private static final String VALID_NAME_SPACE4 = "yangautoprefixconst.yangautoprefixtry.yangautoprefix9test3";
Bharat saraswal2f11f652016-03-25 18:19:46 +053075 private static final String WITHOUT_CAMEL_CASE = "test-camel-case-identifier";
76 private static final String WITH_CAMEL_CASE = "testCamelCaseIdentifier";
janani bde4ffab2016-04-15 16:18:30 +053077 private static final String WITHOUT_CAMEL_CASE1 = ".-_try-._-.123";
78 private static final String WITH_CAMEL_CASE1 = "try123";
79 private static final String WITHOUT_CAMEL_CASE2 = "_try";
80 private static final String WITH_CAMEL_CASE2 = "yangAutoPrefixTry";
81 private static final String WITHOUT_CAMEL_CASE3 = "-1-123g-123ga-a";
82 private static final String WITH_CAMEL_CASE3 = "yangAutoPrefix1123G123Gaa";
83 private static final String WITHOUT_CAMEL_CASE4 = "a-b-c-d-e-f-g-h";
84 private static final String WITH_CAMEL_CASE4 = "aBcDeFgh";
janani b4a6711a2016-05-17 13:12:22 +053085 private static final String WITHOUT_CAMEL_CASE5 = "TestName";
86 private static final String WITH_CAMEL_CASE5 = "testName";
87 private static final String WITHOUT_CAMEL_CASE6 = "TEST-NAME";
88 private static final String WITH_CAMEL_CASE6 = "testName";
89 private static final String WITHOUT_CAMEL_CASE7 = "TESTNAME";
90 private static final String WITH_CAMEL_CASE7 = "testname";
91 private static final String WITHOUT_CAMEL_CASE8 = "TE-ST-NA-ME";
92 private static final String WITH_CAMEL_CASE8 = "teStNaMe";
93 private static final String WITHOUT_CAMEL_CASE9 = "TEST3NAME";
94 private static final String WITH_CAMEL_CASE9 = "test3Name";
95 private static final String WITHOUT_CAMEL_CASE10 = "TEST3";
96 private static final String WITH_CAMEL_CASE10 = "test3";
97 private static final String WITHOUT_CAMEL_CASE11 = "TEST3nAMe";
98 private static final String WITH_CAMEL_CASE11 = "test3Name";
99 private static final String WITHOUT_CAMEL_CASE12 = "TEST3name";
100 private static final String WITH_CAMEL_CASE12 = "test3Name";
janani bdd1314f2016-05-19 17:39:50 +0530101 private static final String WITHOUT_CAMEL_CASE13 = "t-RY";
102 private static final String WITH_CAMEL_CASE13 = "tRy";
103 private static final String WITHOUT_CAMEL_CASE14 = "TRY";
104 private static final String WITH_CAMEL_CASE14 = "yangAutoPrefixTry";
Bharat saraswal2f11f652016-03-25 18:19:46 +0530105 private static final String WITHOUT_CAPITAL = "test_this";
106 private static final String WITH_CAPITAL = "Test_this";
107 private static final String WITH_SMALL = "test_this";
janani bdd1314f2016-05-19 17:39:50 +0530108 private static final String WITH_CAMEL_CASE_WITH_PREFIX = "123addPrefixTry";
109 private static final String WITH_CAMEL_CASE_WITH_PREFIX1 = "abc1234567890Ss1123G123Gaa";
Vidyashree Ramadeac28b2016-06-20 15:12:43 +0530110 private static final String DATE_FORMAT = "yyyy-MM-dd";
111 private static SimpleDateFormat simpleDateFormat = new SimpleDateFormat(DATE_FORMAT);
janani bdd1314f2016-05-19 17:39:50 +0530112 private static YangToJavaNamingConflictUtil conflictResolver = new YangToJavaNamingConflictUtil();
Gaurav Agrawalc5f63272016-06-16 13:09:53 +0530113 private static final String BASE_DIR_PKG = "target.UnitTestCase.";
114 private static final String DIR_PATH = "exist1.exist2.exist3";
115 private static final String PKG_INFO = "package-info.java";
b.janani1fef2732016-03-04 12:29:05 +0530116
b.janani8b8ebdc2016-02-25 12:25:55 +0530117 /**
118 * Unit test for private constructor.
119 *
Gaurav Agrawalc5f63272016-06-16 13:09:53 +0530120 * @throws SecurityException if any security violation is observed.
121 * @throws NoSuchMethodException if when the method is not found.
122 * @throws IllegalArgumentException if there is illegal argument found.
123 * @throws InstantiationException if instantiation is provoked for the
124 * private constructor.
125 * @throws IllegalAccessException if instance is provoked or a method is
126 * provoked.
Vinod Kumar S38046502016-03-23 15:30:27 +0530127 * @throws InvocationTargetException when an exception occurs by the method
Gaurav Agrawalc5f63272016-06-16 13:09:53 +0530128 * or constructor.
b.janani8b8ebdc2016-02-25 12:25:55 +0530129 */
b.janani1fef2732016-03-04 12:29:05 +0530130 @Test
b.janani8b8ebdc2016-02-25 12:25:55 +0530131 public void callPrivateConstructors() throws SecurityException, NoSuchMethodException, IllegalArgumentException,
Vinod Kumar S38046502016-03-23 15:30:27 +0530132 InstantiationException, IllegalAccessException, InvocationTargetException {
Bharat saraswal2f11f652016-03-25 18:19:46 +0530133
Gaurav Agrawalc5f63272016-06-16 13:09:53 +0530134 Class<?>[] classesToConstruct = {JavaIdentifierSyntax.class};
b.janani8b8ebdc2016-02-25 12:25:55 +0530135 for (Class<?> clazz : classesToConstruct) {
136 Constructor<?> constructor = clazz.getDeclaredConstructor();
137 constructor.setAccessible(true);
Bharat saraswal6ef0b762016-04-05 12:45:45 +0530138 assertThat(null, not(constructor.newInstance()));
b.janani8b8ebdc2016-02-25 12:25:55 +0530139 }
140 }
141
142 /**
b.janani8b8ebdc2016-02-25 12:25:55 +0530143 * Unit test for root package generation with revision complexity.
144 */
145 @Test
Vidyashree Ramadeac28b2016-06-20 15:12:43 +0530146 public void getRootPackageTest() throws ParseException {
janani bdd1314f2016-05-19 17:39:50 +0530147 conflictResolver.setPrefixForIdentifier(null);
Vidyashree Ramadeac28b2016-06-20 15:12:43 +0530148 Date date = simpleDateFormat.parse(DATE1);
149 String rootPackage = getRootPackage((byte) 1, CHILD_PACKAGE, date, conflictResolver);
Bharat saraswal2f11f652016-03-25 18:19:46 +0530150 assertThat(rootPackage.equals(DEFAULT_BASE_PKG + PERIOD + VERSION_NUMBER
151 + PERIOD + CHILD_WITH_PERIOD + PERIOD + DATE_WITH_REV1), is(true));
b.janani8b8ebdc2016-02-25 12:25:55 +0530152 }
153
154 /**
janani bdd1314f2016-05-19 17:39:50 +0530155 * Unit test for root package generation with invalid prefix.
156 */
157 @Test
Vidyashree Ramadeac28b2016-06-20 15:12:43 +0530158 public void getRootPackageWithInvalidPrefix() throws TranslatorException, ParseException {
janani bdd1314f2016-05-19 17:39:50 +0530159 thrown.expect(TranslatorException.class);
160 thrown.expectMessage("The given prefix in pom.xml is invalid.");
161 conflictResolver.setPrefixForIdentifier(INVALID_PREFIX);
Vidyashree Ramadeac28b2016-06-20 15:12:43 +0530162 Date date = simpleDateFormat.parse(DATE1);
163 String rootPackage1 = getRootPackage((byte) 1, INVALID_NAME_SPACE_FOR_INVALID_PREFIX, date,
164 conflictResolver);
janani bdd1314f2016-05-19 17:39:50 +0530165 }
166
167 /**
b.janani1fef2732016-03-04 12:29:05 +0530168 * Unit test for root package generation with special characters presence.
169 */
170 @Test
Vidyashree Ramadeac28b2016-06-20 15:12:43 +0530171 public void getRootPackageWithSpecialCharactersTest() throws ParseException {
janani bdd1314f2016-05-19 17:39:50 +0530172 conflictResolver.setPrefixForIdentifier(VALID_PREFIX);
Vidyashree Ramadeac28b2016-06-20 15:12:43 +0530173 Date date = simpleDateFormat.parse(DATE1);
174 String rootPackage = getRootPackage((byte) 1, INVALID_NAME_SPACE1, date, conflictResolver);
Bharat saraswal2f11f652016-03-25 18:19:46 +0530175 assertThat(rootPackage.equals(DEFAULT_BASE_PKG + PERIOD + VERSION_NUMBER
176 + PERIOD + VALID_NAME_SPACE1 + PERIOD + DATE_WITH_REV1), is(true));
janani bdd1314f2016-05-19 17:39:50 +0530177 conflictResolver.setPrefixForIdentifier(null);
Vidyashree Ramadeac28b2016-06-20 15:12:43 +0530178 String rootPackage1 = getRootPackage((byte) 1, INVALID_NAME_SPACE2, date, conflictResolver);
Bharat saraswal2f11f652016-03-25 18:19:46 +0530179 assertThat(rootPackage1.equals(DEFAULT_BASE_PKG + PERIOD + VERSION_NUMBER
180 + PERIOD + VALID_NAME_SPACE2 + PERIOD + DATE_WITH_REV1), is(true));
Vidyashree Ramadeac28b2016-06-20 15:12:43 +0530181 String rootPackage2 = getRootPackage((byte) 1, INVALID_NAME_SPACE3, date, conflictResolver);
janani bdd1314f2016-05-19 17:39:50 +0530182 assertThat(rootPackage2.equals(DEFAULT_BASE_PKG + PERIOD + VERSION_NUMBER
183 + PERIOD + VALID_NAME_SPACE4 + PERIOD + DATE_WITH_REV1), is(true));
184 conflictResolver.setPrefixForIdentifier(INVALID_PREFIX1);
Vidyashree Ramadeac28b2016-06-20 15:12:43 +0530185 String rootPackage3 = getRootPackage((byte) 1, INVALID_NAME_SPACE2, date, conflictResolver);
janani bdd1314f2016-05-19 17:39:50 +0530186 assertThat(rootPackage3.equals(DEFAULT_BASE_PKG + PERIOD + VERSION_NUMBER
187 + PERIOD + VALID_NAME_SPACE3 + PERIOD + DATE_WITH_REV1), is(true));
188
b.janani1fef2732016-03-04 12:29:05 +0530189 }
190
191 /**
192 * Unit test for root package generation without complexity in revision.
b.janani8b8ebdc2016-02-25 12:25:55 +0530193 */
194 @Test
Vidyashree Ramadeac28b2016-06-20 15:12:43 +0530195 public void getRootPackageWithRevTest() throws ParseException {
196 Date date = simpleDateFormat.parse(DATE2);
197 String rootPkgWithRev = getRootPackage((byte) 1, CHILD_PACKAGE, date, null);
Bharat saraswal2f11f652016-03-25 18:19:46 +0530198 assertThat(rootPkgWithRev.equals(
199 DEFAULT_BASE_PKG + PERIOD + VERSION_NUMBER + PERIOD + CHILD_WITH_PERIOD + PERIOD + DATE_WITH_REV2),
b.janani1fef2732016-03-04 12:29:05 +0530200 is(true));
b.janani8b8ebdc2016-02-25 12:25:55 +0530201 }
202
203 /**
204 * Unit test for capitalizing the incoming string.
205 */
206 @Test
207 public void getCapitalCaseTest() {
janani b4a6711a2016-05-17 13:12:22 +0530208 String capitalCase = getCapitalCase(WITHOUT_CAPITAL);
b.janani1fef2732016-03-04 12:29:05 +0530209 assertThat(capitalCase.equals(WITH_CAPITAL), is(true));
b.janani8b8ebdc2016-02-25 12:25:55 +0530210 }
211
212 /**
213 * Unit test for getting the camel case for the received string.
214 */
215 @Test
216 public void getCamelCaseTest() {
janani bdd1314f2016-05-19 17:39:50 +0530217 conflictResolver.setPrefixForIdentifier(null);
218 String camelCase = getCamelCase(WITHOUT_CAMEL_CASE, conflictResolver);
b.janani1fef2732016-03-04 12:29:05 +0530219 assertThat(camelCase.equals(WITH_CAMEL_CASE), is(true));
janani bdd1314f2016-05-19 17:39:50 +0530220 String camelCase1 = getCamelCase(WITHOUT_CAMEL_CASE1, conflictResolver);
janani bde4ffab2016-04-15 16:18:30 +0530221 assertThat(camelCase1.equals(WITH_CAMEL_CASE1), is(true));
janani bdd1314f2016-05-19 17:39:50 +0530222 String camelCase2 = getCamelCase(WITHOUT_CAMEL_CASE2, conflictResolver);
janani bde4ffab2016-04-15 16:18:30 +0530223 assertThat(camelCase2.equals(WITH_CAMEL_CASE2), is(true));
janani bdd1314f2016-05-19 17:39:50 +0530224 String camelCase3 = getCamelCase(WITHOUT_CAMEL_CASE3, conflictResolver);
janani bde4ffab2016-04-15 16:18:30 +0530225 assertThat(camelCase3.equals(WITH_CAMEL_CASE3), is(true));
janani bdd1314f2016-05-19 17:39:50 +0530226 String camelCase4 = getCamelCase(WITHOUT_CAMEL_CASE4, conflictResolver);
janani bde4ffab2016-04-15 16:18:30 +0530227 assertThat(camelCase4.equals(WITH_CAMEL_CASE4), is(true));
janani bdd1314f2016-05-19 17:39:50 +0530228 String camelCase5 = getCamelCase(WITHOUT_CAMEL_CASE5, conflictResolver);
janani b4a6711a2016-05-17 13:12:22 +0530229 assertThat(camelCase5.equals(WITH_CAMEL_CASE5), is(true));
janani bdd1314f2016-05-19 17:39:50 +0530230 String camelCase6 = getCamelCase(WITHOUT_CAMEL_CASE6, conflictResolver);
janani b4a6711a2016-05-17 13:12:22 +0530231 assertThat(camelCase6.equals(WITH_CAMEL_CASE6), is(true));
janani bdd1314f2016-05-19 17:39:50 +0530232 String camelCase7 = getCamelCase(WITHOUT_CAMEL_CASE7, conflictResolver);
janani b4a6711a2016-05-17 13:12:22 +0530233 assertThat(camelCase7.equals(WITH_CAMEL_CASE7), is(true));
janani bdd1314f2016-05-19 17:39:50 +0530234 String camelCase8 = getCamelCase(WITHOUT_CAMEL_CASE8, conflictResolver);
janani b4a6711a2016-05-17 13:12:22 +0530235 assertThat(camelCase8.equals(WITH_CAMEL_CASE8), is(true));
janani bdd1314f2016-05-19 17:39:50 +0530236 String camelCase9 = getCamelCase(WITHOUT_CAMEL_CASE9, conflictResolver);
janani b4a6711a2016-05-17 13:12:22 +0530237 assertThat(camelCase9.equals(WITH_CAMEL_CASE9), is(true));
janani bdd1314f2016-05-19 17:39:50 +0530238 String camelCase10 = getCamelCase(WITHOUT_CAMEL_CASE10, conflictResolver);
janani b4a6711a2016-05-17 13:12:22 +0530239 assertThat(camelCase10.equals(WITH_CAMEL_CASE10), is(true));
janani bdd1314f2016-05-19 17:39:50 +0530240 String camelCase11 = getCamelCase(WITHOUT_CAMEL_CASE11, conflictResolver);
janani b4a6711a2016-05-17 13:12:22 +0530241 assertThat(camelCase11.equals(WITH_CAMEL_CASE11), is(true));
janani bdd1314f2016-05-19 17:39:50 +0530242 String camelCase12 = getCamelCase(WITHOUT_CAMEL_CASE12, conflictResolver);
janani b4a6711a2016-05-17 13:12:22 +0530243 assertThat(camelCase12.equals(WITH_CAMEL_CASE12), is(true));
janani bdd1314f2016-05-19 17:39:50 +0530244 String camelCase13 = getCamelCase(WITHOUT_CAMEL_CASE13, conflictResolver);
245 assertThat(camelCase13.equals(WITH_CAMEL_CASE13), is(true));
246 String camelCase14 = getCamelCase(WITHOUT_CAMEL_CASE14, conflictResolver);
247 assertThat(camelCase14.equals(WITH_CAMEL_CASE14), is(true));
248 }
249
250 /**
251 * Unit test for getting the camel case along with the prefix provided.
252 */
253 @Test
254 public void getCamelCaseWithPrefixTest() {
255
256 conflictResolver.setPrefixForIdentifier(VALID_PREFIX);
257 String camelCase = getCamelCase(WITHOUT_CAMEL_CASE2, conflictResolver);
258 assertThat(camelCase.equals(WITH_CAMEL_CASE_WITH_PREFIX), is(true));
259 conflictResolver.setPrefixForIdentifier(INVALID_PREFIX1);
260 String camelCase2 = getCamelCase(WITHOUT_CAMEL_CASE3, conflictResolver);
261 assertThat(camelCase2.equals(WITH_CAMEL_CASE_WITH_PREFIX1), is(true));
262 }
263
264 /**
265 * Unit test for getting the camel case along with the invalid prefix provided.
266 */
267 @Test
268 public void getCamelCaseWithInvalidPrefixTest() throws TranslatorException {
269
270 thrown.expect(TranslatorException.class);
271 thrown.expectMessage("The given prefix in pom.xml is invalid.");
272 conflictResolver.setPrefixForIdentifier(INVALID_PREFIX);
273 String camelCase = getCamelCase(WITHOUT_CAMEL_CASE3, conflictResolver);
b.janani8b8ebdc2016-02-25 12:25:55 +0530274 }
Bharat saraswal2f11f652016-03-25 18:19:46 +0530275
276 /**
277 * Unit test for getting the camel case for the received string.
278 */
279 @Test
280 public void getSmallCaseTest() {
Bharat saraswal2f11f652016-03-25 18:19:46 +0530281 String smallCase = getSmallCase(WITHOUT_CAPITAL);
282 assertThat(smallCase.equals(WITH_SMALL), is(true));
283 }
284
285 /**
286 * Unit test for getting the camel case for the received string.
287 */
288 @Test
289 public void getPackageFromPathTest() {
Bharat saraswal2f11f652016-03-25 18:19:46 +0530290 String pkg = getJavaPackageFromPackagePath(PARENT_PACKAGE);
291 assertThat(pkg.equals(PARENT_WITH_PERIOD), is(true));
292 }
293
294 /**
295 * Unit test for getting the camel case for the received string.
296 */
297 @Test
298 public void getPathFromPackageTest() {
Bharat saraswal2f11f652016-03-25 18:19:46 +0530299 String path = getPackageDirPathFromJavaJPackage(PARENT_WITH_PERIOD);
300 assertThat(path.equals(PARENT_PACKAGE), is(true));
301 }
Gaurav Agrawalc5f63272016-06-16 13:09:53 +0530302
303
304 /**
305 * This test case checks whether the package is existing.
306 *
307 * @throws IOException when failed to create a test file
308 */
309 @Test
310 public void packageExistTest() throws IOException {
311
312 String strPath = BASE_DIR_PKG + DIR_PATH;
313 File createDir = new File(strPath.replace(PERIOD, SLASH));
314 createDir.mkdirs();
315 File createFile = new File(createDir + SLASH + PKG_INFO);
316 createFile.createNewFile();
317 assertThat(true, is(doesPackageExist(strPath)));
318 createDir.delete();
319 deleteDirectory(createDir);
Bharat saraswalb551aae2016-07-14 15:18:20 +0530320 deleteDirectory(new File(BASE_DIR_PKG.replace(PERIOD, SLASH)));
Gaurav Agrawalc5f63272016-06-16 13:09:53 +0530321 }
b.janani8b8ebdc2016-02-25 12:25:55 +0530322}