From b06f7e948bb2e4a7b34d436b5a4c2505b8a58f23 Mon Sep 17 00:00:00 2001 From: sg481n Date: Wed, 4 Oct 2017 16:01:39 +0000 Subject: Improve code coverage for aaf cadi modules INcluded new test case Issue-ID: AAF-79 Change-Id: I6edba798b1b3f7f37a9f51bc3f2c65aa16a959c4 Signed-off-by: sg481n --- core/src/test/java/org/onap/aaf/cadi/JU_AES.java | 174 +++++++++--------- .../java/org/onap/aaf/cadi/JU_CadiWrapTest.java | 197 +++++++++++++++++++++ .../java/org/onap/aaf/cadi/test/JU_Passcode.java | 17 ++ core/tempkey | 27 --- core/test/AESKeyFile | 27 +++ core/test/CBUSevent.xml | 46 +++++ pom.xml | 6 +- 7 files changed, 373 insertions(+), 121 deletions(-) create mode 100644 core/src/test/java/org/onap/aaf/cadi/JU_CadiWrapTest.java delete mode 100644 core/tempkey create mode 100644 core/test/AESKeyFile create mode 100644 core/test/CBUSevent.xml diff --git a/core/src/test/java/org/onap/aaf/cadi/JU_AES.java b/core/src/test/java/org/onap/aaf/cadi/JU_AES.java index 4779f09..50c4f27 100644 --- a/core/src/test/java/org/onap/aaf/cadi/JU_AES.java +++ b/core/src/test/java/org/onap/aaf/cadi/JU_AES.java @@ -34,6 +34,23 @@ import org.onap.aaf.cadi.Symm; import junit.framework.Assert; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertTrue; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.io.File; +import java.io.OutputStream; + +import javax.crypto.CipherInputStream; +import javax.crypto.CipherOutputStream; + +import org.junit.Test; +import org.onap.aaf.cadi.AES; +import org.onap.aaf.cadi.Symm; + +import junit.framework.Assert; + public class JU_AES { @Test @@ -49,46 +66,13 @@ public class JU_AES { passin = aes.decrypt(encrypted); Assert.assertEquals(orig, new String(passin)); } - - @Test - public void testInputStream() throws Exception { - AES aes = new AES(); - String orig = "I'm a password, really"; - ByteArrayInputStream bais = new ByteArrayInputStream(orig.getBytes()); - CipherInputStream cis = aes.inputStream(bais, true); - ByteArrayOutputStream baos = new ByteArrayOutputStream(); - Symm.base64.encode(cis, baos); - cis.close(); - - byte[] b64encrypted; - System.out.println(new String(b64encrypted=baos.toByteArray())); - - - baos.reset(); - CipherOutputStream cos = aes.outputStream(baos, false); - Symm.base64.decode(new ByteArrayInputStream(b64encrypted),cos); - cos.close(); - Assert.assertEquals(orig, new String(baos.toByteArray())); - } - - @Test - public void testObtain() throws Exception { - byte[] keygen = Symm.baseCrypt().keygen(); - - Symm symm = Symm.obtain(new ByteArrayInputStream(keygen)); - - String orig ="Another Password, please"; - String encrypted = symm.enpass(orig); - System.out.println(encrypted); - String decrypted = symm.depass(encrypted); - System.out.println(decrypted); - Assert.assertEquals(orig, decrypted); - } @Test - public void test1() throws Exception { - AES aes = new AES(); - String orig = "I'm a password, really Cool"; + public void testAESFileStream() throws Exception { + File fi = new File("test/AESKeyFile"); + AES aes = new AES(fi); + + String orig = "I'm a password, really"; byte[] passin = orig.getBytes(); byte[] encrypted = aes.encrypt(passin); byte[] b64enc = Symm.base64.encode(encrypted); @@ -97,12 +81,23 @@ public class JU_AES { encrypted = Symm.base64.decode(b64enc); passin = aes.decrypt(encrypted); Assert.assertEquals(orig, new String(passin)); + + File temp = new File("tempFile"); + try { + assertFalse(temp.exists()); + aes.save(temp); + assertTrue(temp.exists()); + } catch (Exception e) { + } finally { + temp.delete(); + } + } @Test - public void testInputStream1() throws Exception { + public void testInputStream() throws Exception { AES aes = new AES(); - String orig = "I'm a password, really cool"; + String orig = "I'm a password, really"; ByteArrayInputStream bais = new ByteArrayInputStream(orig.getBytes()); CipherInputStream cis = aes.inputStream(bais, true); ByteArrayOutputStream baos = new ByteArrayOutputStream(); @@ -111,34 +106,44 @@ public class JU_AES { byte[] b64encrypted; System.out.println(new String(b64encrypted=baos.toByteArray())); - + + CipherInputStream cis1 = aes.inputStream(bais, false); + ByteArrayOutputStream baos1 = new ByteArrayOutputStream(); + Symm.base64.encode(cis1, baos1); + cis.close(); + + byte[] b64encrypted1; + System.out.println(new String(b64encrypted1=baos1.toByteArray())); baos.reset(); CipherOutputStream cos = aes.outputStream(baos, false); Symm.base64.decode(new ByteArrayInputStream(b64encrypted),cos); cos.close(); Assert.assertEquals(orig, new String(baos.toByteArray())); + + OutputStream stream = aes.outputStream(System.out, true); + assertTrue(stream instanceof CipherOutputStream); + } @Test - public void testObtain1() throws Exception { + public void testObtain() throws Exception { byte[] keygen = Symm.baseCrypt().keygen(); Symm symm = Symm.obtain(new ByteArrayInputStream(keygen)); - String orig ="Another Password, please cool"; + String orig ="Another Password, please"; String encrypted = symm.enpass(orig); System.out.println(encrypted); String decrypted = symm.depass(encrypted); System.out.println(decrypted); Assert.assertEquals(orig, decrypted); } - @Test - public void test2() throws Exception { + public void test1() throws Exception { AES aes = new AES(); - String orig = "I'm a password, really Nice"; + String orig = "I'm a password, really"; byte[] passin = orig.getBytes(); byte[] encrypted = aes.encrypt(passin); byte[] b64enc = Symm.base64.encode(encrypted); @@ -148,47 +153,13 @@ public class JU_AES { passin = aes.decrypt(encrypted); Assert.assertEquals(orig, new String(passin)); } - - @Test - public void testInputStream2() throws Exception { - AES aes = new AES(); - String orig = "I'm a password, really Nice"; - ByteArrayInputStream bais = new ByteArrayInputStream(orig.getBytes()); - CipherInputStream cis = aes.inputStream(bais, true); - ByteArrayOutputStream baos = new ByteArrayOutputStream(); - Symm.base64.encode(cis, baos); - cis.close(); - - byte[] b64encrypted; - System.out.println(new String(b64encrypted=baos.toByteArray())); - - - baos.reset(); - CipherOutputStream cos = aes.outputStream(baos, false); - Symm.base64.decode(new ByteArrayInputStream(b64encrypted),cos); - cos.close(); - Assert.assertEquals(orig, new String(baos.toByteArray())); - } - - @Test - public void testObtain2() throws Exception { - byte[] keygen = Symm.baseCrypt().keygen(); - - Symm symm = Symm.obtain(new ByteArrayInputStream(keygen)); - - String orig ="Another Password, please Nice"; - String encrypted = symm.enpass(orig); - System.out.println(encrypted); - String decrypted = symm.depass(encrypted); - System.out.println(decrypted); - Assert.assertEquals(orig, decrypted); - } - @Test - public void test3() throws Exception { - AES aes = new AES(); - String orig = "I'm a password, magic"; + public void testAESFileStream1() throws Exception { + File fi = new File("test/AESKeyFile"); + AES aes = new AES(fi); + + String orig = "I'm a password, really"; byte[] passin = orig.getBytes(); byte[] encrypted = aes.encrypt(passin); byte[] b64enc = Symm.base64.encode(encrypted); @@ -197,12 +168,23 @@ public class JU_AES { encrypted = Symm.base64.decode(b64enc); passin = aes.decrypt(encrypted); Assert.assertEquals(orig, new String(passin)); + + File temp = new File("tempFile"); + try { + assertFalse(temp.exists()); + aes.save(temp); + assertTrue(temp.exists()); + } catch (Exception e) { + } finally { + temp.delete(); + } + } @Test - public void testInputStream3() throws Exception { + public void testInputStream1() throws Exception { AES aes = new AES(); - String orig = "I'm a password, magic"; + String orig = "I'm a password, really"; ByteArrayInputStream bais = new ByteArrayInputStream(orig.getBytes()); CipherInputStream cis = aes.inputStream(bais, true); ByteArrayOutputStream baos = new ByteArrayOutputStream(); @@ -211,27 +193,37 @@ public class JU_AES { byte[] b64encrypted; System.out.println(new String(b64encrypted=baos.toByteArray())); - + + CipherInputStream cis1 = aes.inputStream(bais, false); + ByteArrayOutputStream baos1 = new ByteArrayOutputStream(); + Symm.base64.encode(cis1, baos1); + cis.close(); + + byte[] b64encrypted1; + System.out.println(new String(b64encrypted1=baos1.toByteArray())); baos.reset(); CipherOutputStream cos = aes.outputStream(baos, false); Symm.base64.decode(new ByteArrayInputStream(b64encrypted),cos); cos.close(); Assert.assertEquals(orig, new String(baos.toByteArray())); + + OutputStream stream = aes.outputStream(System.out, true); + assertTrue(stream instanceof CipherOutputStream); + } @Test - public void testObtain3() throws Exception { + public void testObtain1() throws Exception { byte[] keygen = Symm.baseCrypt().keygen(); Symm symm = Symm.obtain(new ByteArrayInputStream(keygen)); - String orig ="Another Password, magic"; + String orig ="Another Password, please"; String encrypted = symm.enpass(orig); System.out.println(encrypted); String decrypted = symm.depass(encrypted); System.out.println(decrypted); Assert.assertEquals(orig, decrypted); } - } diff --git a/core/src/test/java/org/onap/aaf/cadi/JU_CadiWrapTest.java b/core/src/test/java/org/onap/aaf/cadi/JU_CadiWrapTest.java new file mode 100644 index 0000000..da81e0c --- /dev/null +++ b/core/src/test/java/org/onap/aaf/cadi/JU_CadiWrapTest.java @@ -0,0 +1,197 @@ +/******************************************************************************* + * ============LICENSE_START==================================================== + * * org.onap.aaf + * * =========================================================================== + * * Copyright © 2017 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==================================================== + * * + * * ECOMP is a trademark and service mark of AT&T Intellectual Property. + * * + ******************************************************************************/ +package org.onap.aaf.cadi; + +import static org.junit.Assert.*; + +import org.junit.Test; + +import static org.junit.Assert.*; +import static org.mockito.Matchers.isA; +import static org.mockito.Mockito.when; + +import java.security.Principal; +import java.util.List; + +import javax.servlet.http.HttpServletRequest; + +import org.junit.Before; +import org.junit.Test; +import org.mockito.Mock; +import org.mockito.Mockito; +import org.mockito.MockitoAnnotations; +import org.onap.aaf.cadi.CachedPrincipal.Resp; +import org.onap.aaf.cadi.filter.MapPermConverter; +import org.onap.aaf.cadi.lur.EpiLur; +import org.onap.aaf.cadi.taf.TafResp; + +public class JU_CadiWrapTest { + + @Mock + private HttpServletRequest request; + + @Mock + private TafResp tafResp; + + @Mock + private Principal principle; + + @Mock + private Lur lur; + + @Before + public void setUp() throws Exception { + MockitoAnnotations.initMocks(this); + } + + @Test + public void testInstantiate() throws CadiException { + Access a = new PropAccess(); + when(tafResp.getAccess()).thenReturn(a); + + lur.fishAll(isA(Principal.class), isA(List.class)); + + EpiLur lur1 = new EpiLur(lur); + + CadiWrap wrap = new CadiWrap(request, tafResp, lur1); + + assertNull(wrap.getUserPrincipal()); + assertNull(wrap.getRemoteUser()); + assertNull(wrap.getUser()); + assertEquals(wrap.getPermissions(principle).size(), 0); + + byte[] arr = {'1','2'}; + wrap.setCred(arr); + + assertEquals(arr, wrap.getCred()); + + wrap.setUser("User1"); + assertEquals("User1", wrap.getUser()); + + wrap.invalidate("1"); + + assertFalse(wrap.isUserInRole(null)); + + wrap.set(tafResp, lur); + + wrap.invalidate("2"); + + wrap.isUserInRole("User1"); + } + + @Test + public void testInstantiateWithPermConverter() throws CadiException { + Access a = new PropAccess(); + when(tafResp.getAccess()).thenReturn(a); + when(tafResp.getPrincipal()).thenReturn(principle); + + + CachingLur lur1 = new CachingLur() { + + @Override + public Permission createPerm(String p) { + // TODO Auto-generated method stub + return null; + } + + @Override + public boolean fish(Principal bait, Permission pond) { + // TODO Auto-generated method stub + return true; + } + + @Override + public void fishAll(Principal bait, List permissions) { + // TODO Auto-generated method stub + + } + + @Override + public void destroy() { + // TODO Auto-generated method stub + + } + + @Override + public boolean handlesExclusively(Permission pond) { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean supports(String userName) { + // TODO Auto-generated method stub + return false; + } + + @Override + public void remove(String user) { + // TODO Auto-generated method stub + + } + + @Override + public Resp reload(User user) { + // TODO Auto-generated method stub + return null; + } + + @Override + public void setDebug(String commaDelimIDsOrNull) { + // TODO Auto-generated method stub + + } + + @Override + public void clear(Principal p, StringBuilder sb) { + // TODO Auto-generated method stub + + } + }; + + MapPermConverter pc = new MapPermConverter(); + + CadiWrap wrap = new CadiWrap(request, tafResp, lur1, pc); + + assertNotNull(wrap.getUserPrincipal()); + assertNull(wrap.getRemoteUser()); + assertNull(wrap.getUser()); + + byte[] arr = {'1','2'}; + wrap.setCred(arr); + + assertEquals(arr, wrap.getCred()); + + wrap.setUser("User1"); + assertEquals("User1", wrap.getUser()); + + wrap.invalidate("1"); + wrap.setPermConverter(new MapPermConverter()); + + assertTrue(wrap.getLur() instanceof CachingLur); + assertTrue(wrap.isUserInRole("User1")); + + wrap.set(tafResp, lur); + assertFalse(wrap.isUserInRole("Perm1")); + } +} diff --git a/core/src/test/java/org/onap/aaf/cadi/test/JU_Passcode.java b/core/src/test/java/org/onap/aaf/cadi/test/JU_Passcode.java index 40ceaa1..f51b131 100644 --- a/core/src/test/java/org/onap/aaf/cadi/test/JU_Passcode.java +++ b/core/src/test/java/org/onap/aaf/cadi/test/JU_Passcode.java @@ -32,6 +32,17 @@ import org.onap.aaf.cadi.Symm; import junit.framework.Assert; +import java.io.ByteArrayOutputStream; +import java.io.File; +import java.io.FileInputStream; + +import org.junit.AfterClass; +import org.junit.Test; +import org.onap.aaf.cadi.CmdLine; +import org.onap.aaf.cadi.Symm; + +import junit.framework.Assert; + public class JU_Passcode { @Test public void test() throws Exception { @@ -50,6 +61,7 @@ public class JU_Passcode { symm = Symm.obtain(fis); } finally { fis.close(); + fi.delete(); } String samples[] = {"activevos","ThisIsATestPassword","I have spaces","I have 's, /s and &s and _s"}; ByteArrayOutputStream baos; @@ -85,5 +97,10 @@ public class JU_Passcode { } + + @AfterClass + public static void tearDown() { + + } } diff --git a/core/tempkey b/core/tempkey deleted file mode 100644 index 0b1ba6b..0000000 --- a/core/tempkey +++ /dev/null @@ -1,27 +0,0 @@ -a4Ec8sSIn0w1fK5uL-BNBTwRhBGE8PGeJQqZpqS_xGrLqqlEGvgeQLBsBVUpYIBXYSEQLAcmR5Od -1Jh4eGYGUWgCRlLOLcLDzJSWTOxyfUCBH6fHfYftKY1qFu5YqF75cWAkl8xe9U_iJIBRXhMgoK-Z -Kzz0wCmGpZgNL-o6-wynfAiuobTomchucJTPzpRtIrw11F9SUCAEyNUEkz_bQAovGul1msyBOeY_ -OjrI0N8h6LeuFzeXhM3on2vXbWVg_tfbfYG4dPFaNXSb0Vj4OyZbx-wFEKNjZFx9SyNbamIEtt_o -9g_4Ho8L4mNKZZmxfvkalC06Ll8MZYENghRrbPEwFT17ODYrs83_ZU0r1z5iKuSiwccGpfNoNaC7 -OHWaGPijKXxtNHULuv4azSz7sFUSP_fheLs4qf3IJw8qJpQJLbpXnAT9awcCxkDom6ic12oAoyuP -n9S6etYv1NYumz5p3N1p5ZElHbYso-044-OYPFpBMNnsy3zcTMxH6nEEtm0FJsKFNKkP-z5fcyrc -hbXmdZM_KxNF4i4X-UOj7g8rpT64VL_iujv4YiKwEpJBAacLkdajKQ8PD5HsMvug_-2w7Xz2EObG -mfB07CGCCWHRs74UdXDgHl-3HD422VOY0hpV7syO_uj5CoHfvcrWydjiep-uqUQCkakbnxQLb3OO -eJTMAgCatFRbQWDSp5zyCJDYtRgwH4gqIz8UPm-27Nthka80Tp8dQXzCzyiqNeF99e0wmjy7fgSu -OPNmQGOvxyOo84k8ychwPAyGUmhldZ1o_P-t90s8N71DbWp0hDGmL34V8FtJYW9ZecEXM2sqnXES -EiPOxBjesYTrPaJ26as4MYJeG82ijkPj8dN6ejP9hFSR-PY8hm0i2Xc9LZyTTC4ukNjlRdjn7JjG -aPuPQRWNVVSdufjdn-hdVxdgv-rbqWm_jLFr-eWNVbGkPE0rhNy399YTcBPpelPlUucMwTCIU6jg -I77TJUDvS-JQBlQgZslIs-Wv-VSg3TYZnRSUDYKDa_FITem4I2Exi2QUydYHvCfcuoNLFa7sOeFg -W0bq32z0Djfamv-iyPJwSA3XeL4K_EAd7VuDvg0anhCNdvmXy1Ch-d-H9N0qwsj1bfa-kLwthkGE -mjF7kWh59--W2TB2uTWr2qsKsqIwDom7ZwnJwhxNsv7NvsMUjfBiSm6t_MCxWinhWLeyUITnZKdt -tlZW8DqzcT60sLYA13oE3r5H8HUCB3-PGwRgzTutcSFabK8s4IhGktR6lRGGTuFTtiTom7VRmGbs -8iCilsA6qQgzuzX_Zh41AwjxPUVWhYqt5oF3GeqMrAOS4f5MR9JV5O7sr1vwSvPna27MuO2OmnwB -vnSXHuuz3e5lnxlasb7bFuFfD4ZyHGp0mxDHtA3PQ7uloXbHCXB4kU2kXMma-9RacoCcx2B18xb9 -nvMMEK3WDlLtWUFwKVnO2soeyTBCKcIIaVjCtmS7C_s0vNIxBRXa8XHAIS4VKz8lUDMTheFXDcKm -uSe2LZ5jqWpPnDZbaKEhWyadlwhqRUa6704_pSP1TWqh_Nh4aDnevdlVD9PLXcynnmuuh1z6zDXI -DcTdeLVmsAniw9YqGk1wc2L7kXT2L1oMLX3Ssappu0Zii7yyyhQ4rIpel8DF4pcCA5PlOPqSgf3p -8vsFjoZwrG6gZx3ymQqPU2HsLzarn85QCrEOA31bIvA9nOxEVZaNvJplJg3PFtuGCdIISKJ6yu4N -eTmhXxFig-4FQO4l51spt9eWmEJnINe8qiFYgQv2AIyOtP5wSa7IlvW5jKIapVGkv34H69yqX0Ko -hz-iu-pSLKPSdGws000j-e03tYZSH0sGRmBI-3pBBhGqU4YlDKuCx88jhWckh4hmb4gGycu8b5JZ -vCkJfOil2tyseZcy9r59yOwuFDFJ5At6TCxfx6I9DziT4x_Vtr6StrHKP_-H-Luq5XvBa7UVMOoX -kd4wQ6Idy8vgrxPm1CDGpl4yQMQIsb4Nwz-tLpaIHIHLe5Gd3KLCxgSennbqMCCswcaaeVoA \ No newline at end of file diff --git a/core/test/AESKeyFile b/core/test/AESKeyFile new file mode 100644 index 0000000..36c1518 --- /dev/null +++ b/core/test/AESKeyFile @@ -0,0 +1,27 @@ +xteeS5pA6m4SW2fMANEeF__VDm3F2wlUqyeUKDKxlSFiS_ICs0Eg7Xeqj3WqbgRqOisc1hLIbyk3 +2bal9qYwT59VxcZy-vrS3ytf0uu5gWwxGfo2-ut3CQTBfwVOj88RMdiyM13-dxJGOdQxT9_Czc9A +it4edvcVQOTeazJ9JJ0KtO5tvsdihsaYYOVbMbMWPTzyDKY2KE7iMmPaqeGPLvxZSVvjQzjU8qMp +OwzllAhRXZd0DWOullSotpt8P2VKcbnoKVA2SQvLTt5Zd9TziaaCMP88-fJQUhXvWhUPG_ZdH2R1 +MVyS0WrnBN6rY2h_aTiUswYZ6GGTDa_7O4AQixNR02NAbn7718Mw3bbe12d6nJZ2uYqMb9Hl1bzO +-mZbJ_TUVAIUBgOb7XjScIS12JLlUuf-kIlQjfT2kfAzSuwcYHUZmB_jAfdZBjyhqVj4x7N47wb1 +7GbBBbECLAPMk9633_3HzadqZu6J3TmfmW2IYR9kqEF1NwfaXgJAL4I43YDSo2XyD-i9MUb3diYd +LVElQP8gwMh2gbfRe_7BU49_HdbCk4n6BNgT0Z0EgtnMAA0ZZWmBTJTz5BlC0lXL-7NAWyOw1vRs +ovjqc46zpQq8LYtJ2Vg5WwfpqBpyXqCdp9QYTNtN0GVB4iPBvaWRsQoZKzEESHavxKbGX2_Z7h2Q +k03Okhl4Ud3MduR6pyxfxVqAdFu3xr2tEIcv_FjyD-5XiTfKcWPw-Srwy-_YiTy_io4nu2swC8Xm +TsNcWtebM0W80L1nw0MwHFFIoAMBrHUjHxIrZL5JWZyaGxUdtnbKKlkVR1kDC8_pHrevwIijAEyi +NnwDYaMw7tZo6f06J3yPVCVzVLLXFCCTkvdJAFBhaZI600mf7UZP2BMqomYVROoQNZDAO_GzP1sX +_B4oebfYPkLk3fBkHasHPDZNy-oNHDEw8ytMXlMhyKX7UHUy28E8zpZWoRMmGPnzOSwp3P-Q08DP +ja05l6vgvGtzuWNUKcFjSTdqx73JJJ1-QrZZlTd0N1gYqhRyh8YssGDYXEHh5zKuF6vNTinJwGLY +P5NnOSBCbm9rcPcZGtZYer-uNUY9Z_rscfxiVork1SfnG25FwxCRkc_Nf47THAVM9T7m9Ou_g2N8 +eethvrQxDxEi_DVRBTJYe_9iUOec4KQY7VGhTiFbfvDPRB8yF7Znu5UPJXIeOjvcf9gi8lSwTTRx +sqRpB3D5SJUSnBGzOCUvYRBbGP0olaVYyVXLcDknRTKbwkIf0tKAEFRDkvkXdlJnQ4lldFHuuHO9 +G7_iqEjCCNncdtLZMwe6LPe1usfJmnl3x95wkpVQdAKl7QoP5fMR2XoXwQbSO2qwIdgBwq9Zm6FW +wRPStR0pS2ICjHusgmLPsdf2pVZ8q0fqjjzF4Ch7MfOWjhRsK9fCvVDXlrEOACTt7o0roXuswxKT +EEbibkLsEAQOfOCYa66G37yQKRNnR8PWeRLAaZGF8ewfqF0c2KBAQuLYFlE8OthP_vFDKfVT2zMX +BfneXOJNY2kZTEJA4MQOC4_Y1JJ7NJc1zqJRuPD8Ifo4oE1Qo2FE-mjm2G_Zb4XsmBEdWsiSAYum +2DiGm5Io7OXQXv2zOKsBvcoG-24A4M3kTxhEH16sueTKY_DqOjjxkcVIUX_PM7TGkeRU9cnJ2sDH +Y749blu8BWrRKSRiksxwwNAGW_IdElVVGd89gyGGRzZ2I4h-FXf9EBS1sqo-F_hOq_O3KOoMDFWK +gdc4XIqeqmjwVTSpkKyxSCFYQW-aPBuTSdJYmPZRQQlCXwkm7SHbLRBKM4h62koA8A3hpzda3qnZ +w_Wyb8u42yZpqNuUjUUOb4JApmOVCXIe4P9yfhiTbYRvGX50XjPIHBKjAzXhKLGaBaugBYhaGpXf +kFjvsEF-4PrtQWORKudvlk8D7DnhxqgJdG0GoZAETBTCq_m1trg2TJ2WyAMidFUOWrgGPpshFq1F +Nu7buFG6nsOsg4sfLmSm2oYhVb0TmEbBGRr_Apkg6nVJzX7DE_Rvt2slZDoIrXeKSbIJ_i5Y \ No newline at end of file diff --git a/core/test/CBUSevent.xml b/core/test/CBUSevent.xml new file mode 100644 index 0000000..c5735d6 --- /dev/null +++ b/core/test/CBUSevent.xml @@ -0,0 +1,46 @@ + + + app + + jar + + false + + + + + true + runtime + + + + + + target/classes + + + + diff --git a/pom.xml b/pom.xml index 81316c1..a4e4e00 100644 --- a/pom.xml +++ b/pom.xml @@ -295,9 +295,9 @@ **/JU_LocalLur.java - **/JU_BufferedServletInputStream.java - **/JU_Passcode.java - **/JU_XReader.java + + + **/JU_CASS.java **/JU_PropertyLocator.java **/JU_PermEval.java -- cgit 1.2.3-korg