// TODO: revisit this test to work without BC
if (!SecurityUtils.isBouncyCastleRegistered()) {
return;
}
AgentServer agent = new AgentServer();
String authSocket;
try {
authSocket = agent.start();
} catch (UnsatisfiedLinkError e) {
// the native library is not available, so these tests should be skipped
authSocket = null;
}
assumeThat(authSocket, notNullValue());
SshAgent client = new AgentClient(authSocket);
List<SshAgent.Pair<PublicKey, String>> keys = client.getIdentities();
assertNotNull(keys);
assertEquals(0, keys.size());
KeyPair k = Utils.createTestHostKeyProvider().loadKey(KeyPairProvider.SSH_RSA);
client.addIdentity(k, "");
keys = client.getIdentities();
assertNotNull(keys);
assertEquals(1, keys.size());
client.removeIdentity(k.getPublic());
keys = client.getIdentities();
assertNotNull(keys);
assertEquals(0, keys.size());
client.removeAllIdentities();
client.close();
agent.close();
}