public class OXSecretKeyBackupIntegrationTest extends AbstractOpenPgpIntegrationTest
AbstractSmackIntTest.Conditionalice, aliceConnection, alicePepManager, bob, bobConnection, bobPepManager, chloe, chloeConnection, chloePepManagerconnection, connections, conOne, conThree, conTwoINSECURE_RANDOM, LOGGER, sinttestConfiguration, testRunId, timeout| Constructor and Description |
|---|
OXSecretKeyBackupIntegrationTest(SmackIntegrationTestEnvironment environment)
This integration test tests the basic secret key backup and restore functionality as described
in XEP-0373 §5.
|
| Modifier and Type | Method and Description |
|---|---|
static void |
cleanStore() |
void |
test() |
performActionAndWaitForPresencecreateNewTempFile, getHttpUrlConnectionFor, performActionAndWaitUntilStanzaReceived, waitUntilTruepublic OXSecretKeyBackupIntegrationTest(SmackIntegrationTestEnvironment environment) throws org.jivesoftware.smack.XMPPException.XMPPErrorException, TestNotPossibleException, org.jivesoftware.smack.SmackException.NotConnectedException, java.lang.InterruptedException, org.jivesoftware.smack.SmackException.NoResponseException
FileBasedOpenPgpStore implementations
which point to different directories.
First, Alice generates a fresh OpenPGP key pair.
She then creates a backup of the key in her private PEP node.
Now the OpenPgpStore implementation is replaced by another instance to simulate a different device.
Then the secret key backup is restored from PubSub and the imported secret key is compared to the one in
the original store.
Afterwards the private PEP node is deleted from PubSub and the storage directories are emptied.environment - TODO javadoc me pleaseXMPPException.XMPPErrorException - if there was an XMPP error returned.TestNotPossibleException - if the test is not possible.SmackException.NotConnectedException - if the XMPP connection is not connected.java.lang.InterruptedException - if the calling thread was interrupted.SmackException.NoResponseException - if there was no response from the remote entity.@AfterClass @BeforeClass public static void cleanStore() throws java.io.IOException
java.io.IOException@SmackIntegrationTest public void test() throws java.security.InvalidAlgorithmParameterException, java.security.NoSuchAlgorithmException, java.security.NoSuchProviderException, java.io.IOException, java.lang.InterruptedException, org.jivesoftware.smackx.pubsub.PubSubException.NotALeafNodeException, org.jivesoftware.smack.SmackException.NoResponseException, org.jivesoftware.smack.SmackException.NotConnectedException, org.jivesoftware.smack.XMPPException.XMPPErrorException, org.jivesoftware.smack.SmackException.NotLoggedInException, org.jivesoftware.smack.SmackException.FeatureNotSupportedException, org.jivesoftware.smackx.ox.exception.MissingUserIdOnKeyException, org.jivesoftware.smackx.ox.exception.NoBackupFoundException, org.jivesoftware.smackx.ox.exception.InvalidBackupCodeException, org.bouncycastle.openpgp.PGPException, org.jivesoftware.smackx.ox.exception.MissingOpenPgpKeyException
java.security.InvalidAlgorithmParameterExceptionjava.security.NoSuchAlgorithmExceptionjava.security.NoSuchProviderExceptionjava.io.IOExceptionjava.lang.InterruptedExceptionorg.jivesoftware.smackx.pubsub.PubSubException.NotALeafNodeExceptionorg.jivesoftware.smack.SmackException.NoResponseExceptionorg.jivesoftware.smack.SmackException.NotConnectedExceptionorg.jivesoftware.smack.XMPPException.XMPPErrorExceptionorg.jivesoftware.smack.SmackException.NotLoggedInExceptionorg.jivesoftware.smack.SmackException.FeatureNotSupportedExceptionorg.jivesoftware.smackx.ox.exception.MissingUserIdOnKeyExceptionorg.jivesoftware.smackx.ox.exception.NoBackupFoundExceptionorg.jivesoftware.smackx.ox.exception.InvalidBackupCodeExceptionorg.bouncycastle.openpgp.PGPExceptionorg.jivesoftware.smackx.ox.exception.MissingOpenPgpKeyException