X-Git-Url: https://code.wpia.club/?p=gigi.git;a=blobdiff_plain;f=tests%2Fclub%2Fwpia%2Fgigi%2FdbObjects%2FTestUserManaged.java;fp=tests%2Fclub%2Fwpia%2Fgigi%2FdbObjects%2FTestUserManaged.java;h=50ac27dc6d741fc59fab177192b579ebfc4fe772;hp=0000000000000000000000000000000000000000;hb=7da1e022744b277d2eaf2e445484cc2ec33f0fa5;hpb=305cf1415218d3d55a7e4106d39f35d70f09b117 diff --git a/tests/club/wpia/gigi/dbObjects/TestUserManaged.java b/tests/club/wpia/gigi/dbObjects/TestUserManaged.java new file mode 100644 index 00000000..50ac27dc --- /dev/null +++ b/tests/club/wpia/gigi/dbObjects/TestUserManaged.java @@ -0,0 +1,39 @@ +package club.wpia.gigi.dbObjects; + +import static org.junit.Assert.*; + +import java.io.IOException; +import java.security.GeneralSecurityException; +import java.security.KeyPair; + +import org.junit.Test; + +import club.wpia.gigi.GigiApiException; +import club.wpia.gigi.dbObjects.Certificate.CSRType; +import club.wpia.gigi.dbObjects.Certificate.SANType; +import club.wpia.gigi.testUtils.ManagedTest; + +public class TestUserManaged extends ManagedTest { + + @Test + public void testDeleteEmailWithCertificate() throws GigiApiException, GeneralSecurityException, IOException, InterruptedException { + + int id = createVerifiedUser("Test", "User", createUniqueName() + "test@test.tld", TEST_PASSWORD); + String email = createUniqueName() + "test@test.tld"; + User u = User.getById(id); + Certificate[] certs = u.getCertificates(false); + int certCount = certs.length; + EmailAddress testAddress = createVerifiedEmail(u, email); + KeyPair kp = generateKeypair(); + String key = generatePEMCSR(kp, "CN=" + email); + Certificate c = new Certificate(u, u, Certificate.buildDN("CN", email), Digest.SHA256, key, CSRType.CSR, getClientProfile(), new Certificate.SubjectAlternateName(SANType.EMAIL, email)); + c.issue(null, "2y", u).waitFor(60000); + + u.deleteEmail(testAddress); + + assertFalse(c.getRevocationDate().toString().isEmpty()); + certs = u.getCertificates(false); + assertEquals(certCount, certs.length); + + } +}