Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package test.models;
- import static org.fest.assertions.Assertions.assertThat;
- import static org.junit.Assert.fail;
- import static play.test.Helpers.fakeApplication;
- import static play.test.Helpers.inMemoryDatabase;
- import static play.test.Helpers.running;
- import java.util.HashSet;
- import java.util.Set;
- import models.Project;
- import models.User;
- import org.junit.Test;
- public class ProjectTest extends AbstractPersistableTestCase {
- private final String prefix = "Project_";
- private final String testTitle = prefix + System.currentTimeMillis();
- private final String testTitle2 = prefix + "NEW_"
- + System.currentTimeMillis();
- private final String userName = "USER_" + testTitle;
- private final String userName2 = "USER2_" + testTitle;
- private final String userName3 = "USER_3" + testTitle;
- private final String userName4 = "USER_4" + testTitle;
- private final String userEmail = "sometestmail@testing.com";
- private final String userEmail2 = "someothertestmail@testing.com";
- private final String userEmail3 = "sometestmail3@testing.com";
- private final String userEmail4 = "someothertestmail4@testing.com";
- /**
- * Tests that we can store a project
- */
- @Test
- public void createAndUpdateProject() {
- running(fakeApplication(inMemoryDatabase()), new Runnable() {
- @Override
- public void run() {
- final User user = new User(userName, userEmail);
- final Set<User> parts = new HashSet<User>();
- parts.add(new User(userName3, userEmail3));
- parts.add(new User(userName4, userEmail4));
- final Project project = new Project(testTitle, user);
- project.participants = parts;
- project.save();
- assertThat(User.find.findList().size()).isEqualTo(3);
- // get project
- final Project p = Project.find.byId(project.id);
- assertThat(p.id).isEqualTo(project.id);
- assertThat(p.title).isEqualTo(testTitle);
- assertThat(p.owner).isEqualTo(user);
- assertThat(p.creator).isEqualTo(user);
- assertThat(p.createdTime).isNotNull();
- // wait two seconds to make sure that updated time changes
- System.out.println("Sleeping...");
- try {
- Thread.sleep(2000L);
- } catch (final InterruptedException e) {
- fail(e.getMessage());
- }
- final User user2 = new User(userName2, userEmail2);
- p.owner = p.creator = user2;
- p.title = testTitle2;
- // update project with new data
- System.out.println("Updating bean...");
- saveBean(p);
- System.out.println("Theee ID: " + project.id);
- final Project pNew = Project.find.byId(project.id);
- System.out.println("Retrieved new project: " + pNew);
- assertThat(pNew.id).isEqualTo(project.id);
- assertThat(pNew.title).isEqualTo(testTitle2);
- assertThat(pNew.owner).isEqualTo(user2);
- assertThat(pNew.creator).isEqualTo(user2);
- }
- });
- }
- /**
- * Tests that we can delete a project
- */
- @Test
- public void deleteProjects() {
- running(fakeApplication(inMemoryDatabase()), new Runnable() {
- @Override
- public void run() {
- // create project
- final User user = new User(userName, userEmail);
- final User user2 = new User(userName2, userEmail2);
- final Set<User> parts = new HashSet<User>();
- parts.add(new User(userName3, userEmail3));
- parts.add(new User(userName4, userEmail4));
- final Project project = new Project(testTitle, user);
- project.participants = parts;
- saveBean(project);
- System.out.println("Created bean..." + project);
- // get projects
- Project p = Project.find.byId(project.id);
- assertThat(p).isNotNull();
- // delete project
- p.delete();
- // deleteBean(p);
- System.out.println("Deleted..." + p);
- p = Project.find.byId(p.id);
- assertThat(p).isNull();
- deleteBean(project);
- }
- });
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement