meerkat-java/voter-registry/src/test/java/SimpleRegistryTest.java

212 lines
9.0 KiB
Java
Raw Normal View History

import com.google.protobuf.InvalidProtocolBufferException;
import junit.framework.TestCase;
import meerkat.RegistryMessages;
import meerkat.SimpleRegistry;
import meerkat.VoterRegistryMessage;
import meerkat.bulletinboard.BulletinBoardClient;
import meerkat.bulletinboard.SimpleBulletinBoardClient;
import meerkat.crypto.concrete.ECDSASignature;
import meerkat.protobuf.BulletinBoardAPI;
import meerkat.protobuf.Voting;
import util.RegistryTags;
import java.math.BigInteger;
import java.security.SecureRandom;
import java.util.ArrayList;
import java.util.List;
import static util.CollectionMessagesUtils.ConvertToVoterRegistryMessages;
/**
* Created by Vladimir Eliezer Tokarev on 1/16/2016.
* Tests the Simple Registry contents
* NOTE: for most of this tests to pass there should run BulletinBoardServer
* that should be reachable on BULLETIN_BOARD_SERVER_ADDRESS
*/
public class SimpleRegistryTest extends TestCase {
private ECDSASignature signatory;
private BulletinBoardClient communicator;
private static String BULLETIN_BOARD_SERVER_ADDRESS = "http://localhost:8081";
private SecureRandom random = new SecureRandom();
/**
* Creates the communication object (the bulletinBoardClient)
*/
private void CommunicatorSetup() {
communicator = new SimpleBulletinBoardClient();
communicator.init(Voting.BulletinBoardClientParams.newBuilder()
.addBulletinBoardAddress(BULLETIN_BOARD_SERVER_ADDRESS)
.setMinRedundancy((float) 1.0)
.build());
}
/**
* Initialize SimpleRegistry object
*/
public void setUp() {
signatory = new ECDSASignature();
CommunicatorSetup();
}
/**
* Checks if the creation of the registry have been successful
*/
public void testSimpleRegistryCreation() {
try {
new SimpleRegistry(signatory, communicator);
} catch (Exception e) {
assert false : "While creating the SimpleRegistry exception have been thrown " + e;
}
}
/**
* Test that add voter creates new correct bulletin board message and adds the voter
*/
public void testAddVoter() throws InvalidProtocolBufferException {
DummyRegistryCallBackHandler<Boolean> handler = new DummyRegistryCallBackHandler<>();
RegistryMessages.VoterInfo voterInfo = RegistryMessages.VoterInfo.newBuilder().
setId(RegistryMessages.VoterID.newBuilder()
.setId(RegistryTags.ID_TAG + new BigInteger(130, random).toString(32)))
.setInfo(new BigInteger(130, random).toString(32)).build();
SimpleRegistry registry = new SimpleRegistry(signatory, communicator);
registry.AddVoter(voterInfo, handler);
assertEquals(handler.counter , 0);
List<String> tags = new ArrayList<>();
tags.add("AddVoter");
BulletinBoardAPI.MessageFilterList filters = registry.GetRelevantMessagesFilters(tags);
DummyBulletinBoardCallBackHandler bulletinHandler = new DummyBulletinBoardCallBackHandler();
communicator.readMessages(filters, bulletinHandler);
List<BulletinBoardAPI.BulletinBoardMessage> messages = bulletinHandler.getMessages();
assert messages.contains(voterInfo) : "The server don't have the new user data.";
}
/**
* Test that set voted posts creates correct bulletin board message and sets that the user have been voted
*/
public void testSetVoted() throws InvalidProtocolBufferException {
DummyRegistryCallBackHandler<Boolean> handler = new DummyRegistryCallBackHandler<>();
RegistryMessages.VoterID voterInfo = RegistryMessages.VoterID.newBuilder()
.setId(RegistryTags.ID_TAG + new BigInteger(130, random).toString(32)).build();
SimpleRegistry registry = new SimpleRegistry(signatory, communicator);
registry.SetVoted(voterInfo, handler);
assertEquals(handler.counter , 0);
List<String> tags = new ArrayList<>();
tags.add("SetVoted");
BulletinBoardAPI.MessageFilterList filters = registry.GetRelevantMessagesFilters(tags);
DummyBulletinBoardCallBackHandler bulletinHandler = new DummyBulletinBoardCallBackHandler();
communicator.readMessages(filters, bulletinHandler);
List<BulletinBoardAPI.BulletinBoardMessage> messages = bulletinHandler.getMessages();
assert messages.contains(voterInfo) : "The server don't have the new user id.";
}
/**
Added The protobufs file and its java representation Those protobufs are representing the messages that the registry will use when communicating with the bulletin-board Summary: D:/Work/Wombat Working/voter-registry/comment-info.txt Changed the location of the protobufs file The location have been changed to create order in the packages Changed the location of the ProtobufsMessages file so that the Registry file could use it freely Changed the location of the Protobufs file and added the Registry class The protobufs files location was changed for the right location of the packages for Registry class be able to use the protobufs files Changed the location of the ProtobufsMessages file for creating more organized project Created the SimpleRegistry file SimpleRegistry expose the ability of manging voters information (their groups, and personal data) Created RegistryTagTypes file this file have the different tags for registry messages Changed the SimpleRegistry file started to implement the different methods of this class (such as created basic messages) Changed the ProtobufMessages file now using only the basic registry messages Changed the SimpleRegistry file Managed to create the signatory and add empty builder Added the AccurateTimestamp file This file converts string timestamp to timestamp and the other way , its used for the SimpleRegistry tags Moved the AccurateTimeStamp and the RegistryTagTypes to package called util This way the project files are more organized Add the MessagesUtil file This file contain helpfull methods for working with messages (such as basicMessage and BulletinBoardMessage) Created VoterRegistryMessage VoterRegistryMessage extending the abilities of the basic message also changed the name of MessagesUtils to CollectionMessagesUtils because its suits more this class destination Changed the simpleRegistry file Edited the GetPersonIDDetails method , and refactored the basic methods of upload data to BulletinBoardServer Added the SimpleRegistryTest This object tests the simple registry functionality Added the SimpleRegistryTest This object tests the simple registry functionality Changed the RegistryTagsType to RegistryTags The Name RegistryTags more indicative Added The Wombat Code And Documentation This file describes the conventions of the wombat project Changed the SimpleRegistry and VoterRegistryMessage Documentation The documentation was partial in part of the methods Changed the SimpleRegistry to work with UnsignedBulletinBoardMessage The basicMessage is not needed Changed the SimpleRegistry to work with UnsignedBulletinBoardMessage The basicMessage is not needed Changed the VoterRegistryMessage to wrap UnsignedBulletinBoardMessage there is no need to wrap unused basic message when using UnsignedBulletinBoardMessage Re-organized the voter-registry Since there no need for basicMessage i have removed it, and changed few methods to be in language level 7 Re-organized the voter-registry Since there no need for basicMessage i have removed it, and changed few methods to be in language level 7 added the RegistryInstance interface Which gives the basic registry functionality (because there going to be at least two registries) Changed the SimpleRegistry The new Simple Registry works according to the RegistryInstance interface Changed the SimpleRegistry The new Simple Registry works according to the RegistryInstance interface Changed the SimpleRegistry The new Simple Registry works according to the RegistryInstance interface Added testing to the SimpleRegistryTest class The Test checking that SetVoter AddVoter AddToGroup RemoveFromGroup methods working. Added testing to the SimpleRegistryTest class The Test checking that SetVoter AddVoter AddToGroup RemoveFromGroup methods working. Test Plan: The idea is to create number of BulletinBoardMessage's that and post them, then ask from the server for message with relevant filter and check that all the messages that have been posted there. Reviewers: arbel.peled Differential Revision: https://proj-cs.idc.ac.il/D1
2016-01-30 12:19:25 -05:00
* Test that get groups retrieves the right groups the user are in
*/
Added The protobufs file and its java representation Those protobufs are representing the messages that the registry will use when communicating with the bulletin-board Summary: D:/Work/Wombat Working/voter-registry/comment-info.txt Changed the location of the protobufs file The location have been changed to create order in the packages Changed the location of the ProtobufsMessages file so that the Registry file could use it freely Changed the location of the Protobufs file and added the Registry class The protobufs files location was changed for the right location of the packages for Registry class be able to use the protobufs files Changed the location of the ProtobufsMessages file for creating more organized project Created the SimpleRegistry file SimpleRegistry expose the ability of manging voters information (their groups, and personal data) Created RegistryTagTypes file this file have the different tags for registry messages Changed the SimpleRegistry file started to implement the different methods of this class (such as created basic messages) Changed the ProtobufMessages file now using only the basic registry messages Changed the SimpleRegistry file Managed to create the signatory and add empty builder Added the AccurateTimestamp file This file converts string timestamp to timestamp and the other way , its used for the SimpleRegistry tags Moved the AccurateTimeStamp and the RegistryTagTypes to package called util This way the project files are more organized Add the MessagesUtil file This file contain helpfull methods for working with messages (such as basicMessage and BulletinBoardMessage) Created VoterRegistryMessage VoterRegistryMessage extending the abilities of the basic message also changed the name of MessagesUtils to CollectionMessagesUtils because its suits more this class destination Changed the simpleRegistry file Edited the GetPersonIDDetails method , and refactored the basic methods of upload data to BulletinBoardServer Added the SimpleRegistryTest This object tests the simple registry functionality Added the SimpleRegistryTest This object tests the simple registry functionality Changed the RegistryTagsType to RegistryTags The Name RegistryTags more indicative Added The Wombat Code And Documentation This file describes the conventions of the wombat project Changed the SimpleRegistry and VoterRegistryMessage Documentation The documentation was partial in part of the methods Changed the SimpleRegistry to work with UnsignedBulletinBoardMessage The basicMessage is not needed Changed the SimpleRegistry to work with UnsignedBulletinBoardMessage The basicMessage is not needed Changed the VoterRegistryMessage to wrap UnsignedBulletinBoardMessage there is no need to wrap unused basic message when using UnsignedBulletinBoardMessage Re-organized the voter-registry Since there no need for basicMessage i have removed it, and changed few methods to be in language level 7 Re-organized the voter-registry Since there no need for basicMessage i have removed it, and changed few methods to be in language level 7 added the RegistryInstance interface Which gives the basic registry functionality (because there going to be at least two registries) Changed the SimpleRegistry The new Simple Registry works according to the RegistryInstance interface Changed the SimpleRegistry The new Simple Registry works according to the RegistryInstance interface Changed the SimpleRegistry The new Simple Registry works according to the RegistryInstance interface Added testing to the SimpleRegistryTest class The Test checking that SetVoter AddVoter AddToGroup RemoveFromGroup methods working. Added testing to the SimpleRegistryTest class The Test checking that SetVoter AddVoter AddToGroup RemoveFromGroup methods working. Test Plan: The idea is to create number of BulletinBoardMessage's that and post them, then ask from the server for message with relevant filter and check that all the messages that have been posted there. Reviewers: arbel.peled Differential Revision: https://proj-cs.idc.ac.il/D1
2016-01-30 12:19:25 -05:00
public void testAddToGroup() throws InvalidProtocolBufferException {
DummyRegistryCallBackHandler<Boolean> handler = new DummyRegistryCallBackHandler<>();
RegistryMessages.VoterGroup voterInfo = RegistryMessages.VoterGroup.newBuilder()
.setVoterId(RegistryMessages.VoterID.newBuilder()
.setId((RegistryTags.ID_TAG + new BigInteger(130, random).toString(32))))
.setGroupId(RegistryMessages.GroupID.newBuilder()
.setId((RegistryTags.GROUP_ID_TAG + new BigInteger(130, random).toString(32)))).build();
SimpleRegistry registry = new SimpleRegistry(signatory, communicator);
registry.AddToGroup(voterInfo, handler);
assertEquals(handler.counter , 0);
List<String> tags = new ArrayList<>();
tags.add("AddToGroup");
BulletinBoardAPI.MessageFilterList filters = registry.GetRelevantMessagesFilters(tags);
DummyBulletinBoardCallBackHandler bulletinHandler = new DummyBulletinBoardCallBackHandler();
communicator.readMessages(filters, bulletinHandler);
List<BulletinBoardAPI.BulletinBoardMessage> messages = bulletinHandler.getMessages();
assert messages.contains(voterInfo) : "The server don't have the new user added to group.";
}
/**
Added The protobufs file and its java representation Those protobufs are representing the messages that the registry will use when communicating with the bulletin-board Summary: D:/Work/Wombat Working/voter-registry/comment-info.txt Changed the location of the protobufs file The location have been changed to create order in the packages Changed the location of the ProtobufsMessages file so that the Registry file could use it freely Changed the location of the Protobufs file and added the Registry class The protobufs files location was changed for the right location of the packages for Registry class be able to use the protobufs files Changed the location of the ProtobufsMessages file for creating more organized project Created the SimpleRegistry file SimpleRegistry expose the ability of manging voters information (their groups, and personal data) Created RegistryTagTypes file this file have the different tags for registry messages Changed the SimpleRegistry file started to implement the different methods of this class (such as created basic messages) Changed the ProtobufMessages file now using only the basic registry messages Changed the SimpleRegistry file Managed to create the signatory and add empty builder Added the AccurateTimestamp file This file converts string timestamp to timestamp and the other way , its used for the SimpleRegistry tags Moved the AccurateTimeStamp and the RegistryTagTypes to package called util This way the project files are more organized Add the MessagesUtil file This file contain helpfull methods for working with messages (such as basicMessage and BulletinBoardMessage) Created VoterRegistryMessage VoterRegistryMessage extending the abilities of the basic message also changed the name of MessagesUtils to CollectionMessagesUtils because its suits more this class destination Changed the simpleRegistry file Edited the GetPersonIDDetails method , and refactored the basic methods of upload data to BulletinBoardServer Added the SimpleRegistryTest This object tests the simple registry functionality Added the SimpleRegistryTest This object tests the simple registry functionality Changed the RegistryTagsType to RegistryTags The Name RegistryTags more indicative Added The Wombat Code And Documentation This file describes the conventions of the wombat project Changed the SimpleRegistry and VoterRegistryMessage Documentation The documentation was partial in part of the methods Changed the SimpleRegistry to work with UnsignedBulletinBoardMessage The basicMessage is not needed Changed the SimpleRegistry to work with UnsignedBulletinBoardMessage The basicMessage is not needed Changed the VoterRegistryMessage to wrap UnsignedBulletinBoardMessage there is no need to wrap unused basic message when using UnsignedBulletinBoardMessage Re-organized the voter-registry Since there no need for basicMessage i have removed it, and changed few methods to be in language level 7 Re-organized the voter-registry Since there no need for basicMessage i have removed it, and changed few methods to be in language level 7 added the RegistryInstance interface Which gives the basic registry functionality (because there going to be at least two registries) Changed the SimpleRegistry The new Simple Registry works according to the RegistryInstance interface Changed the SimpleRegistry The new Simple Registry works according to the RegistryInstance interface Changed the SimpleRegistry The new Simple Registry works according to the RegistryInstance interface Added testing to the SimpleRegistryTest class The Test checking that SetVoter AddVoter AddToGroup RemoveFromGroup methods working. Added testing to the SimpleRegistryTest class The Test checking that SetVoter AddVoter AddToGroup RemoveFromGroup methods working. Test Plan: The idea is to create number of BulletinBoardMessage's that and post them, then ask from the server for message with relevant filter and check that all the messages that have been posted there. Reviewers: arbel.peled Differential Revision: https://proj-cs.idc.ac.il/D1
2016-01-30 12:19:25 -05:00
* Test that remove from group creates correct bulletin board message and removes the user from a group
*/
Added The protobufs file and its java representation Those protobufs are representing the messages that the registry will use when communicating with the bulletin-board Summary: D:/Work/Wombat Working/voter-registry/comment-info.txt Changed the location of the protobufs file The location have been changed to create order in the packages Changed the location of the ProtobufsMessages file so that the Registry file could use it freely Changed the location of the Protobufs file and added the Registry class The protobufs files location was changed for the right location of the packages for Registry class be able to use the protobufs files Changed the location of the ProtobufsMessages file for creating more organized project Created the SimpleRegistry file SimpleRegistry expose the ability of manging voters information (their groups, and personal data) Created RegistryTagTypes file this file have the different tags for registry messages Changed the SimpleRegistry file started to implement the different methods of this class (such as created basic messages) Changed the ProtobufMessages file now using only the basic registry messages Changed the SimpleRegistry file Managed to create the signatory and add empty builder Added the AccurateTimestamp file This file converts string timestamp to timestamp and the other way , its used for the SimpleRegistry tags Moved the AccurateTimeStamp and the RegistryTagTypes to package called util This way the project files are more organized Add the MessagesUtil file This file contain helpfull methods for working with messages (such as basicMessage and BulletinBoardMessage) Created VoterRegistryMessage VoterRegistryMessage extending the abilities of the basic message also changed the name of MessagesUtils to CollectionMessagesUtils because its suits more this class destination Changed the simpleRegistry file Edited the GetPersonIDDetails method , and refactored the basic methods of upload data to BulletinBoardServer Added the SimpleRegistryTest This object tests the simple registry functionality Added the SimpleRegistryTest This object tests the simple registry functionality Changed the RegistryTagsType to RegistryTags The Name RegistryTags more indicative Added The Wombat Code And Documentation This file describes the conventions of the wombat project Changed the SimpleRegistry and VoterRegistryMessage Documentation The documentation was partial in part of the methods Changed the SimpleRegistry to work with UnsignedBulletinBoardMessage The basicMessage is not needed Changed the SimpleRegistry to work with UnsignedBulletinBoardMessage The basicMessage is not needed Changed the VoterRegistryMessage to wrap UnsignedBulletinBoardMessage there is no need to wrap unused basic message when using UnsignedBulletinBoardMessage Re-organized the voter-registry Since there no need for basicMessage i have removed it, and changed few methods to be in language level 7 Re-organized the voter-registry Since there no need for basicMessage i have removed it, and changed few methods to be in language level 7 added the RegistryInstance interface Which gives the basic registry functionality (because there going to be at least two registries) Changed the SimpleRegistry The new Simple Registry works according to the RegistryInstance interface Changed the SimpleRegistry The new Simple Registry works according to the RegistryInstance interface Changed the SimpleRegistry The new Simple Registry works according to the RegistryInstance interface Added testing to the SimpleRegistryTest class The Test checking that SetVoter AddVoter AddToGroup RemoveFromGroup methods working. Added testing to the SimpleRegistryTest class The Test checking that SetVoter AddVoter AddToGroup RemoveFromGroup methods working. Test Plan: The idea is to create number of BulletinBoardMessage's that and post them, then ask from the server for message with relevant filter and check that all the messages that have been posted there. Reviewers: arbel.peled Differential Revision: https://proj-cs.idc.ac.il/D1
2016-01-30 12:19:25 -05:00
public void testGetGroups() throws InvalidProtocolBufferException, InterruptedException {
DummyRegistryCallBackHandler<List<BulletinBoardAPI.BulletinBoardMessage>> handler =
new DummyRegistryCallBackHandler<>();
RegistryMessages.VoterGroup voterInfo = RegistryMessages.VoterGroup.newBuilder()
.setVoterId(RegistryMessages.VoterID.newBuilder()
.setId((RegistryTags.ID_TAG + new BigInteger(130, random).toString(32))))
.setGroupId(RegistryMessages.GroupID.newBuilder()
.setId((RegistryTags.GROUP_ID_TAG + new BigInteger(130, random).toString(32)))).build();
Added The protobufs file and its java representation Those protobufs are representing the messages that the registry will use when communicating with the bulletin-board Summary: D:/Work/Wombat Working/voter-registry/comment-info.txt Changed the location of the protobufs file The location have been changed to create order in the packages Changed the location of the ProtobufsMessages file so that the Registry file could use it freely Changed the location of the Protobufs file and added the Registry class The protobufs files location was changed for the right location of the packages for Registry class be able to use the protobufs files Changed the location of the ProtobufsMessages file for creating more organized project Created the SimpleRegistry file SimpleRegistry expose the ability of manging voters information (their groups, and personal data) Created RegistryTagTypes file this file have the different tags for registry messages Changed the SimpleRegistry file started to implement the different methods of this class (such as created basic messages) Changed the ProtobufMessages file now using only the basic registry messages Changed the SimpleRegistry file Managed to create the signatory and add empty builder Added the AccurateTimestamp file This file converts string timestamp to timestamp and the other way , its used for the SimpleRegistry tags Moved the AccurateTimeStamp and the RegistryTagTypes to package called util This way the project files are more organized Add the MessagesUtil file This file contain helpfull methods for working with messages (such as basicMessage and BulletinBoardMessage) Created VoterRegistryMessage VoterRegistryMessage extending the abilities of the basic message also changed the name of MessagesUtils to CollectionMessagesUtils because its suits more this class destination Changed the simpleRegistry file Edited the GetPersonIDDetails method , and refactored the basic methods of upload data to BulletinBoardServer Added the SimpleRegistryTest This object tests the simple registry functionality Added the SimpleRegistryTest This object tests the simple registry functionality Changed the RegistryTagsType to RegistryTags The Name RegistryTags more indicative Added The Wombat Code And Documentation This file describes the conventions of the wombat project Changed the SimpleRegistry and VoterRegistryMessage Documentation The documentation was partial in part of the methods Changed the SimpleRegistry to work with UnsignedBulletinBoardMessage The basicMessage is not needed Changed the SimpleRegistry to work with UnsignedBulletinBoardMessage The basicMessage is not needed Changed the VoterRegistryMessage to wrap UnsignedBulletinBoardMessage there is no need to wrap unused basic message when using UnsignedBulletinBoardMessage Re-organized the voter-registry Since there no need for basicMessage i have removed it, and changed few methods to be in language level 7 Re-organized the voter-registry Since there no need for basicMessage i have removed it, and changed few methods to be in language level 7 added the RegistryInstance interface Which gives the basic registry functionality (because there going to be at least two registries) Changed the SimpleRegistry The new Simple Registry works according to the RegistryInstance interface Changed the SimpleRegistry The new Simple Registry works according to the RegistryInstance interface Changed the SimpleRegistry The new Simple Registry works according to the RegistryInstance interface Added testing to the SimpleRegistryTest class The Test checking that SetVoter AddVoter AddToGroup RemoveFromGroup methods working. Added testing to the SimpleRegistryTest class The Test checking that SetVoter AddVoter AddToGroup RemoveFromGroup methods working. Test Plan: The idea is to create number of BulletinBoardMessage's that and post them, then ask from the server for message with relevant filter and check that all the messages that have been posted there. Reviewers: arbel.peled Differential Revision: https://proj-cs.idc.ac.il/D1
2016-01-30 12:19:25 -05:00
SimpleRegistry registry = new SimpleRegistry(signatory, communicator);
registry.AddToGroup(voterInfo, handler);
Added The protobufs file and its java representation Those protobufs are representing the messages that the registry will use when communicating with the bulletin-board Summary: D:/Work/Wombat Working/voter-registry/comment-info.txt Changed the location of the protobufs file The location have been changed to create order in the packages Changed the location of the ProtobufsMessages file so that the Registry file could use it freely Changed the location of the Protobufs file and added the Registry class The protobufs files location was changed for the right location of the packages for Registry class be able to use the protobufs files Changed the location of the ProtobufsMessages file for creating more organized project Created the SimpleRegistry file SimpleRegistry expose the ability of manging voters information (their groups, and personal data) Created RegistryTagTypes file this file have the different tags for registry messages Changed the SimpleRegistry file started to implement the different methods of this class (such as created basic messages) Changed the ProtobufMessages file now using only the basic registry messages Changed the SimpleRegistry file Managed to create the signatory and add empty builder Added the AccurateTimestamp file This file converts string timestamp to timestamp and the other way , its used for the SimpleRegistry tags Moved the AccurateTimeStamp and the RegistryTagTypes to package called util This way the project files are more organized Add the MessagesUtil file This file contain helpfull methods for working with messages (such as basicMessage and BulletinBoardMessage) Created VoterRegistryMessage VoterRegistryMessage extending the abilities of the basic message also changed the name of MessagesUtils to CollectionMessagesUtils because its suits more this class destination Changed the simpleRegistry file Edited the GetPersonIDDetails method , and refactored the basic methods of upload data to BulletinBoardServer Added the SimpleRegistryTest This object tests the simple registry functionality Added the SimpleRegistryTest This object tests the simple registry functionality Changed the RegistryTagsType to RegistryTags The Name RegistryTags more indicative Added The Wombat Code And Documentation This file describes the conventions of the wombat project Changed the SimpleRegistry and VoterRegistryMessage Documentation The documentation was partial in part of the methods Changed the SimpleRegistry to work with UnsignedBulletinBoardMessage The basicMessage is not needed Changed the SimpleRegistry to work with UnsignedBulletinBoardMessage The basicMessage is not needed Changed the VoterRegistryMessage to wrap UnsignedBulletinBoardMessage there is no need to wrap unused basic message when using UnsignedBulletinBoardMessage Re-organized the voter-registry Since there no need for basicMessage i have removed it, and changed few methods to be in language level 7 Re-organized the voter-registry Since there no need for basicMessage i have removed it, and changed few methods to be in language level 7 added the RegistryInstance interface Which gives the basic registry functionality (because there going to be at least two registries) Changed the SimpleRegistry The new Simple Registry works according to the RegistryInstance interface Changed the SimpleRegistry The new Simple Registry works according to the RegistryInstance interface Changed the SimpleRegistry The new Simple Registry works according to the RegistryInstance interface Added testing to the SimpleRegistryTest class The Test checking that SetVoter AddVoter AddToGroup RemoveFromGroup methods working. Added testing to the SimpleRegistryTest class The Test checking that SetVoter AddVoter AddToGroup RemoveFromGroup methods working. Test Plan: The idea is to create number of BulletinBoardMessage's that and post them, then ask from the server for message with relevant filter and check that all the messages that have been posted there. Reviewers: arbel.peled Differential Revision: https://proj-cs.idc.ac.il/D1
2016-01-30 12:19:25 -05:00
assertEquals(handler.counter , 0);
Added The protobufs file and its java representation Those protobufs are representing the messages that the registry will use when communicating with the bulletin-board Summary: D:/Work/Wombat Working/voter-registry/comment-info.txt Changed the location of the protobufs file The location have been changed to create order in the packages Changed the location of the ProtobufsMessages file so that the Registry file could use it freely Changed the location of the Protobufs file and added the Registry class The protobufs files location was changed for the right location of the packages for Registry class be able to use the protobufs files Changed the location of the ProtobufsMessages file for creating more organized project Created the SimpleRegistry file SimpleRegistry expose the ability of manging voters information (their groups, and personal data) Created RegistryTagTypes file this file have the different tags for registry messages Changed the SimpleRegistry file started to implement the different methods of this class (such as created basic messages) Changed the ProtobufMessages file now using only the basic registry messages Changed the SimpleRegistry file Managed to create the signatory and add empty builder Added the AccurateTimestamp file This file converts string timestamp to timestamp and the other way , its used for the SimpleRegistry tags Moved the AccurateTimeStamp and the RegistryTagTypes to package called util This way the project files are more organized Add the MessagesUtil file This file contain helpfull methods for working with messages (such as basicMessage and BulletinBoardMessage) Created VoterRegistryMessage VoterRegistryMessage extending the abilities of the basic message also changed the name of MessagesUtils to CollectionMessagesUtils because its suits more this class destination Changed the simpleRegistry file Edited the GetPersonIDDetails method , and refactored the basic methods of upload data to BulletinBoardServer Added the SimpleRegistryTest This object tests the simple registry functionality Added the SimpleRegistryTest This object tests the simple registry functionality Changed the RegistryTagsType to RegistryTags The Name RegistryTags more indicative Added The Wombat Code And Documentation This file describes the conventions of the wombat project Changed the SimpleRegistry and VoterRegistryMessage Documentation The documentation was partial in part of the methods Changed the SimpleRegistry to work with UnsignedBulletinBoardMessage The basicMessage is not needed Changed the SimpleRegistry to work with UnsignedBulletinBoardMessage The basicMessage is not needed Changed the VoterRegistryMessage to wrap UnsignedBulletinBoardMessage there is no need to wrap unused basic message when using UnsignedBulletinBoardMessage Re-organized the voter-registry Since there no need for basicMessage i have removed it, and changed few methods to be in language level 7 Re-organized the voter-registry Since there no need for basicMessage i have removed it, and changed few methods to be in language level 7 added the RegistryInstance interface Which gives the basic registry functionality (because there going to be at least two registries) Changed the SimpleRegistry The new Simple Registry works according to the RegistryInstance interface Changed the SimpleRegistry The new Simple Registry works according to the RegistryInstance interface Changed the SimpleRegistry The new Simple Registry works according to the RegistryInstance interface Added testing to the SimpleRegistryTest class The Test checking that SetVoter AddVoter AddToGroup RemoveFromGroup methods working. Added testing to the SimpleRegistryTest class The Test checking that SetVoter AddVoter AddToGroup RemoveFromGroup methods working. Test Plan: The idea is to create number of BulletinBoardMessage's that and post them, then ask from the server for message with relevant filter and check that all the messages that have been posted there. Reviewers: arbel.peled Differential Revision: https://proj-cs.idc.ac.il/D1
2016-01-30 12:19:25 -05:00
List<String> tags = new ArrayList<>();
tags.add("AddToGroup");
BulletinBoardAPI.MessageFilterList filters = registry.GetRelevantMessagesFilters(tags);
DummyBulletinBoardCallBackHandler bulletinHandler = new DummyBulletinBoardCallBackHandler();
communicator.readMessages(filters, bulletinHandler);
List<BulletinBoardAPI.BulletinBoardMessage> messages = bulletinHandler.getMessages();
assert messages.contains(voterInfo) : "The server don't have the new user added to group.";
List<VoterRegistryMessage> voterMessages = ConvertToVoterRegistryMessages(handler.data);
assertTrue(voterMessages.get(0).GetWantedTagFromBasicMessage(RegistryTags.ID_TAG).contains(voterInfo.getVoterId().getId()));
}
Added The protobufs file and its java representation Those protobufs are representing the messages that the registry will use when communicating with the bulletin-board Summary: D:/Work/Wombat Working/voter-registry/comment-info.txt Changed the location of the protobufs file The location have been changed to create order in the packages Changed the location of the ProtobufsMessages file so that the Registry file could use it freely Changed the location of the Protobufs file and added the Registry class The protobufs files location was changed for the right location of the packages for Registry class be able to use the protobufs files Changed the location of the ProtobufsMessages file for creating more organized project Created the SimpleRegistry file SimpleRegistry expose the ability of manging voters information (their groups, and personal data) Created RegistryTagTypes file this file have the different tags for registry messages Changed the SimpleRegistry file started to implement the different methods of this class (such as created basic messages) Changed the ProtobufMessages file now using only the basic registry messages Changed the SimpleRegistry file Managed to create the signatory and add empty builder Added the AccurateTimestamp file This file converts string timestamp to timestamp and the other way , its used for the SimpleRegistry tags Moved the AccurateTimeStamp and the RegistryTagTypes to package called util This way the project files are more organized Add the MessagesUtil file This file contain helpfull methods for working with messages (such as basicMessage and BulletinBoardMessage) Created VoterRegistryMessage VoterRegistryMessage extending the abilities of the basic message also changed the name of MessagesUtils to CollectionMessagesUtils because its suits more this class destination Changed the simpleRegistry file Edited the GetPersonIDDetails method , and refactored the basic methods of upload data to BulletinBoardServer Added the SimpleRegistryTest This object tests the simple registry functionality Added the SimpleRegistryTest This object tests the simple registry functionality Changed the RegistryTagsType to RegistryTags The Name RegistryTags more indicative Added The Wombat Code And Documentation This file describes the conventions of the wombat project Changed the SimpleRegistry and VoterRegistryMessage Documentation The documentation was partial in part of the methods Changed the SimpleRegistry to work with UnsignedBulletinBoardMessage The basicMessage is not needed Changed the SimpleRegistry to work with UnsignedBulletinBoardMessage The basicMessage is not needed Changed the VoterRegistryMessage to wrap UnsignedBulletinBoardMessage there is no need to wrap unused basic message when using UnsignedBulletinBoardMessage Re-organized the voter-registry Since there no need for basicMessage i have removed it, and changed few methods to be in language level 7 Re-organized the voter-registry Since there no need for basicMessage i have removed it, and changed few methods to be in language level 7 added the RegistryInstance interface Which gives the basic registry functionality (because there going to be at least two registries) Changed the SimpleRegistry The new Simple Registry works according to the RegistryInstance interface Changed the SimpleRegistry The new Simple Registry works according to the RegistryInstance interface Changed the SimpleRegistry The new Simple Registry works according to the RegistryInstance interface Added testing to the SimpleRegistryTest class The Test checking that SetVoter AddVoter AddToGroup RemoveFromGroup methods working. Added testing to the SimpleRegistryTest class The Test checking that SetVoter AddVoter AddToGroup RemoveFromGroup methods working. Test Plan: The idea is to create number of BulletinBoardMessage's that and post them, then ask from the server for message with relevant filter and check that all the messages that have been posted there. Reviewers: arbel.peled Differential Revision: https://proj-cs.idc.ac.il/D1
2016-01-30 12:19:25 -05:00
/**
* Test that the personal data outputted about the user is right
*/
Added The protobufs file and its java representation Those protobufs are representing the messages that the registry will use when communicating with the bulletin-board Summary: D:/Work/Wombat Working/voter-registry/comment-info.txt Changed the location of the protobufs file The location have been changed to create order in the packages Changed the location of the ProtobufsMessages file so that the Registry file could use it freely Changed the location of the Protobufs file and added the Registry class The protobufs files location was changed for the right location of the packages for Registry class be able to use the protobufs files Changed the location of the ProtobufsMessages file for creating more organized project Created the SimpleRegistry file SimpleRegistry expose the ability of manging voters information (their groups, and personal data) Created RegistryTagTypes file this file have the different tags for registry messages Changed the SimpleRegistry file started to implement the different methods of this class (such as created basic messages) Changed the ProtobufMessages file now using only the basic registry messages Changed the SimpleRegistry file Managed to create the signatory and add empty builder Added the AccurateTimestamp file This file converts string timestamp to timestamp and the other way , its used for the SimpleRegistry tags Moved the AccurateTimeStamp and the RegistryTagTypes to package called util This way the project files are more organized Add the MessagesUtil file This file contain helpfull methods for working with messages (such as basicMessage and BulletinBoardMessage) Created VoterRegistryMessage VoterRegistryMessage extending the abilities of the basic message also changed the name of MessagesUtils to CollectionMessagesUtils because its suits more this class destination Changed the simpleRegistry file Edited the GetPersonIDDetails method , and refactored the basic methods of upload data to BulletinBoardServer Added the SimpleRegistryTest This object tests the simple registry functionality Added the SimpleRegistryTest This object tests the simple registry functionality Changed the RegistryTagsType to RegistryTags The Name RegistryTags more indicative Added The Wombat Code And Documentation This file describes the conventions of the wombat project Changed the SimpleRegistry and VoterRegistryMessage Documentation The documentation was partial in part of the methods Changed the SimpleRegistry to work with UnsignedBulletinBoardMessage The basicMessage is not needed Changed the SimpleRegistry to work with UnsignedBulletinBoardMessage The basicMessage is not needed Changed the VoterRegistryMessage to wrap UnsignedBulletinBoardMessage there is no need to wrap unused basic message when using UnsignedBulletinBoardMessage Re-organized the voter-registry Since there no need for basicMessage i have removed it, and changed few methods to be in language level 7 Re-organized the voter-registry Since there no need for basicMessage i have removed it, and changed few methods to be in language level 7 added the RegistryInstance interface Which gives the basic registry functionality (because there going to be at least two registries) Changed the SimpleRegistry The new Simple Registry works according to the RegistryInstance interface Changed the SimpleRegistry The new Simple Registry works according to the RegistryInstance interface Changed the SimpleRegistry The new Simple Registry works according to the RegistryInstance interface Added testing to the SimpleRegistryTest class The Test checking that SetVoter AddVoter AddToGroup RemoveFromGroup methods working. Added testing to the SimpleRegistryTest class The Test checking that SetVoter AddVoter AddToGroup RemoveFromGroup methods working. Test Plan: The idea is to create number of BulletinBoardMessage's that and post them, then ask from the server for message with relevant filter and check that all the messages that have been posted there. Reviewers: arbel.peled Differential Revision: https://proj-cs.idc.ac.il/D1
2016-01-30 12:19:25 -05:00
public void testGetPersonalIDDetails() throws InvalidProtocolBufferException, InterruptedException {
DummyRegistryCallBackHandler<List<BulletinBoardAPI.BulletinBoardMessage>> handler = new DummyRegistryCallBackHandler<>();
RegistryMessages.VoterInfo voterInfo = RegistryMessages.VoterInfo.newBuilder().
setId(RegistryMessages.VoterID.newBuilder()
.setId(RegistryTags.ID_TAG + new BigInteger(130, random).toString(32)))
.setInfo(new BigInteger(130, random).toString(32)).build();
Added The protobufs file and its java representation Those protobufs are representing the messages that the registry will use when communicating with the bulletin-board Summary: D:/Work/Wombat Working/voter-registry/comment-info.txt Changed the location of the protobufs file The location have been changed to create order in the packages Changed the location of the ProtobufsMessages file so that the Registry file could use it freely Changed the location of the Protobufs file and added the Registry class The protobufs files location was changed for the right location of the packages for Registry class be able to use the protobufs files Changed the location of the ProtobufsMessages file for creating more organized project Created the SimpleRegistry file SimpleRegistry expose the ability of manging voters information (their groups, and personal data) Created RegistryTagTypes file this file have the different tags for registry messages Changed the SimpleRegistry file started to implement the different methods of this class (such as created basic messages) Changed the ProtobufMessages file now using only the basic registry messages Changed the SimpleRegistry file Managed to create the signatory and add empty builder Added the AccurateTimestamp file This file converts string timestamp to timestamp and the other way , its used for the SimpleRegistry tags Moved the AccurateTimeStamp and the RegistryTagTypes to package called util This way the project files are more organized Add the MessagesUtil file This file contain helpfull methods for working with messages (such as basicMessage and BulletinBoardMessage) Created VoterRegistryMessage VoterRegistryMessage extending the abilities of the basic message also changed the name of MessagesUtils to CollectionMessagesUtils because its suits more this class destination Changed the simpleRegistry file Edited the GetPersonIDDetails method , and refactored the basic methods of upload data to BulletinBoardServer Added the SimpleRegistryTest This object tests the simple registry functionality Added the SimpleRegistryTest This object tests the simple registry functionality Changed the RegistryTagsType to RegistryTags The Name RegistryTags more indicative Added The Wombat Code And Documentation This file describes the conventions of the wombat project Changed the SimpleRegistry and VoterRegistryMessage Documentation The documentation was partial in part of the methods Changed the SimpleRegistry to work with UnsignedBulletinBoardMessage The basicMessage is not needed Changed the SimpleRegistry to work with UnsignedBulletinBoardMessage The basicMessage is not needed Changed the VoterRegistryMessage to wrap UnsignedBulletinBoardMessage there is no need to wrap unused basic message when using UnsignedBulletinBoardMessage Re-organized the voter-registry Since there no need for basicMessage i have removed it, and changed few methods to be in language level 7 Re-organized the voter-registry Since there no need for basicMessage i have removed it, and changed few methods to be in language level 7 added the RegistryInstance interface Which gives the basic registry functionality (because there going to be at least two registries) Changed the SimpleRegistry The new Simple Registry works according to the RegistryInstance interface Changed the SimpleRegistry The new Simple Registry works according to the RegistryInstance interface Changed the SimpleRegistry The new Simple Registry works according to the RegistryInstance interface Added testing to the SimpleRegistryTest class The Test checking that SetVoter AddVoter AddToGroup RemoveFromGroup methods working. Added testing to the SimpleRegistryTest class The Test checking that SetVoter AddVoter AddToGroup RemoveFromGroup methods working. Test Plan: The idea is to create number of BulletinBoardMessage's that and post them, then ask from the server for message with relevant filter and check that all the messages that have been posted there. Reviewers: arbel.peled Differential Revision: https://proj-cs.idc.ac.il/D1
2016-01-30 12:19:25 -05:00
SimpleRegistry registry = new SimpleRegistry(signatory, communicator);
registry.AddVoter(voterInfo, handler);
Added The protobufs file and its java representation Those protobufs are representing the messages that the registry will use when communicating with the bulletin-board Summary: D:/Work/Wombat Working/voter-registry/comment-info.txt Changed the location of the protobufs file The location have been changed to create order in the packages Changed the location of the ProtobufsMessages file so that the Registry file could use it freely Changed the location of the Protobufs file and added the Registry class The protobufs files location was changed for the right location of the packages for Registry class be able to use the protobufs files Changed the location of the ProtobufsMessages file for creating more organized project Created the SimpleRegistry file SimpleRegistry expose the ability of manging voters information (their groups, and personal data) Created RegistryTagTypes file this file have the different tags for registry messages Changed the SimpleRegistry file started to implement the different methods of this class (such as created basic messages) Changed the ProtobufMessages file now using only the basic registry messages Changed the SimpleRegistry file Managed to create the signatory and add empty builder Added the AccurateTimestamp file This file converts string timestamp to timestamp and the other way , its used for the SimpleRegistry tags Moved the AccurateTimeStamp and the RegistryTagTypes to package called util This way the project files are more organized Add the MessagesUtil file This file contain helpfull methods for working with messages (such as basicMessage and BulletinBoardMessage) Created VoterRegistryMessage VoterRegistryMessage extending the abilities of the basic message also changed the name of MessagesUtils to CollectionMessagesUtils because its suits more this class destination Changed the simpleRegistry file Edited the GetPersonIDDetails method , and refactored the basic methods of upload data to BulletinBoardServer Added the SimpleRegistryTest This object tests the simple registry functionality Added the SimpleRegistryTest This object tests the simple registry functionality Changed the RegistryTagsType to RegistryTags The Name RegistryTags more indicative Added The Wombat Code And Documentation This file describes the conventions of the wombat project Changed the SimpleRegistry and VoterRegistryMessage Documentation The documentation was partial in part of the methods Changed the SimpleRegistry to work with UnsignedBulletinBoardMessage The basicMessage is not needed Changed the SimpleRegistry to work with UnsignedBulletinBoardMessage The basicMessage is not needed Changed the VoterRegistryMessage to wrap UnsignedBulletinBoardMessage there is no need to wrap unused basic message when using UnsignedBulletinBoardMessage Re-organized the voter-registry Since there no need for basicMessage i have removed it, and changed few methods to be in language level 7 Re-organized the voter-registry Since there no need for basicMessage i have removed it, and changed few methods to be in language level 7 added the RegistryInstance interface Which gives the basic registry functionality (because there going to be at least two registries) Changed the SimpleRegistry The new Simple Registry works according to the RegistryInstance interface Changed the SimpleRegistry The new Simple Registry works according to the RegistryInstance interface Changed the SimpleRegistry The new Simple Registry works according to the RegistryInstance interface Added testing to the SimpleRegistryTest class The Test checking that SetVoter AddVoter AddToGroup RemoveFromGroup methods working. Added testing to the SimpleRegistryTest class The Test checking that SetVoter AddVoter AddToGroup RemoveFromGroup methods working. Test Plan: The idea is to create number of BulletinBoardMessage's that and post them, then ask from the server for message with relevant filter and check that all the messages that have been posted there. Reviewers: arbel.peled Differential Revision: https://proj-cs.idc.ac.il/D1
2016-01-30 12:19:25 -05:00
assertEquals(handler.counter , 0);
Added The protobufs file and its java representation Those protobufs are representing the messages that the registry will use when communicating with the bulletin-board Summary: D:/Work/Wombat Working/voter-registry/comment-info.txt Changed the location of the protobufs file The location have been changed to create order in the packages Changed the location of the ProtobufsMessages file so that the Registry file could use it freely Changed the location of the Protobufs file and added the Registry class The protobufs files location was changed for the right location of the packages for Registry class be able to use the protobufs files Changed the location of the ProtobufsMessages file for creating more organized project Created the SimpleRegistry file SimpleRegistry expose the ability of manging voters information (their groups, and personal data) Created RegistryTagTypes file this file have the different tags for registry messages Changed the SimpleRegistry file started to implement the different methods of this class (such as created basic messages) Changed the ProtobufMessages file now using only the basic registry messages Changed the SimpleRegistry file Managed to create the signatory and add empty builder Added the AccurateTimestamp file This file converts string timestamp to timestamp and the other way , its used for the SimpleRegistry tags Moved the AccurateTimeStamp and the RegistryTagTypes to package called util This way the project files are more organized Add the MessagesUtil file This file contain helpfull methods for working with messages (such as basicMessage and BulletinBoardMessage) Created VoterRegistryMessage VoterRegistryMessage extending the abilities of the basic message also changed the name of MessagesUtils to CollectionMessagesUtils because its suits more this class destination Changed the simpleRegistry file Edited the GetPersonIDDetails method , and refactored the basic methods of upload data to BulletinBoardServer Added the SimpleRegistryTest This object tests the simple registry functionality Added the SimpleRegistryTest This object tests the simple registry functionality Changed the RegistryTagsType to RegistryTags The Name RegistryTags more indicative Added The Wombat Code And Documentation This file describes the conventions of the wombat project Changed the SimpleRegistry and VoterRegistryMessage Documentation The documentation was partial in part of the methods Changed the SimpleRegistry to work with UnsignedBulletinBoardMessage The basicMessage is not needed Changed the SimpleRegistry to work with UnsignedBulletinBoardMessage The basicMessage is not needed Changed the VoterRegistryMessage to wrap UnsignedBulletinBoardMessage there is no need to wrap unused basic message when using UnsignedBulletinBoardMessage Re-organized the voter-registry Since there no need for basicMessage i have removed it, and changed few methods to be in language level 7 Re-organized the voter-registry Since there no need for basicMessage i have removed it, and changed few methods to be in language level 7 added the RegistryInstance interface Which gives the basic registry functionality (because there going to be at least two registries) Changed the SimpleRegistry The new Simple Registry works according to the RegistryInstance interface Changed the SimpleRegistry The new Simple Registry works according to the RegistryInstance interface Changed the SimpleRegistry The new Simple Registry works according to the RegistryInstance interface Added testing to the SimpleRegistryTest class The Test checking that SetVoter AddVoter AddToGroup RemoveFromGroup methods working. Added testing to the SimpleRegistryTest class The Test checking that SetVoter AddVoter AddToGroup RemoveFromGroup methods working. Test Plan: The idea is to create number of BulletinBoardMessage's that and post them, then ask from the server for message with relevant filter and check that all the messages that have been posted there. Reviewers: arbel.peled Differential Revision: https://proj-cs.idc.ac.il/D1
2016-01-30 12:19:25 -05:00
List<String> tags = new ArrayList<>();
tags.add("AddVoter");
Added The protobufs file and its java representation Those protobufs are representing the messages that the registry will use when communicating with the bulletin-board Summary: D:/Work/Wombat Working/voter-registry/comment-info.txt Changed the location of the protobufs file The location have been changed to create order in the packages Changed the location of the ProtobufsMessages file so that the Registry file could use it freely Changed the location of the Protobufs file and added the Registry class The protobufs files location was changed for the right location of the packages for Registry class be able to use the protobufs files Changed the location of the ProtobufsMessages file for creating more organized project Created the SimpleRegistry file SimpleRegistry expose the ability of manging voters information (their groups, and personal data) Created RegistryTagTypes file this file have the different tags for registry messages Changed the SimpleRegistry file started to implement the different methods of this class (such as created basic messages) Changed the ProtobufMessages file now using only the basic registry messages Changed the SimpleRegistry file Managed to create the signatory and add empty builder Added the AccurateTimestamp file This file converts string timestamp to timestamp and the other way , its used for the SimpleRegistry tags Moved the AccurateTimeStamp and the RegistryTagTypes to package called util This way the project files are more organized Add the MessagesUtil file This file contain helpfull methods for working with messages (such as basicMessage and BulletinBoardMessage) Created VoterRegistryMessage VoterRegistryMessage extending the abilities of the basic message also changed the name of MessagesUtils to CollectionMessagesUtils because its suits more this class destination Changed the simpleRegistry file Edited the GetPersonIDDetails method , and refactored the basic methods of upload data to BulletinBoardServer Added the SimpleRegistryTest This object tests the simple registry functionality Added the SimpleRegistryTest This object tests the simple registry functionality Changed the RegistryTagsType to RegistryTags The Name RegistryTags more indicative Added The Wombat Code And Documentation This file describes the conventions of the wombat project Changed the SimpleRegistry and VoterRegistryMessage Documentation The documentation was partial in part of the methods Changed the SimpleRegistry to work with UnsignedBulletinBoardMessage The basicMessage is not needed Changed the SimpleRegistry to work with UnsignedBulletinBoardMessage The basicMessage is not needed Changed the VoterRegistryMessage to wrap UnsignedBulletinBoardMessage there is no need to wrap unused basic message when using UnsignedBulletinBoardMessage Re-organized the voter-registry Since there no need for basicMessage i have removed it, and changed few methods to be in language level 7 Re-organized the voter-registry Since there no need for basicMessage i have removed it, and changed few methods to be in language level 7 added the RegistryInstance interface Which gives the basic registry functionality (because there going to be at least two registries) Changed the SimpleRegistry The new Simple Registry works according to the RegistryInstance interface Changed the SimpleRegistry The new Simple Registry works according to the RegistryInstance interface Changed the SimpleRegistry The new Simple Registry works according to the RegistryInstance interface Added testing to the SimpleRegistryTest class The Test checking that SetVoter AddVoter AddToGroup RemoveFromGroup methods working. Added testing to the SimpleRegistryTest class The Test checking that SetVoter AddVoter AddToGroup RemoveFromGroup methods working. Test Plan: The idea is to create number of BulletinBoardMessage's that and post them, then ask from the server for message with relevant filter and check that all the messages that have been posted there. Reviewers: arbel.peled Differential Revision: https://proj-cs.idc.ac.il/D1
2016-01-30 12:19:25 -05:00
BulletinBoardAPI.MessageFilterList filters = registry.GetRelevantMessagesFilters(tags);
DummyBulletinBoardCallBackHandler bulletinHandler = new DummyBulletinBoardCallBackHandler();
communicator.readMessages(filters, bulletinHandler);
List<BulletinBoardAPI.BulletinBoardMessage> messages = bulletinHandler.getMessages();
assert messages.contains(voterInfo) : "The server don't have the new user data.";
List<VoterRegistryMessage> voterMessages = ConvertToVoterRegistryMessages(handler.data);
assertTrue(voterMessages.get(0).GetWantedTagFromBasicMessage(RegistryTags.ID_TAG).contains(voterInfo.getId().getId()));
}
}