@Test
public void testTestUsers() {
// create a test user with exchange properties
final TestUser testUser1 = template().requestBody("direct:createTestUser", TEST_USER1, TestUser.class);
assertNotNull("Test User1", testUser1);
// create a test user with exchange properties
final TestUser testUser2 = template().requestBody("direct:createTestUser", TEST_USER2, TestUser.class);
assertNotNull("Test User2", testUser2);
// make friends, not enemies
final Map<String, Object> headers = new HashMap<String, Object>();
headers.put("CamelFacebook.testUser2", testUser2);
Boolean worked = template().requestBodyAndHeaders("direct:makeFriendTestUser"
, testUser1, headers, Boolean.class);
assertTrue("Friends not made", worked);
// get app test users
final List testUsers = template().requestBody("direct:testUsers", null, List.class);
assertNotNull("Test users", testUsers);
assertFalse("Empty test user list", testUsers.isEmpty());
// delete test users
for (Object user : testUsers) {
final TestUser testUser = (TestUser) user;
if (testUser.equals(testUser1) || testUser.equals(testUser2)) {
final String id = testUser.getId();
worked = template().requestBody("direct:deleteTestUser", id, Boolean.class);
assertTrue("Test user not deleted for id " + id, worked);
}
}
}