[Ils-source] r1298 - in trunk/webapp/testsuite: . classes/CourseAttempt
asmith at crosswire.org
asmith at crosswire.org
Wed Jan 21 14:52:15 MST 2015
Author: asmith
Date: 2015-01-21 14:52:15 -0700 (Wed, 21 Jan 2015)
New Revision: 1298
Added:
trunk/webapp/testsuite/classes/CourseAttempt/init.jsp
trunk/webapp/testsuite/classes/CourseAttempt/test.js
trunk/webapp/testsuite/classes/CourseAttempt/test.jsp
Modified:
trunk/webapp/testsuite/test.html
Log:
Added support for the CourseAttempt class.
Added: trunk/webapp/testsuite/classes/CourseAttempt/init.jsp
===================================================================
--- trunk/webapp/testsuite/classes/CourseAttempt/init.jsp (rev 0)
+++ trunk/webapp/testsuite/classes/CourseAttempt/init.jsp 2015-01-21 21:52:15 UTC (rev 1298)
@@ -0,0 +1,52 @@
+<%@ page language="java" contentType="text/xml;charset=utf-8" %>
+<%@ page trimDirectiveWhitespaces="true" %>
+<%@ page import="com.resolutions.ils.ILSSession" %>
+<%@ page import="com.resolutions.ils.data.Course" %>
+<%@ page import="com.resolutions.ils.data.CourseAttempt" %>
+<%@ page import="java.util.Vector" %>
+<%!
+ //Lets put this here since this function will only ever be used for this test :)
+ static public CourseAttempt getTestCourseAttempt(ILSSession session, String callBackStatus) {
+ CourseAttempt query = new CourseAttempt();
+ String sql = "SELECT * FROM COURSEATTEMPT WHERE CACALLBACKSTATUS={CACALLBACKSTATUS}";
+ query.setCourseAttemptCallbackStatus(callBackStatus);
+ Vector rows = query.getDataSet(sql);
+ return (rows.size() > 0) ? (CourseAttempt) rows.get(0) : null;
+ }
+
+%>
+<%
+ ILSSession ilsSession = (ILSSession)session.getAttribute("ilsSession");
+ if (ilsSession == null) {
+%>
+ <error message="not logged in" />
+<%
+ return;
+ }
+
+ // If test ca exists reset it
+ CourseAttempt ca = getTestCourseAttempt(ilsSession, "courseAttemptTest");
+ if (ca != null) {
+ CourseAttempt.deleteCourseAttempt(ilsSession, ca.getCourseAttemptID());
+ ca = getTestCourseAttempt(ilsSession, "courseAttemptTest");
+ }
+
+ // If mod ca exists delete it
+ CourseAttempt modCA = getTestCourseAttempt(ilsSession, "modTestCourseAttempt");
+ if (modCA != null) {
+ CourseAttempt.deleteCourseAttempt(ilsSession, modCA.getCourseAttemptID());
+
+ } if (ca != null) {
+%>
+ <error message="couldn't delete test course attempt" />
+<%
+ } if (modCA != null) {
+%>
+ <error message="couldn't delete mod course attempt" />
+<%
+ } else {
+%>
+ <success message="successfully initialized for test" />
+<%
+ }
+%>
Added: trunk/webapp/testsuite/classes/CourseAttempt/test.js
===================================================================
--- trunk/webapp/testsuite/classes/CourseAttempt/test.js (rev 0)
+++ trunk/webapp/testsuite/classes/CourseAttempt/test.js 2015-01-21 21:52:15 UTC (rev 1298)
@@ -0,0 +1,34 @@
+QUnit.asyncTest("CourseAttempt class", function(assert) {
+ $.post('classes/CourseAttempt/init.jsp', {}, function(result) {
+ assert.ok($(result).find('success'), $(result).find('success').attr('message'));
+ $.post('classes/CourseAttempt/test.jsp', {}, function(result) {
+ var complete = $(result).find('complete');
+ assert.ok(complete, $(complete).attr('message'));
+
+ /* Lets see what we got */
+ var testCourseAttempt = $(complete).find('createdCourseAttemptTest', 'DataObject');
+ assert.ok(testCourseAttempt, 'found testCourseAttempt');
+ assert.equal($(testCourseAttempt).find('CASCORE').text(), '3', 'courseAttemptScore ok');
+ assert.equal($(testCourseAttempt).find('CASTARTDATE').text(), '2013-09-09 00:00:00.0', 'courseAttemptStartDate ok');
+ assert.equal($(testCourseAttempt).find('CACALLBACKSTATUS').text(), 'courseAttemptTest', 'courseAttemptCallBack ok');
+ assert.equal($(testCourseAttempt).find('COURSID').text(), '-1', 'courseAttemptCourseID ok');
+ assert.equal($(testCourseAttempt).find('USERPRID').text(), '-3', 'courseAttemptUserProfileID ok');
+ assert.equal($(testCourseAttempt).find('CASTATUSID').text(), '-2', 'courseAttemptStatusID ok');
+ assert.equal($(testCourseAttempt).find('CACOMPLETEDATE').text(), '2013-09-09 00:00:00.0', 'courseAttemptCompletedDate ok');
+ assert.equal($(testCourseAttempt).find('CAISMGRAPPRVL').text(), 'F', 'courseAttemptManagerApproved ok');
+
+ var modCourseAttempt = $(complete).find('modifiedCourseAttemptTest', 'DataObject');
+ assert.ok(modCourseAttempt, 'found modCourseAttempt');
+ assert.equal($(modCourseAttempt).find('CASCORE').text(), '7', 'modified courseAttemptScore ok');
+ assert.equal($(modCourseAttempt).find('CASTARTDATE').text(), '2014-12-17 00:00:00.0', 'modified courseAttemptStartDate ok');
+ assert.equal($(modCourseAttempt).find('CACALLBACKSTATUS').text(), 'modTestCourseAttempt', 'modified courseAttemptCallBack ok');
+ assert.equal($(modCourseAttempt).find('COURSID').text(), '-4', 'modified courseAttemptCourseID ok');
+ assert.equal($(modCourseAttempt).find('USERPRID').text(), '-6', 'modified courseAttemptUserProfileID ok');
+ assert.equal($(modCourseAttempt).find('CASTATUSID').text(), '-5', 'modified courseAttemptStatusID ok');
+ assert.equal($(modCourseAttempt).find('CACOMPLETEDATE').text(), '2014-12-17 00:00:00.0', 'modified courseAttemptCompletedDate ok');
+ assert.equal($(modCourseAttempt).find('CAISMGRAPPRVL').text(), 'T', 'modified courseAttemptManagerApproved ok');
+
+ QUnit.start();
+ });
+ });
+});
\ No newline at end of file
Added: trunk/webapp/testsuite/classes/CourseAttempt/test.jsp
===================================================================
--- trunk/webapp/testsuite/classes/CourseAttempt/test.jsp (rev 0)
+++ trunk/webapp/testsuite/classes/CourseAttempt/test.jsp 2015-01-21 21:52:15 UTC (rev 1298)
@@ -0,0 +1,139 @@
+<%@ page language="java" contentType="text/xml;charset=utf-8" %>
+<%@ page trimDirectiveWhitespaces="true" %>
+<%@ page import="com.resolutions.ils.ILSSession" %>
+<%@ page import="com.resolutions.ils.data.CourseAttempt" %>
+<%@ page import="java.util.Calendar" %>
+<%@ page import="java.util.Date" %>
+<%@ page import="java.util.Vector" %>
+<%!
+ //Lets put this here since this function will only ever be used for this test :)
+ static public CourseAttempt getTestCourseAttempt(ILSSession session, String callBackStatus) {
+ CourseAttempt query = new CourseAttempt();
+ String sql = "SELECT * FROM COURSEATTEMPT WHERE CACALLBACKSTATUS={CACALLBACKSTATUS}";
+ query.setCourseAttemptCallbackStatus(callBackStatus);
+ Vector rows = query.getDataSet(sql);
+ return (rows.size() > 0) ? (CourseAttempt) rows.get(0) : null;
+ }
+
+%>
+<%
+ // let's assert we're logged in and get our ilsSession if so
+ ILSSession ilsSession = (ILSSession)session.getAttribute("ilsSession");
+ if (ilsSession == null) {
+%>
+ <error message="not logged in" />
+<%
+ return;
+ }
+
+ // assert we don't already have a test CourseAttempt or modified test CourseAttempt
+ CourseAttempt testCourseAttempt = getTestCourseAttempt(ilsSession, "courseAttemptTest");
+ CourseAttempt modCourseAttempt = getTestCourseAttempt(ilsSession, "modTestCourseAttempt");
+ if (testCourseAttempt != null) {
+%>
+ <error message="test CourseAttempt already exists" />
+<%
+ return;
+
+ } else if (modCourseAttempt != null) {
+%>
+ <error message="modified test CourseAttempt already exists" />
+<%
+ return;
+ }
+
+
+ Calendar c = Calendar.getInstance();
+
+ c.set(2013, Calendar.SEPTEMBER, 9);
+ c.set(Calendar.HOUR_OF_DAY, 0);
+ c.set(Calendar.MINUTE, 0);
+ c.set(Calendar.SECOND, 0);
+ c.set(Calendar.MILLISECOND, 0);
+
+ Date testDate = c.getTime();
+
+ c.set(2014, Calendar.DECEMBER, 17);
+ c.set(Calendar.HOUR_OF_DAY, 0);
+ c.set(Calendar.MINUTE, 0);
+ c.set(Calendar.SECOND, 0);
+ c.set(Calendar.MILLISECOND, 0);
+
+ Date modDate = c.getTime();
+
+ // Create a test CourseAttempt
+ testCourseAttempt = new CourseAttempt();
+ testCourseAttempt.defaultAll();
+
+ testCourseAttempt.setCourseAttemptCompleteDate(testDate);
+ testCourseAttempt.setCourseAttemptCourseID(-1);
+ testCourseAttempt.setCourseAttemptScore(3);
+ testCourseAttempt.setCourseAttemptStartDate(testDate);
+ testCourseAttempt.setCourseAttemptStatusID(-2);
+ testCourseAttempt.setCourseAttemptUserProfileID(-3);
+ testCourseAttempt.setCourseAttemptManagerApproved(false);
+ testCourseAttempt.setCourseAttemptCallbackStatus("courseAttemptTest");
+
+ testCourseAttempt = testCourseAttempt.saveNew(ilsSession);
+
+ // now let's try to retrieve our test CourseAttempt
+ testCourseAttempt = CourseAttempt.getCourseAttempt(ilsSession, testCourseAttempt.getCourseAttemptID());
+
+ if (testCourseAttempt == null) {
+
+%>
+ <error message="couldn't create test CourseAttempt" />
+<%
+ return;
+ }
+
+ // Modify the CourseAttempt
+ CourseAttempt modifiedTestCourseAttempt = (CourseAttempt)testCourseAttempt.clone();
+
+
+ modifiedTestCourseAttempt.setCourseAttemptCompleteDate(modDate);
+ modifiedTestCourseAttempt.setCourseAttemptCourseID(-4);
+ modifiedTestCourseAttempt.setCourseAttemptScore(7);
+ modifiedTestCourseAttempt.setCourseAttemptStartDate(modDate);
+ modifiedTestCourseAttempt.setCourseAttemptStatusID(-5);
+ modifiedTestCourseAttempt.setCourseAttemptUserProfileID(-6);
+ modifiedTestCourseAttempt.setCourseAttemptManagerApproved(true);
+ modifiedTestCourseAttempt.setCourseAttemptCallbackStatus("modTestCourseAttempt");
+ modifiedTestCourseAttempt.setCourseAttemptExpired("mod test expired");
+
+ modifiedTestCourseAttempt.save(testCourseAttempt);
+
+ // Can we grab that modified CourseAttempt?
+ modifiedTestCourseAttempt = CourseAttempt.getCourseAttempt(ilsSession, testCourseAttempt.getCourseAttemptID());
+ if (modifiedTestCourseAttempt == null) {
+%>
+ <error message="couldn't retrieve modified test course attempt" />
+<%
+ return;
+ }
+ // Clean it up and test deletion
+ CourseAttempt.deleteCourseAttempt(ilsSession, testCourseAttempt.getCourseAttemptID());
+ CourseAttempt.deleteCourseAttempt(ilsSession, modifiedTestCourseAttempt.getCourseAttemptID());
+
+ if (CourseAttempt.getCourseAttempt(ilsSession, testCourseAttempt.getCourseAttemptID()) != null) {
+%>
+ <error message="couldn't delete test CourseAttempt" />
+<%
+ return;
+
+ } else if (CourseAttempt.getCourseAttempt(ilsSession, modifiedTestCourseAttempt.getCourseAttemptID()) != null) {
+%>
+ <error message="couldn't delete modified test course attempt" />
+<%
+ return;
+
+ }
+%>
+<complete>
+ <createdCourseAttemptTest>
+ <%= testCourseAttempt %>
+ </createdCourseAttemptTest>
+ <modifiedCourseAttemptTest>
+ <%= modifiedTestCourseAttempt %>
+ </modifiedCourseAttemptTest>
+</complete>
\ No newline at end of file
Modified: trunk/webapp/testsuite/test.html
===================================================================
--- trunk/webapp/testsuite/test.html 2015-01-14 00:04:28 UTC (rev 1297)
+++ trunk/webapp/testsuite/test.html 2015-01-21 21:52:15 UTC (rev 1298)
@@ -24,6 +24,8 @@
<script src="classes/Course/test.js"></script>
+ <script src="classes/CourseAttempt/test.js"></script>
+
<script src="classes/Compliance/test.js"></script>
<script src="classes/Announcement/test.js"></script>
More information about the Ils-source
mailing list