use of fi.otavanopisto.muikku.atests.DiscussionThread in project muikku by otavanopisto.
the class CourseDiscussionTestsBase method courseDiscussionDeleteThreadTest.
@Test
@TestEnvironments(browsers = { TestEnvironments.Browser.CHROME, TestEnvironments.Browser.FIREFOX, TestEnvironments.Browser.INTERNET_EXPLORER, TestEnvironments.Browser.EDGE, TestEnvironments.Browser.SAFARI })
public void courseDiscussionDeleteThreadTest() throws Exception {
Long courseId = 1l;
loginAdmin();
try {
Workspace workspace = createWorkspace("testcourses", "test course for testing", String.valueOf(courseId), Boolean.TRUE);
try {
DiscussionGroup discussionGroup = createWorkspaceDiscussionGroup(workspace.getId(), "test group");
try {
Discussion discussion = createWorkspaceDiscussion(workspace.getId(), discussionGroup.getId(), "test discussion");
try {
DiscussionThread thread = createWorkspaceDiscussionThread(workspace.getId(), discussionGroup.getId(), discussion.getId(), "Testing", "<p>Testing testing daa daa</p>", false, false);
try {
navigate(String.format("/workspace/%s/discussions", workspace.getName()), true);
waitAndClick(".di-message-meta-topic>span");
waitAndClick(".di-remove-thread-link");
waitAndClick(".delete-button>span");
waitForPresent(".mf-content-empty>h3");
assertNotPresent(".di-threads .di-message");
} catch (Exception e) {
deleteWorkspaceDiscussionThread(workspace.getId(), discussionGroup.getId(), discussion.getId(), thread.getId());
} finally {
deleteWorkspaceDiscussionThread(workspace.getId(), discussionGroup.getId(), discussion.getId(), thread.getId());
}
} finally {
deleteWorkspaceDiscussion(workspace.getId(), discussionGroup.getId(), discussion.getId());
}
} finally {
deleteWorkspaceDiscussionGroup(workspace.getId(), discussionGroup.getId());
}
} finally {
deleteWorkspace(workspace.getId());
}
} finally {
WireMock.reset();
}
}
use of fi.otavanopisto.muikku.atests.DiscussionThread in project muikku by otavanopisto.
the class DiscussionTestsBase method discussionReplyTest.
@Test
@TestEnvironments(browsers = { TestEnvironments.Browser.CHROME, TestEnvironments.Browser.FIREFOX, TestEnvironments.Browser.INTERNET_EXPLORER, TestEnvironments.Browser.EDGE, TestEnvironments.Browser.SAFARI })
public void discussionReplyTest() throws Exception {
loginAdmin();
DiscussionGroup discussionGroup = createDiscussionGroup("test group");
try {
Discussion discussion = createDiscussion(discussionGroup.getId(), "test discussion");
try {
DiscussionThread thread = createDiscussionThread(discussionGroup.getId(), discussion.getId(), "Testing", "<p>Testing testing daa daa</p>", false, false);
try {
navigate("/discussion", true);
waitAndClick(".di-message-meta-topic>span");
waitAndClick(".di-message-reply-link");
addTextToCKEditor("Test reply for test.");
click("*[name='send']");
waitForPresent(".di-replies-container .mf-item-content-text p");
assertText(".di-replies-container .mf-item-content-text p", "Test reply for test.");
} finally {
deleteDiscussionThread(discussionGroup.getId(), discussion.getId(), thread.getId());
}
} finally {
deleteDiscussion(discussionGroup.getId(), discussion.getId());
}
} finally {
deleteDiscussionGroup(discussionGroup.getId());
WireMock.reset();
}
}
use of fi.otavanopisto.muikku.atests.DiscussionThread in project muikku by otavanopisto.
the class AbstractUITest method createWorkspaceDiscussionThread.
protected DiscussionThread createWorkspaceDiscussionThread(Long workspaceEntityId, Long groupId, Long discussionId, String title, String message, Boolean sticky, Boolean locked) throws IOException {
ObjectMapper objectMapper = new ObjectMapper().registerModule(new JSR310Module()).disable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS);
DiscussionThread payload = new DiscussionThread(null, title, message, sticky, locked);
Response response = asAdmin().contentType("application/json").body(payload).post("/test/workspaces/{WORKSPACEENTITYID}/discussiongroups/{GROUPID}/discussions/{DISCUSSIONID}/threads", workspaceEntityId, groupId, discussionId);
response.then().statusCode(200);
DiscussionThread workspaceDiscussionThread = objectMapper.readValue(response.asString(), DiscussionThread.class);
assertNotNull(workspaceDiscussionThread);
assertNotNull(workspaceDiscussionThread.getId());
return workspaceDiscussionThread;
}
use of fi.otavanopisto.muikku.atests.DiscussionThread in project muikku by otavanopisto.
the class AbstractUITest method createDiscussionThread.
protected DiscussionThread createDiscussionThread(Long groupId, Long discussionId, String title, String message, Boolean sticky, Boolean locked) throws IOException {
ObjectMapper objectMapper = new ObjectMapper().registerModule(new JSR310Module()).disable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS);
DiscussionThread payload = new DiscussionThread(null, title, message, sticky, locked);
Response response = asAdmin().contentType("application/json").body(payload).post("/test/discussiongroups/{GROUPID}/discussions/{DISCUSSIONID}/threads", groupId, discussionId);
response.then().statusCode(200);
DiscussionThread discussionThread = objectMapper.readValue(response.asString(), DiscussionThread.class);
assertNotNull(discussionThread);
assertNotNull(discussionThread.getId());
return discussionThread;
}
use of fi.otavanopisto.muikku.atests.DiscussionThread in project muikku by otavanopisto.
the class CourseDiscussionTestsBase method courseDiscussionReplyTest.
@Test
@TestEnvironments(browsers = { TestEnvironments.Browser.CHROME, TestEnvironments.Browser.FIREFOX, TestEnvironments.Browser.INTERNET_EXPLORER, TestEnvironments.Browser.EDGE, TestEnvironments.Browser.SAFARI })
public void courseDiscussionReplyTest() throws Exception {
loginAdmin();
Workspace workspace = createWorkspace("testcourse", "test course for testing", "1", Boolean.TRUE);
try {
DiscussionGroup discussionGroup = createWorkspaceDiscussionGroup(workspace.getId(), "test group");
try {
Discussion discussion = createWorkspaceDiscussion(workspace.getId(), discussionGroup.getId(), "test discussion");
try {
DiscussionThread thread = createWorkspaceDiscussionThread(workspace.getId(), discussionGroup.getId(), discussion.getId(), "Testing", "<p>Testing testing daa daa</p>", false, false);
try {
navigate(String.format("/workspace/%s/discussions", workspace.getName()), true);
waitAndClick(".di-message-meta-topic>span");
waitAndClick(".di-message-reply-link");
addTextToCKEditor("Test reply for test.");
click("*[name='send']");
waitForPresent(".di-replies-container .mf-item-content-text p");
assertText(".di-replies-container .mf-item-content-text p", "Test reply for test.");
} finally {
deleteWorkspaceDiscussionThread(workspace.getId(), discussionGroup.getId(), discussion.getId(), thread.getId());
}
} finally {
deleteWorkspaceDiscussion(workspace.getId(), discussionGroup.getId(), discussion.getId());
}
} finally {
deleteWorkspaceDiscussionGroup(workspace.getId(), discussionGroup.getId());
}
} finally {
deleteWorkspace(workspace.getId());
WireMock.reset();
}
}
Aggregations