Address review issues

This commit is contained in:
Torsten Grote
2016-12-07 14:31:12 -02:00
parent b7ce7de42a
commit ba1a19d236
2 changed files with 121 additions and 184 deletions

View File

@@ -208,7 +208,7 @@ public class CreatorProtocolEngineTest extends AbstractProtocolEngineTest {
// onInviteMessage
@Test
public void testOnInviteMessageInAnyState() throws Exception {
public void testOnInviteMessageInAnyStateWhenSubscribed() throws Exception {
expectIsSubscribedPrivateGroup();
expectSetPrivateGroupVisibility(INVISIBLE);
expectSendAbortMessage();
@@ -217,15 +217,29 @@ public class CreatorProtocolEngineTest extends AbstractProtocolEngineTest {
engine.onInviteMessage(txn, session, inviteMessage);
assertEquals(ERROR, newSession.getState());
expectIsSubscribedPrivateGroup();
expectSetPrivateGroupVisibility(INVISIBLE);
expectSendAbortMessage();
expectAbortWhenSubscribedToGroup();
session = getDefaultSession(START);
newSession =
engine.onInviteMessage(txn, session, inviteMessage);
assertSessionAborted(session, newSession);
}
@Test
public void testOnInviteMessageInAnyStateWhenNotSubscribed()
throws Exception {
expectIsSubscribedPrivateGroup();
expectSetPrivateGroupVisibility(INVISIBLE);
expectSendAbortMessage();
CreatorSession session = getDefaultSession(LEFT);
CreatorSession newSession =
engine.onInviteMessage(txn, session, inviteMessage);
assertEquals(ERROR, newSession.getState());
assertSessionRecordedSentMessage(newSession);
assertSessionConstantsUnchanged(session, newSession);
expectAbortWhenNotSubscribedToGroup();
session = getDefaultSession(START);
newSession =
engine.onInviteMessage(txn, session, inviteMessage);
assertSessionAborted(session, newSession);
}
// onJoinMessage
@@ -234,42 +248,30 @@ public class CreatorProtocolEngineTest extends AbstractProtocolEngineTest {
public void testOnJoinMessageFromStart() throws Exception {
CreatorSession session = getDefaultSession(START);
expectIsSubscribedPrivateGroup();
expectSetPrivateGroupVisibility(INVISIBLE);
expectSendAbortMessage();
expectAbortWhenSubscribedToGroup();
CreatorSession newSession =
engine.onJoinMessage(txn, session, joinMessage);
assertEquals(ERROR, newSession.getState());
assertSessionRecordedSentMessage(newSession);
assertSessionConstantsUnchanged(session, newSession);
assertSessionAborted(session, newSession);
}
@Test
public void testOnJoinMessageFromJoined() throws Exception {
CreatorSession session = getDefaultSession(JOINED);
expectIsSubscribedPrivateGroup();
expectSetPrivateGroupVisibility(INVISIBLE);
expectSendAbortMessage();
expectAbortWhenSubscribedToGroup();
CreatorSession newSession =
engine.onJoinMessage(txn, session, joinMessage);
assertEquals(ERROR, newSession.getState());
assertSessionRecordedSentMessage(newSession);
assertSessionConstantsUnchanged(session, newSession);
assertSessionAborted(session, newSession);
}
@Test
public void testOnJoinMessageFromLeft() throws Exception {
CreatorSession session = getDefaultSession(LEFT);
expectIsSubscribedPrivateGroup();
expectSetPrivateGroupVisibility(INVISIBLE);
expectSendAbortMessage();
expectAbortWhenSubscribedToGroup();
CreatorSession newSession =
engine.onJoinMessage(txn, session, joinMessage);
assertEquals(ERROR, newSession.getState());
assertSessionRecordedSentMessage(newSession);
assertSessionConstantsUnchanged(session, newSession);
assertSessionAborted(session, newSession);
}
@Test
@@ -277,14 +279,10 @@ public class CreatorProtocolEngineTest extends AbstractProtocolEngineTest {
throws Exception {
CreatorSession session = getDefaultSession(INVITED);
expectIsSubscribedPrivateGroup();
expectSetPrivateGroupVisibility(INVISIBLE);
expectSendAbortMessage();
expectAbortWhenSubscribedToGroup();
CreatorSession newSession =
engine.onJoinMessage(txn, session, joinMessage);
assertEquals(ERROR, newSession.getState());
assertSessionRecordedSentMessage(newSession);
assertSessionConstantsUnchanged(session, newSession);
assertSessionAborted(session, newSession);
}
@Test
@@ -295,14 +293,10 @@ public class CreatorProtocolEngineTest extends AbstractProtocolEngineTest {
new JoinMessage(messageId, contactGroupId, privateGroupId,
inviteTimestamp + 1, messageId);
expectIsSubscribedPrivateGroup();
expectSetPrivateGroupVisibility(INVISIBLE);
expectSendAbortMessage();
expectAbortWhenSubscribedToGroup();
CreatorSession newSession =
engine.onJoinMessage(txn, session, invalidJoinMessage);
assertEquals(ERROR, newSession.getState());
assertSessionRecordedSentMessage(newSession);
assertSessionConstantsUnchanged(session, newSession);
assertSessionAborted(session, newSession);
}
@Test
@@ -354,42 +348,30 @@ public class CreatorProtocolEngineTest extends AbstractProtocolEngineTest {
inviteTimestamp, lastLocalMessageId);
CreatorSession session = getDefaultSession(START);
expectIsSubscribedPrivateGroup();
expectSetPrivateGroupVisibility(INVISIBLE);
expectSendAbortMessage();
expectAbortWhenSubscribedToGroup();
CreatorSession newSession =
engine.onLeaveMessage(txn, session, leaveMessage);
assertEquals(ERROR, newSession.getState());
assertSessionRecordedSentMessage(newSession);
assertSessionConstantsUnchanged(session, newSession);
assertSessionAborted(session, newSession);
}
@Test
public void testOnLeaveMessageFromLeft() throws Exception {
CreatorSession session = getDefaultSession(LEFT);
expectIsSubscribedPrivateGroup();
expectSetPrivateGroupVisibility(INVISIBLE);
expectSendAbortMessage();
expectAbortWhenSubscribedToGroup();
CreatorSession newSession =
engine.onLeaveMessage(txn, session, leaveMessage);
assertEquals(ERROR, newSession.getState());
assertSessionRecordedSentMessage(newSession);
assertSessionConstantsUnchanged(session, newSession);
assertSessionAborted(session, newSession);
}
@Test
public void testOnLeaveMessageFromInvitedWithWrongTime() throws Exception {
CreatorSession session = getDefaultSession(INVITED);
expectIsSubscribedPrivateGroup();
expectSetPrivateGroupVisibility(INVISIBLE);
expectSendAbortMessage();
expectAbortWhenSubscribedToGroup();
CreatorSession newSession =
engine.onLeaveMessage(txn, session, leaveMessage);
assertEquals(ERROR, newSession.getState());
assertSessionRecordedSentMessage(newSession);
assertSessionConstantsUnchanged(session, newSession);
assertSessionAborted(session, newSession);
}
@Test
@@ -400,14 +382,10 @@ public class CreatorProtocolEngineTest extends AbstractProtocolEngineTest {
inviteTimestamp + 1, lastLocalMessageId);
CreatorSession session = getDefaultSession(INVITED);
expectIsSubscribedPrivateGroup();
expectSetPrivateGroupVisibility(INVISIBLE);
expectSendAbortMessage();
expectAbortWhenSubscribedToGroup();
CreatorSession newSession =
engine.onLeaveMessage(txn, session, invalidLeaveMessage);
assertEquals(ERROR, newSession.getState());
assertSessionRecordedSentMessage(newSession);
assertSessionConstantsUnchanged(session, newSession);
assertSessionAborted(session, newSession);
}
@Test
@@ -461,23 +439,37 @@ public class CreatorProtocolEngineTest extends AbstractProtocolEngineTest {
expectSendAbortMessage();
CreatorSession newSession =
engine.onAbortMessage(txn, session, abortMessage);
assertEquals(ERROR, newSession.getState());
assertSessionRecordedSentMessage(newSession);
assertSessionConstantsUnchanged(session, newSession);
assertSessionAborted(session, newSession);
}
@Test
public void testOnAbortMessageWhenSubscribed() throws Exception {
CreatorSession session = getDefaultSession(START);
expectAbortWhenSubscribedToGroup();
CreatorSession newSession =
engine.onAbortMessage(txn, session, abortMessage);
assertSessionAborted(session, newSession);
}
// helper methods
private void expectAbortWhenSubscribedToGroup() throws Exception {
expectIsSubscribedPrivateGroup();
expectSetPrivateGroupVisibility(INVISIBLE);
expectSendAbortMessage();
CreatorSession newSession =
engine.onAbortMessage(txn, session, abortMessage);
}
private void expectAbortWhenNotSubscribedToGroup() throws Exception {
expectIsNotSubscribedPrivateGroup();
expectSendAbortMessage();
}
private void assertSessionAborted(CreatorSession oldSession,
CreatorSession newSession) throws Exception {
assertEquals(ERROR, newSession.getState());
assertSessionRecordedSentMessage(newSession);
assertSessionConstantsUnchanged(session, newSession);
assertSessionConstantsUnchanged(oldSession, newSession);
}
}

View File

@@ -30,6 +30,8 @@ import static org.briarproject.briar.privategroup.invitation.InviteeState.LEFT;
import static org.briarproject.briar.privategroup.invitation.InviteeState.START;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertTrue;
public class InviteeProtocolEngineTest extends AbstractProtocolEngineTest {
@@ -311,13 +313,10 @@ public class InviteeProtocolEngineTest extends AbstractProtocolEngineTest {
assertTrue(
inviteMessage.getTimestamp() <= session.getInviteTimestamp());
expectAbort();
expectAbortWhenSubscribedToGroup();
InviteeSession newSession =
engine.onInviteMessage(txn, session, inviteMessage);
assertEquals(ERROR, newSession.getState());
assertSessionRecordedSentMessage(newSession);
assertSessionConstantsUnchanged(session, newSession);
assertSessionAborted(session, newSession);
}
@Test
@@ -337,14 +336,11 @@ public class InviteeProtocolEngineTest extends AbstractProtocolEngineTest {
oneOf(db).getContact(txn, contactId);
will(returnValue(contact));
}});
expectAbort();
expectAbortWhenSubscribedToGroup();
InviteeSession newSession =
engine.onInviteMessage(txn, session, properInviteMessage);
assertEquals(ERROR, newSession.getState());
assertSessionRecordedSentMessage(newSession);
assertSessionConstantsUnchanged(session, newSession);
assertSessionAborted(session, newSession);
}
@Test
@@ -393,62 +389,47 @@ public class InviteeProtocolEngineTest extends AbstractProtocolEngineTest {
@Test
public void testOnInviteMessageFromInvited() throws Exception {
expectAbort();
expectAbortWhenSubscribedToGroup();
InviteeSession session = getDefaultSession(INVITED);
InviteeSession newSession =
engine.onInviteMessage(txn, session, inviteMessage);
assertEquals(ERROR, newSession.getState());
assertSessionRecordedSentMessage(newSession);
assertSessionConstantsUnchanged(session, newSession);
assertSessionAborted(session, newSession);
}
@Test
public void testOnInviteMessageFromAccepted() throws Exception {
expectAbort();
expectAbortWhenSubscribedToGroup();
InviteeSession session = getDefaultSession(ACCEPTED);
InviteeSession newSession =
engine.onInviteMessage(txn, session, inviteMessage);
assertEquals(ERROR, newSession.getState());
assertSessionRecordedSentMessage(newSession);
assertSessionConstantsUnchanged(session, newSession);
assertSessionAborted(session, newSession);
}
@Test
public void testOnInviteMessageFromJoined() throws Exception {
expectAbort();
expectAbortWhenSubscribedToGroup();
InviteeSession session = getDefaultSession(JOINED);
InviteeSession newSession =
engine.onInviteMessage(txn, session, inviteMessage);
assertEquals(ERROR, newSession.getState());
assertSessionRecordedSentMessage(newSession);
assertSessionConstantsUnchanged(session, newSession);
assertSessionAborted(session, newSession);
}
@Test
public void testOnInviteMessageFromLeft() throws Exception {
expectAbort();
expectAbortWhenSubscribedToGroup();
InviteeSession session = getDefaultSession(LEFT);
InviteeSession newSession =
engine.onInviteMessage(txn, session, inviteMessage);
assertEquals(ERROR, newSession.getState());
assertSessionRecordedSentMessage(newSession);
assertSessionConstantsUnchanged(session, newSession);
assertSessionAborted(session, newSession);
}
@Test
public void testOnInviteMessageFromDissolved() throws Exception {
expectAbort();
expectAbortWhenSubscribedToGroup();
InviteeSession session = getDefaultSession(DISSOLVED);
InviteeSession newSession =
engine.onInviteMessage(txn, session, inviteMessage);
assertEquals(ERROR, newSession.getState());
assertSessionRecordedSentMessage(newSession);
assertSessionConstantsUnchanged(session, newSession);
assertSessionAborted(session, newSession);
}
@Test
@@ -462,62 +443,47 @@ public class InviteeProtocolEngineTest extends AbstractProtocolEngineTest {
@Test
public void testOnJoinMessageFromStart() throws Exception {
expectAbort();
expectAbortWhenSubscribedToGroup();
InviteeSession session = getDefaultSession(START);
InviteeSession newSession =
engine.onJoinMessage(txn, session, joinMessage);
assertEquals(ERROR, newSession.getState());
assertSessionRecordedSentMessage(newSession);
assertSessionConstantsUnchanged(session, newSession);
assertSessionAborted(session, newSession);
}
@Test
public void testOnJoinMessageFromInvited() throws Exception {
expectAbort();
expectAbortWhenSubscribedToGroup();
InviteeSession session = getDefaultSession(INVITED);
InviteeSession newSession =
engine.onJoinMessage(txn, session, joinMessage);
assertEquals(ERROR, newSession.getState());
assertSessionRecordedSentMessage(newSession);
assertSessionConstantsUnchanged(session, newSession);
assertSessionAborted(session, newSession);
}
@Test
public void testOnJoinMessageFromJoined() throws Exception {
expectAbort();
expectAbortWhenSubscribedToGroup();
InviteeSession session = getDefaultSession(JOINED);
InviteeSession newSession =
engine.onJoinMessage(txn, session, joinMessage);
assertEquals(ERROR, newSession.getState());
assertSessionRecordedSentMessage(newSession);
assertSessionConstantsUnchanged(session, newSession);
assertSessionAborted(session, newSession);
}
@Test
public void testOnJoinMessageFromLeft() throws Exception {
expectAbort();
expectAbortWhenSubscribedToGroup();
InviteeSession session = getDefaultSession(LEFT);
InviteeSession newSession =
engine.onJoinMessage(txn, session, joinMessage);
assertEquals(ERROR, newSession.getState());
assertSessionRecordedSentMessage(newSession);
assertSessionConstantsUnchanged(session, newSession);
assertSessionAborted(session, newSession);
}
@Test
public void testOnJoinMessageFromDissolved() throws Exception {
expectAbort();
expectAbortWhenSubscribedToGroup();
InviteeSession session = getDefaultSession(DISSOLVED);
InviteeSession newSession =
engine.onJoinMessage(txn, session, joinMessage);
assertEquals(ERROR, newSession.getState());
assertSessionRecordedSentMessage(newSession);
assertSessionConstantsUnchanged(session, newSession);
assertSessionAborted(session, newSession);
}
@Test
@@ -526,13 +492,10 @@ public class InviteeProtocolEngineTest extends AbstractProtocolEngineTest {
InviteeSession session = getDefaultSession(ACCEPTED);
assertTrue(joinMessage.getTimestamp() <= session.getInviteTimestamp());
expectAbort();
expectAbortWhenSubscribedToGroup();
InviteeSession newSession =
engine.onJoinMessage(txn, session, joinMessage);
assertEquals(ERROR, newSession.getState());
assertSessionRecordedSentMessage(newSession);
assertSessionConstantsUnchanged(session, newSession);
assertSessionAborted(session, newSession);
}
@Test
@@ -545,18 +508,15 @@ public class InviteeProtocolEngineTest extends AbstractProtocolEngineTest {
lastLocalMessageId);
assertFalse(invalidJoinMessage.getTimestamp() <=
session.getInviteTimestamp());
assertTrue(session.getLastRemoteMessageId() != null);
assertTrue(invalidJoinMessage.getPreviousMessageId() != null);
assertNotNull(session.getLastRemoteMessageId());
assertNotNull(invalidJoinMessage.getPreviousMessageId());
assertFalse(session.getLastRemoteMessageId()
.equals(invalidJoinMessage.getPreviousMessageId()));
expectAbort();
expectAbortWhenSubscribedToGroup();
InviteeSession newSession =
engine.onJoinMessage(txn, session, invalidJoinMessage);
assertEquals(ERROR, newSession.getState());
assertSessionRecordedSentMessage(newSession);
assertSessionConstantsUnchanged(session, newSession);
assertSessionAborted(session, newSession);
}
@Test
@@ -568,8 +528,8 @@ public class InviteeProtocolEngineTest extends AbstractProtocolEngineTest {
lastRemoteMessageId);
assertFalse(properJoinMessage.getTimestamp() <=
session.getInviteTimestamp());
assertTrue(session.getLastRemoteMessageId() != null);
assertTrue(properJoinMessage.getPreviousMessageId() != null);
assertNotNull(session.getLastRemoteMessageId());
assertNotNull(properJoinMessage.getPreviousMessageId());
assertTrue(session.getLastRemoteMessageId()
.equals(properJoinMessage.getPreviousMessageId()));
@@ -601,26 +561,20 @@ public class InviteeProtocolEngineTest extends AbstractProtocolEngineTest {
@Test
public void testOnLeaveMessageFromStart() throws Exception {
expectAbort();
expectAbortWhenSubscribedToGroup();
InviteeSession session = getDefaultSession(START);
InviteeSession newSession =
engine.onLeaveMessage(txn, session, leaveMessage);
assertEquals(ERROR, newSession.getState());
assertSessionRecordedSentMessage(newSession);
assertSessionConstantsUnchanged(session, newSession);
assertSessionAborted(session, newSession);
}
@Test
public void testOnLeaveMessageFromDissolved() throws Exception {
expectAbort();
expectAbortWhenSubscribedToGroup();
InviteeSession session = getDefaultSession(DISSOLVED);
InviteeSession newSession =
engine.onLeaveMessage(txn, session, leaveMessage);
assertEquals(ERROR, newSession.getState());
assertSessionRecordedSentMessage(newSession);
assertSessionConstantsUnchanged(session, newSession);
assertSessionAborted(session, newSession);
}
@Test
@@ -629,13 +583,10 @@ public class InviteeProtocolEngineTest extends AbstractProtocolEngineTest {
InviteeSession session = getDefaultSession(INVITED);
assertTrue(leaveMessage.getTimestamp() <= session.getInviteTimestamp());
expectAbort();
expectAbortWhenSubscribedToGroup();
InviteeSession newSession =
engine.onLeaveMessage(txn, session, leaveMessage);
assertEquals(ERROR, newSession.getState());
assertSessionRecordedSentMessage(newSession);
assertSessionConstantsUnchanged(session, newSession);
assertSessionAborted(session, newSession);
}
@Test
@@ -644,13 +595,10 @@ public class InviteeProtocolEngineTest extends AbstractProtocolEngineTest {
InviteeSession session = getDefaultSession(LEFT);
assertTrue(leaveMessage.getTimestamp() <= session.getInviteTimestamp());
expectAbort();
expectAbortWhenSubscribedToGroup();
InviteeSession newSession =
engine.onLeaveMessage(txn, session, leaveMessage);
assertEquals(ERROR, newSession.getState());
assertSessionRecordedSentMessage(newSession);
assertSessionConstantsUnchanged(session, newSession);
assertSessionAborted(session, newSession);
}
@Test
@@ -662,15 +610,12 @@ public class InviteeProtocolEngineTest extends AbstractProtocolEngineTest {
privateGroupId, session.getInviteTimestamp() + 1, null);
assertFalse(invalidLeaveMessage.getTimestamp() <=
session.getInviteTimestamp());
assertTrue(invalidLeaveMessage.getPreviousMessageId() == null);
assertNull(invalidLeaveMessage.getPreviousMessageId());
expectAbort();
expectAbortWhenSubscribedToGroup();
InviteeSession newSession =
engine.onLeaveMessage(txn, session, invalidLeaveMessage);
assertEquals(ERROR, newSession.getState());
assertSessionRecordedSentMessage(newSession);
assertSessionConstantsUnchanged(session, newSession);
assertSessionAborted(session, newSession);
}
@Test
@@ -682,15 +627,12 @@ public class InviteeProtocolEngineTest extends AbstractProtocolEngineTest {
privateGroupId, session.getInviteTimestamp() + 1, null);
assertFalse(invalidLeaveMessage.getTimestamp() <=
session.getInviteTimestamp());
assertTrue(invalidLeaveMessage.getPreviousMessageId() == null);
assertNull(invalidLeaveMessage.getPreviousMessageId());
expectAbort();
expectAbortWhenSubscribedToGroup();
InviteeSession newSession =
engine.onLeaveMessage(txn, session, invalidLeaveMessage);
assertEquals(ERROR, newSession.getState());
assertSessionRecordedSentMessage(newSession);
assertSessionConstantsUnchanged(session, newSession);
assertSessionAborted(session, newSession);
}
@Test
@@ -702,8 +644,8 @@ public class InviteeProtocolEngineTest extends AbstractProtocolEngineTest {
lastRemoteMessageId);
assertFalse(properLeaveMessage.getTimestamp() <=
session.getInviteTimestamp());
assertTrue(session.getLastRemoteMessageId() != null);
assertTrue(properLeaveMessage.getPreviousMessageId() != null);
assertNotNull(session.getLastRemoteMessageId());
assertNotNull(properLeaveMessage.getPreviousMessageId());
assertTrue(session.getLastRemoteMessageId()
.equals(properLeaveMessage.getPreviousMessageId()));
@@ -731,8 +673,8 @@ public class InviteeProtocolEngineTest extends AbstractProtocolEngineTest {
lastRemoteMessageId);
assertFalse(properLeaveMessage.getTimestamp() <=
session.getInviteTimestamp());
assertTrue(session.getLastRemoteMessageId() != null);
assertTrue(properLeaveMessage.getPreviousMessageId() != null);
assertNotNull(session.getLastRemoteMessageId());
assertNotNull(properLeaveMessage.getPreviousMessageId());
assertTrue(session.getLastRemoteMessageId()
.equals(properLeaveMessage.getPreviousMessageId()));
@@ -757,12 +699,10 @@ public class InviteeProtocolEngineTest extends AbstractProtocolEngineTest {
public void testOnAbortMessageWhenNotSubscribed() throws Exception {
InviteeSession session = getDefaultSession(START);
expectAbort();
expectAbortWhenSubscribedToGroup();
InviteeSession newSession =
engine.onAbortMessage(txn, session, abortMessage);
assertEquals(ERROR, newSession.getState());
assertSessionRecordedSentMessage(newSession);
assertSessionConstantsUnchanged(session, newSession);
assertSessionAborted(session, newSession);
}
@Test
@@ -772,9 +712,7 @@ public class InviteeProtocolEngineTest extends AbstractProtocolEngineTest {
expectAbortWhenNotSubscribedToGroup();
InviteeSession newSession =
engine.onAbortMessage(txn, session, abortMessage);
assertEquals(ERROR, newSession.getState());
assertSessionRecordedSentMessage(newSession);
assertSessionConstantsUnchanged(session, newSession);
assertSessionAborted(session, newSession);
}
// helper methods
@@ -790,7 +728,7 @@ public class InviteeProtocolEngineTest extends AbstractProtocolEngineTest {
}});
}
private void expectAbort() throws Exception {
private void expectAbortWhenSubscribedToGroup() throws Exception {
expectAbort(true);
}
@@ -821,4 +759,11 @@ public class InviteeProtocolEngineTest extends AbstractProtocolEngineTest {
expectSendAbortMessage();
}
private void assertSessionAborted(InviteeSession oldSession,
InviteeSession newSession) throws Exception {
assertEquals(ERROR, newSession.getState());
assertSessionRecordedSentMessage(newSession);
assertSessionConstantsUnchanged(oldSession, newSession);
}
}