mirror of
https://code.briarproject.org/briar/briar.git
synced 2026-02-13 19:29:06 +01:00
Separated contact transports from secrets and cleaned up some tests.
This commit is contained in:
@@ -153,21 +153,14 @@ public class ProtocolIntegrationTest extends BriarTestCase {
|
||||
Ack a = packetFactory.createAck(Collections.singletonList(ack));
|
||||
writer.writeAck(a);
|
||||
|
||||
Collection<byte[]> batch = Arrays.asList(new byte[][] {
|
||||
message.getSerialised(),
|
||||
message1.getSerialised(),
|
||||
message2.getSerialised(),
|
||||
message3.getSerialised()
|
||||
});
|
||||
Collection<byte[]> batch = Arrays.asList(message.getSerialised(),
|
||||
message1.getSerialised(), message2.getSerialised(),
|
||||
message3.getSerialised());
|
||||
RawBatch b = packetFactory.createBatch(batch);
|
||||
writer.writeBatch(b);
|
||||
|
||||
Collection<MessageId> offer = Arrays.asList(new MessageId[] {
|
||||
message.getId(),
|
||||
message1.getId(),
|
||||
message2.getId(),
|
||||
message3.getId()
|
||||
});
|
||||
Collection<MessageId> offer = Arrays.asList(message.getId(),
|
||||
message1.getId(), message2.getId(), message3.getId());
|
||||
Offer o = packetFactory.createOffer(offer);
|
||||
writer.writeOffer(o);
|
||||
|
||||
|
||||
@@ -639,10 +639,9 @@ public abstract class DatabaseComponentTest extends BriarTestCase {
|
||||
public void testGenerateBatch() throws Exception {
|
||||
final MessageId messageId1 = new MessageId(TestUtils.getRandomId());
|
||||
final byte[] raw1 = new byte[size];
|
||||
final Collection<MessageId> sendable =
|
||||
Arrays.asList(new MessageId[] {messageId, messageId1});
|
||||
final Collection<byte[]> messages =
|
||||
Arrays.asList(new byte[][] {raw, raw1});
|
||||
final Collection<MessageId> sendable = Arrays.asList(messageId,
|
||||
messageId1);
|
||||
final Collection<byte[]> messages = Arrays.asList(raw, raw1);
|
||||
Mockery context = new Mockery();
|
||||
@SuppressWarnings("unchecked")
|
||||
final Database<Object> database = context.mock(Database.class);
|
||||
@@ -689,7 +688,7 @@ public abstract class DatabaseComponentTest extends BriarTestCase {
|
||||
requested.add(messageId);
|
||||
requested.add(messageId1);
|
||||
requested.add(messageId2);
|
||||
final Collection<byte[]> msgs = Arrays.asList(new byte[][] {raw1});
|
||||
final Collection<byte[]> msgs = Arrays.asList(raw1);
|
||||
Mockery context = new Mockery();
|
||||
@SuppressWarnings("unchecked")
|
||||
final Database<Object> database = context.mock(Database.class);
|
||||
@@ -1477,8 +1476,7 @@ public abstract class DatabaseComponentTest extends BriarTestCase {
|
||||
@Test
|
||||
public void testVisibilityChangedCallsListeners() throws Exception {
|
||||
final ContactId contactId1 = new ContactId(123);
|
||||
final Collection<ContactId> both =
|
||||
Arrays.asList(new ContactId[] {contactId, contactId1});
|
||||
final Collection<ContactId> both = Arrays.asList(contactId, contactId1);
|
||||
Mockery context = new Mockery();
|
||||
@SuppressWarnings("unchecked")
|
||||
final Database<Object> database = context.mock(Database.class);
|
||||
@@ -1510,8 +1508,7 @@ public abstract class DatabaseComponentTest extends BriarTestCase {
|
||||
@Test
|
||||
public void testVisibilityUnchangedDoesNotCallListeners() throws Exception {
|
||||
final ContactId contactId1 = new ContactId(234);
|
||||
final Collection<ContactId> both =
|
||||
Arrays.asList(new ContactId[] {contactId, contactId1});
|
||||
final Collection<ContactId> both = Arrays.asList(contactId, contactId1);
|
||||
Mockery context = new Mockery();
|
||||
@SuppressWarnings("unchecked")
|
||||
final Database<Object> database = context.mock(Database.class);
|
||||
|
||||
@@ -25,6 +25,7 @@ import net.sf.briar.api.TransportConfig;
|
||||
import net.sf.briar.api.TransportProperties;
|
||||
import net.sf.briar.api.clock.SystemClock;
|
||||
import net.sf.briar.api.crypto.Password;
|
||||
import net.sf.briar.api.db.ContactTransport;
|
||||
import net.sf.briar.api.db.DbException;
|
||||
import net.sf.briar.api.db.MessageHeader;
|
||||
import net.sf.briar.api.db.Status;
|
||||
@@ -1720,6 +1721,59 @@ public class H2DatabaseTest extends BriarTestCase {
|
||||
|
||||
// FIXME: Test new methods
|
||||
|
||||
@Test
|
||||
public void testContactTransports() throws Exception {
|
||||
// Create some contact transports
|
||||
TransportId transportId1 = new TransportId(TestUtils.getRandomId());
|
||||
ContactTransport ct1 = new ContactTransport(contactId, transportId,
|
||||
123L, 2345L, 34567L, true);
|
||||
ContactTransport ct2 = new ContactTransport(contactId, transportId1,
|
||||
12345L, 2345L, 345L, false);
|
||||
|
||||
Database<Connection> db = open(false);
|
||||
Connection txn = db.startTransaction();
|
||||
|
||||
// Initially there should be no contact transports in the database
|
||||
assertEquals(Collections.emptyList(), db.getContactTransports(txn));
|
||||
|
||||
// Add a contact and the contact transports
|
||||
assertEquals(contactId, db.addContact(txn));
|
||||
db.addContactTransport(txn, ct1);
|
||||
db.addContactTransport(txn, ct2);
|
||||
|
||||
// Retrieve the contact transports
|
||||
Collection<ContactTransport> cts = db.getContactTransports(txn);
|
||||
assertEquals(2, cts.size());
|
||||
boolean foundFirst = false, foundSecond = false;
|
||||
for(ContactTransport ct : cts) {
|
||||
assertEquals(contactId, ct.getContactId());
|
||||
if(ct.getTransportId().equals(transportId)) {
|
||||
assertEquals(123L, ct.getEpoch());
|
||||
assertEquals(2345L, ct.getClockDifference());
|
||||
assertEquals(34567L, ct.getLatency());
|
||||
assertTrue(ct.getAlice());
|
||||
foundFirst = true;
|
||||
} else if(ct.getTransportId().equals(transportId1)) {
|
||||
assertEquals(12345L, ct.getEpoch());
|
||||
assertEquals(2345L, ct.getClockDifference());
|
||||
assertEquals(345L, ct.getLatency());
|
||||
assertFalse(ct.getAlice());
|
||||
foundSecond = true;
|
||||
} else {
|
||||
fail();
|
||||
}
|
||||
}
|
||||
assertTrue(foundFirst);
|
||||
assertTrue(foundSecond);
|
||||
|
||||
// Removing the contact should remove the contact transports
|
||||
db.removeContact(txn, contactId);
|
||||
assertEquals(Collections.emptyList(), db.getContactTransports(txn));
|
||||
|
||||
db.commitTransaction(txn);
|
||||
db.close();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testExceptionHandling() throws Exception {
|
||||
Database<Connection> db = open(false);
|
||||
|
||||
@@ -30,7 +30,7 @@ public class PollingRemovableDriveMonitorTest extends BriarTestCase {
|
||||
|
||||
public Collection<File> findRemovableDrives() throws IOException {
|
||||
if(firstCall.getAndSet(false)) return Collections.emptyList();
|
||||
else return Arrays.asList(new File[] {file1, file2});
|
||||
else return Arrays.asList(file1, file2);
|
||||
}
|
||||
};
|
||||
// Create a callback that waits for two files
|
||||
|
||||
@@ -66,9 +66,9 @@ public class UnverifiedBatchImplTest extends BriarTestCase {
|
||||
// Verify the batch
|
||||
Mockery context = new Mockery();
|
||||
final UnverifiedMessage message =
|
||||
context.mock(UnverifiedMessage.class, "message");
|
||||
context.mock(UnverifiedMessage.class, "message");
|
||||
final UnverifiedMessage message1 =
|
||||
context.mock(UnverifiedMessage.class, "message1");
|
||||
context.mock(UnverifiedMessage.class, "message1");
|
||||
context.checking(new Expectations() {{
|
||||
// First message
|
||||
oneOf(message).getRaw();
|
||||
@@ -105,8 +105,8 @@ public class UnverifiedBatchImplTest extends BriarTestCase {
|
||||
oneOf(message1).getBodyLength();
|
||||
will(returnValue(1000));
|
||||
}});
|
||||
Collection<UnverifiedMessage> messages =
|
||||
Arrays.asList(new UnverifiedMessage[] {message, message1});
|
||||
Collection<UnverifiedMessage> messages = Arrays.asList(message,
|
||||
message1);
|
||||
UnverifiedBatch batch = new UnverifiedBatchImpl(crypto, messages);
|
||||
Batch verifiedBatch = batch.verify();
|
||||
// Check that the batch and message IDs match
|
||||
@@ -137,11 +137,11 @@ public class UnverifiedBatchImplTest extends BriarTestCase {
|
||||
// Verify the batch
|
||||
Mockery context = new Mockery();
|
||||
final UnverifiedMessage message =
|
||||
context.mock(UnverifiedMessage.class, "message");
|
||||
context.mock(UnverifiedMessage.class, "message");
|
||||
final Author author = context.mock(Author.class);
|
||||
final Group group = context.mock(Group.class);
|
||||
final UnverifiedMessage message1 =
|
||||
context.mock(UnverifiedMessage.class, "message1");
|
||||
context.mock(UnverifiedMessage.class, "message1");
|
||||
context.checking(new Expectations() {{
|
||||
// First message
|
||||
oneOf(message).getRaw();
|
||||
@@ -194,8 +194,8 @@ public class UnverifiedBatchImplTest extends BriarTestCase {
|
||||
oneOf(message1).getBodyLength();
|
||||
will(returnValue(1000));
|
||||
}});
|
||||
Collection<UnverifiedMessage> messages =
|
||||
Arrays.asList(new UnverifiedMessage[] {message, message1});
|
||||
Collection<UnverifiedMessage> messages = Arrays.asList(message,
|
||||
message1);
|
||||
UnverifiedBatch batch = new UnverifiedBatchImpl(crypto, messages);
|
||||
batch.verify();
|
||||
context.assertIsSatisfied();
|
||||
@@ -215,10 +215,10 @@ public class UnverifiedBatchImplTest extends BriarTestCase {
|
||||
// Verify the batch
|
||||
Mockery context = new Mockery();
|
||||
final UnverifiedMessage message =
|
||||
context.mock(UnverifiedMessage.class, "message");
|
||||
context.mock(UnverifiedMessage.class, "message");
|
||||
final Author author = context.mock(Author.class);
|
||||
final UnverifiedMessage message1 =
|
||||
context.mock(UnverifiedMessage.class, "message1");
|
||||
context.mock(UnverifiedMessage.class, "message1");
|
||||
context.checking(new Expectations() {{
|
||||
// First message - verification will fail at the author's signature
|
||||
oneOf(message).getRaw();
|
||||
@@ -232,8 +232,8 @@ public class UnverifiedBatchImplTest extends BriarTestCase {
|
||||
oneOf(message).getAuthorSignature();
|
||||
will(returnValue(authorSignature));
|
||||
}});
|
||||
Collection<UnverifiedMessage> messages =
|
||||
Arrays.asList(new UnverifiedMessage[] {message, message1});
|
||||
Collection<UnverifiedMessage> messages = Arrays.asList(message,
|
||||
message1);
|
||||
UnverifiedBatch batch = new UnverifiedBatchImpl(crypto, messages);
|
||||
try {
|
||||
batch.verify();
|
||||
|
||||
@@ -65,7 +65,7 @@ public class ConnectionRegistryImplTest extends BriarTestCase {
|
||||
c.registerConnection(contactId, transportId);
|
||||
c.registerConnection(contactId1, transportId);
|
||||
c.registerConnection(contactId1, transportId1);
|
||||
assertEquals(Arrays.asList(new ContactId[] {contactId, contactId1}),
|
||||
assertEquals(Arrays.asList(contactId, contactId1),
|
||||
c.getConnectedContacts(transportId));
|
||||
assertEquals(Collections.singletonList(contactId1),
|
||||
c.getConnectedContacts(transportId1));
|
||||
|
||||
Reference in New Issue
Block a user