public void testEnd2End() throws Exception {
// 1. Run the RuleProcessor job once.
runRuleProcessor();
// 2. Verify the number of enqueued tasks.
QueueStateInfo queueInfo = getQueueStateInfo();
int chunks = USERS / CHUNK_SIZE;
if ((USERS % CHUNK_SIZE) > 0) {
chunks++;
}
assertEquals(chunks, queueInfo.getCountTasks());
// 3. Manually processes the tasks
List<TaskStateInfo> states = queueInfo.getTaskInfo();
for (int i = 0; i < states.size(); i++) {
TaskStateInfo taskInfo = states.get(i);
Response response = executeTask(taskInfo);
assertStatus(200, response);
Map<String, List<String>> params = new QueryStringDecoder("http://dummy/a?" + taskInfo.getBody())