Package org.jivesoftware.smackx.ox
Class OXSecretKeyBackupIntegrationTest
- java.lang.Object
-
- org.igniterealtime.smack.inttest.AbstractSmackIntTest
-
- org.igniterealtime.smack.inttest.AbstractSmackIntegrationTest
-
- org.jivesoftware.smackx.ox.AbstractOpenPgpIntegrationTest
-
- org.jivesoftware.smackx.ox.OXSecretKeyBackupIntegrationTest
-
public class OXSecretKeyBackupIntegrationTest extends AbstractOpenPgpIntegrationTest
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.igniterealtime.smack.inttest.AbstractSmackIntTest
AbstractSmackIntTest.Condition
-
-
Field Summary
-
Fields inherited from class org.jivesoftware.smackx.ox.AbstractOpenPgpIntegrationTest
alice, aliceConnection, alicePepManager, bob, bobConnection, bobPepManager, chloe, chloeConnection, chloePepManager
-
Fields inherited from class org.igniterealtime.smack.inttest.AbstractSmackIntegrationTest
connection, connections, conOne, conThree, conTwo
-
Fields inherited from class org.igniterealtime.smack.inttest.AbstractSmackIntTest
INSECURE_RANDOM, LOGGER, sinttestConfiguration, testRunId, timeout
-
-
Constructor Summary
Constructors Constructor Description OXSecretKeyBackupIntegrationTest(SmackIntegrationTestEnvironment environment)This integration test tests the basic secret key backup and restore functionality as described in XEP-0373 §5.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static voidcleanStore()voidtest()-
Methods inherited from class org.igniterealtime.smack.inttest.AbstractSmackIntegrationTest
performActionAndWaitForPresence
-
Methods inherited from class org.igniterealtime.smack.inttest.AbstractSmackIntTest
createNewTempFile, getHttpUrlConnectionFor, performActionAndWaitUntilStanzaReceived, waitUntilTrue
-
-
-
-
Constructor Detail
-
OXSecretKeyBackupIntegrationTest
public OXSecretKeyBackupIntegrationTest(SmackIntegrationTestEnvironment environment) throws org.jivesoftware.smack.XMPPException.XMPPErrorException, TestNotPossibleException, org.jivesoftware.smack.SmackException.NotConnectedException, java.lang.InterruptedException, org.jivesoftware.smack.SmackException.NoResponseException
This integration test tests the basic secret key backup and restore functionality as described in XEP-0373 §5. In order to simulate two different devices, we are using twoFileBasedOpenPgpStoreimplementations 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 theOpenPgpStoreimplementation 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.- Parameters:
environment- TODO javadoc me please- Throws:
org.jivesoftware.smack.XMPPException.XMPPErrorException- if there was an XMPP error returned.TestNotPossibleException- if the test is not possible.org.jivesoftware.smack.SmackException.NotConnectedException- if the XMPP connection is not connected.java.lang.InterruptedException- if the calling thread was interrupted.org.jivesoftware.smack.SmackException.NoResponseException- if there was no response from the remote entity.- See Also:
- XEP-0373 §5: Synchronizing the Secret Key with a Private PEP Node
-
-
Method Detail
-
cleanStore
@AfterClass @BeforeClass public static void cleanStore() throws java.io.IOException
- Throws:
java.io.IOException
-
test
@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
- Throws:
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
-
-