diff options
author | 2018-02-20 12:00:10 -0500 | |
---|---|---|
committer | 2018-02-20 12:00:10 -0500 | |
commit | 724ff8f8b22d6503ce5070ebc13f6f5fbc48c8cf (patch) | |
tree | 063414ae8d035fe9957cba3833661a915c1f8eff /ecomp-sdk/epsdk-app-common/src/test/java/org/onap/portalapp/util/SecurityXssValidatorTest.java | |
parent | 20602aa99841048e65a36dc26d8bfc4d6a11fcc9 (diff) |
Increase JUNIT Coverage
Issue-ID: PORTAL-136
Change-Id: I2223003924f36043753bef401ed1d8ee87f4a65e
Signed-off-by: st782s <statta@research.att.com>
Diffstat (limited to 'ecomp-sdk/epsdk-app-common/src/test/java/org/onap/portalapp/util/SecurityXssValidatorTest.java')
-rw-r--r-- | ecomp-sdk/epsdk-app-common/src/test/java/org/onap/portalapp/util/SecurityXssValidatorTest.java | 110 |
1 files changed, 110 insertions, 0 deletions
diff --git a/ecomp-sdk/epsdk-app-common/src/test/java/org/onap/portalapp/util/SecurityXssValidatorTest.java b/ecomp-sdk/epsdk-app-common/src/test/java/org/onap/portalapp/util/SecurityXssValidatorTest.java new file mode 100644 index 00000000..fa1af38c --- /dev/null +++ b/ecomp-sdk/epsdk-app-common/src/test/java/org/onap/portalapp/util/SecurityXssValidatorTest.java @@ -0,0 +1,110 @@ +/*- + * ============LICENSE_START========================================== + * ONAP Portal + * =================================================================== + * Copyright © 2017 AT&T Intellectual Property. All rights reserved. + * =================================================================== + * + * Unless otherwise specified, all software contained herein is licensed + * under the Apache License, Version 2.0 (the "License"); + * you may not use this software 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. + * + * Unless otherwise specified, all documentation contained herein is licensed + * under the Creative Commons License, Attribution 4.0 Intl. (the "License"); + * you may not use this documentation except in compliance with the License. + * You may obtain a copy of the License at + * + * https://creativecommons.org/licenses/by/4.0/ + * + * Unless required by applicable law or agreed to in writing, documentation + * 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.portalapp.util; + +import org.apache.commons.lang.StringUtils; +import org.junit.Assert; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.mockito.Mockito; +import org.onap.portalsdk.core.util.SystemProperties; +import org.owasp.esapi.ESAPI; +import org.owasp.esapi.Encoder; +import org.owasp.esapi.codecs.Codec; +import org.powermock.api.mockito.PowerMockito; +import org.powermock.core.classloader.annotations.PrepareForTest; +import org.powermock.modules.junit4.PowerMockRunner; + +@RunWith(PowerMockRunner.class) +@PrepareForTest({ESAPI.class, SystemProperties.class}) +public class SecurityXssValidatorTest { + + @Test + public void stripXSSTest() { + String value ="Test"; + PowerMockito.mockStatic(ESAPI.class); + Encoder mockEncoder = Mockito.mock(Encoder.class); + Mockito.when(ESAPI.encoder()).thenReturn(mockEncoder); + Mockito.when(mockEncoder.canonicalize(value)).thenReturn(value); + SecurityXssValidator validator = SecurityXssValidator.getInstance(); + String reponse = validator.stripXSS(value); + Assert.assertEquals(value, reponse);; + } + + @Test + public void stripXSSExceptionTest() { + String value ="Test"; + SecurityXssValidator validator = SecurityXssValidator.getInstance(); + String reponse = validator.stripXSS(value); + Assert.assertEquals(value, reponse);; + } + + @Test + public void denyXSSTest() { + String value ="<script>Test</script>"; + PowerMockito.mockStatic(ESAPI.class); + Encoder mockEncoder = Mockito.mock(Encoder.class); + Mockito.when(ESAPI.encoder()).thenReturn(mockEncoder); + Mockito.when(mockEncoder.canonicalize(value)).thenReturn(value); + SecurityXssValidator validator = SecurityXssValidator.getInstance(); + Boolean flag = validator.denyXSS(value); + Assert.assertTrue(flag); + } + + @Test + public void denyXSSFalseTest() { + String value ="test"; + PowerMockito.mockStatic(ESAPI.class); + Encoder mockEncoder = Mockito.mock(Encoder.class); + Mockito.when(ESAPI.encoder()).thenReturn(mockEncoder); + Mockito.when(mockEncoder.canonicalize(value)).thenReturn(value); + SecurityXssValidator validator = SecurityXssValidator.getInstance(); + Boolean flag = validator.denyXSS(value); + Assert.assertFalse(flag); + } + + @Test + public void getCodecMySqlTest() { + PowerMockito.mockStatic(SystemProperties.class); + Mockito.when(SystemProperties.getProperty(SystemProperties.DB_DRIVER)).thenReturn("mysql"); + SecurityXssValidator validator = SecurityXssValidator.getInstance(); + Codec codec = validator.getCodec(); + Assert.assertNotNull(codec); + } + +} |