Index: TestHarness4LAMS2/.classpath
===================================================================
RCS file: /usr/local/cvsroot/TestHarness4LAMS2/.classpath,v
diff -u -r1.6 -r1.6.2.1
--- TestHarness4LAMS2/.classpath 16 Jan 2014 16:46:42 -0000 1.6
+++ TestHarness4LAMS2/.classpath 12 Dec 2016 17:48:45 -0000 1.6.2.1
@@ -13,5 +13,12 @@
+
+
+
+
+
+
+
Index: TestHarness4LAMS2/lib/jboss-logging-3.1.4.GA.jar
===================================================================
RCS file: /usr/local/cvsroot/TestHarness4LAMS2/lib/Attic/jboss-logging-3.1.4.GA.jar,v
diff -u -r1.1 -r1.1.2.1
Binary files differ
Index: TestHarness4LAMS2/lib/jboss-websocket-api_1.1_spec-1.1.0.Final.jar
===================================================================
RCS file: /usr/local/cvsroot/TestHarness4LAMS2/lib/Attic/jboss-websocket-api_1.1_spec-1.1.0.Final.jar,v
diff -u -r1.1 -r1.1.2.1
Binary files differ
Index: TestHarness4LAMS2/lib/undertow-core-1.1.8.Final.jar
===================================================================
RCS file: /usr/local/cvsroot/TestHarness4LAMS2/lib/Attic/undertow-core-1.1.8.Final.jar,v
diff -u -r1.1 -r1.1.2.1
Binary files differ
Index: TestHarness4LAMS2/lib/undertow-servlet-1.1.8.Final.jar
===================================================================
RCS file: /usr/local/cvsroot/TestHarness4LAMS2/lib/Attic/undertow-servlet-1.1.8.Final.jar,v
diff -u -r1.1 -r1.1.2.1
Binary files differ
Index: TestHarness4LAMS2/lib/undertow-websockets-jsr-1.1.8.Final.jar
===================================================================
RCS file: /usr/local/cvsroot/TestHarness4LAMS2/lib/Attic/undertow-websockets-jsr-1.1.8.Final.jar,v
diff -u -r1.1 -r1.1.2.1
Binary files differ
Index: TestHarness4LAMS2/lib/xnio-api-3.3.0.Final.jar
===================================================================
RCS file: /usr/local/cvsroot/TestHarness4LAMS2/lib/Attic/xnio-api-3.3.0.Final.jar,v
diff -u -r1.1 -r1.1.2.1
Binary files differ
Index: TestHarness4LAMS2/lib/xnio-nio-3.3.0.Final.jar
===================================================================
RCS file: /usr/local/cvsroot/TestHarness4LAMS2/lib/Attic/xnio-nio-3.3.0.Final.jar,v
diff -u -r1.1 -r1.1.2.1
Binary files differ
Index: TestHarness4LAMS2/src/org/lamsfoundation/testharness/learner/MockLearner.java
===================================================================
RCS file: /usr/local/cvsroot/TestHarness4LAMS2/src/org/lamsfoundation/testharness/learner/MockLearner.java,v
diff -u -r1.25.2.8 -r1.25.2.9
--- TestHarness4LAMS2/src/org/lamsfoundation/testharness/learner/MockLearner.java 21 Jul 2016 07:35:54 -0000 1.25.2.8
+++ TestHarness4LAMS2/src/org/lamsfoundation/testharness/learner/MockLearner.java 12 Dec 2016 17:48:46 -0000 1.25.2.9
@@ -24,7 +24,6 @@
import java.io.File;
import java.io.IOException;
-import java.net.URLEncoder;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
@@ -35,7 +34,11 @@
import java.util.regex.Matcher;
import java.util.regex.Pattern;
+import javax.websocket.MessageHandler;
+
import org.apache.log4j.Logger;
+import org.apache.tomcat.util.json.JSONException;
+import org.apache.tomcat.util.json.JSONObject;
import org.lamsfoundation.testharness.Call;
import org.lamsfoundation.testharness.MockUser;
import org.lamsfoundation.testharness.TestHarnessException;
@@ -67,7 +70,7 @@
private static final String LESSON_FINISHED_FLAG = "LessonComplete.do";
private static final String LOAD_TOOL_ACTIVITY_FLAG = "Load Tool Activity";
private static final Pattern SESSION_MAP_ID_PATTERN = Pattern.compile("sessionMapID=(.+)\\&");
- private static final Pattern TOOL_SESSION_ID_PATTERN = Pattern.compile("var TOOL_SESSION_ID = '(\\d+)'");
+ private static final Pattern TOOL_SESSION_ID_PATTERN = Pattern.compile("TOOL_SESSION_ID = '(\\d+)'");
private static final String FINISH_SUBSTRING = "finish.do";
private static final String FORUM_FINISH_SUBSTRING = "lafrum11/learning/finish.do";
@@ -510,6 +513,7 @@
return nextResp;
}
+ @SuppressWarnings("deprecation")
private void handleToolChat(WebResponse resp) throws IOException {
String asText = resp.getText();
Matcher m = MockLearner.TOOL_SESSION_ID_PATTERN.matcher(asText);
@@ -518,14 +522,32 @@
return;
}
- String url = MockLearner.CHAT_FINISH_SUBSTRING + "?dispatch=sendMessage&toolSessionID=" + m.group(1)
- + "&message=";
- // send few messages
- for (int replyIndex = 0; replyIndex < MockLearner.CHAT_REPLIES; replyIndex++) {
- String message = MockLearner.composeArbitraryText();
- message = URLEncoder.encode(message, "UTF-8");
- new Call(wc, test, username + " sends Chat message", url + message).execute();
- delay();
+ String toolSessionID = m.group(1);
+ String url = test.getTestSuite().getTargetServer().replace("http", "ws")
+ + "/lams/tool/lachat11/learningWebsocket?toolSessionID=" + toolSessionID;
+ String sessionID = wc.getCookieJar().getCookieValue("JSESSIONID");
+ WebsocketClient websocketClient = new WebsocketClient(url, sessionID, new MessageHandler.Whole() {
+ @Override
+ public void onMessage(String message) {
+ log.debug(username + " received Chat " + toolSessionID + " history from server: " + message);
+ }
+ });
+
+ // send few messages to the whole group
+ JSONObject messageJSON = new JSONObject();
+ try {
+ messageJSON.put("toolSessionID", toolSessionID);
+ messageJSON.put("toUser", "");
+ for (int replyIndex = 0; replyIndex < MockLearner.CHAT_REPLIES; replyIndex++) {
+ String message = MockLearner.composeArbitraryText();
+ messageJSON.put("message", message);
+ // send message to websocket
+ websocketClient.sendMessage(messageJSON.toString());
+ delay();
+ }
+ websocketClient.close();
+ } catch (JSONException e) {
+ throw new IOException("Error while creating Chat JSON for websocket", e);
}
}
Fisheye: Tag 1.1 refers to a dead (removed) revision in file `TestHarness4LAMS2/src/org/lamsfoundation/testharness/learner/WebsocketClient.java'.
Fisheye: No comparison available. Pass `N' to diff?