1 package org.openecomp.sdc.vendorsoftwareproduct.security;
3 import org.apache.commons.io.FileUtils;
4 import org.junit.After;
5 import org.junit.Before;
7 import org.junit.runner.RunWith;
8 import org.powermock.api.mockito.PowerMockito;
9 import org.powermock.core.classloader.annotations.PrepareForTest;
10 import org.powermock.modules.junit4.PowerMockRunner;
13 import java.io.IOException;
15 import static junit.framework.TestCase.assertEquals;
16 import static junit.framework.TestCase.assertTrue;
17 import static org.mockito.ArgumentMatchers.eq;
19 @RunWith(PowerMockRunner.class)
20 @PrepareForTest(SecurityManager.class)
21 public class SecurityManagerTest {
26 certDir = new File("/tmp/cert");
28 PowerMockito.mockStatic(System.class);
29 PowerMockito.when(System.getenv(eq("SDC_CERT_DIR"))).thenReturn(certDir.getPath());
33 public void tearDown(){
38 public void testGetCertificates() throws IOException {
39 File origFile = new File("src/test/resources/cert/root-certificate.pem");
40 File newFile = new File("/tmp/cert/root-certificate.pem");
41 newFile.createNewFile();
42 FileUtils.copyFile(origFile, newFile);
43 SecurityManager securityManager = new SecurityManager();
44 assertEquals(1, securityManager.getCertificates().size());
46 assertEquals(0, securityManager.getCertificates().size());
50 public void testGetCertificatesNoDirectory() throws IOException {
52 SecurityManager securityManager = new SecurityManager();
53 assertEquals(0, securityManager.getCertificates().size());
56 @Test(expected = SecurityManagerException.class)
57 public void testGetCertificatesException() throws IOException {
58 File newFile = new File("/tmp/cert/root-certificate.pem");
59 newFile.createNewFile();
60 SecurityManager securityManager = new SecurityManager();
61 assertEquals(1, securityManager.getCertificates().size());
63 assertEquals(0, securityManager.getCertificates().size());
67 public void testGetCertificatesUpdated() throws IOException {
68 File origFile = new File("src/test/resources/cert/root-certificate.pem");
69 File newFile = new File("/tmp/cert/root-certificate.pem");
70 newFile.createNewFile();
71 FileUtils.copyFile(origFile, newFile);
72 SecurityManager securityManager = new SecurityManager();
73 assertTrue(securityManager.getCertificates().size() == 1);
74 File otherOrigFile = new File("src/test/resources/cert/package-certificate.pem");
75 File otherNewFile = new File("/tmp/cert/package-certificate.pem");
76 newFile.createNewFile();
77 FileUtils.copyFile(otherOrigFile, otherNewFile);
78 assertEquals(2, securityManager.getCertificates().size());
79 otherNewFile.delete();
80 assertEquals(1, securityManager.getCertificates().size());
82 assertEquals(0, securityManager.getCertificates().size());