Index: lams_common/db/sql/insert_test_data.sql =================================================================== diff -u -rb9fb56c5233bb5f2b5c9ec7a4e3bb0454612b12a -r8bad300543fcb9835328a90421398ce890566880 --- lams_common/db/sql/insert_test_data.sql (.../insert_test_data.sql) (revision b9fb56c5233bb5f2b5c9ec7a4e3bb0454612b12a) +++ lams_common/db/sql/insert_test_data.sql (.../insert_test_data.sql) (revision 8bad300543fcb9835328a90421398ce890566880) @@ -663,6 +663,76 @@ null, 1,0,'Online Instructions',1); +insert into lams_learning_activity +(activity_id,activity_ui_id, +description,title,help_text, +xcoord,ycoord, +parent_activity_id,parent_ui_id,learning_activity_type_id, +grouping_id,grouping_ui_id,order_id,define_later_flag, +learning_design_id,learning_library_id,create_date_time, +run_offline_flag,offline_instructions, +max_number_of_options,min_number_of_options,options_instructions, +tool_id,tool_content_id, +gate_activity_level_id,gate_open_flag, +gate_start_time_offset,gate_end_time_offset, +gate_start_date_time,gate_end_date_time, +library_activity_ui_image, +create_grouping_id,create_grouping_ui_id, +library_activity_id, +grouping_support_type_id, apply_grouping_flag,online_instructions,activity_category_id) +values +(27,27, +'Schedule Gate','Schedule Gate Activity','Help Text for Schedule Gate', +10,20, +null,null,4, +null,null,0,0, +1,null,'20050101', +0,null, +null,null,null, +null,null, +3,0, +1,2, +null,null, +'ScheduleGateImage', +null,null, +null, +1,0,'Online Instructions',1); + +insert into lams_learning_activity +(activity_id,activity_ui_id, +description,title,help_text, +xcoord,ycoord, +parent_activity_id,parent_ui_id,learning_activity_type_id, +grouping_id,grouping_ui_id,order_id,define_later_flag, +learning_design_id,learning_library_id,create_date_time, +run_offline_flag,offline_instructions, +max_number_of_options,min_number_of_options,options_instructions, +tool_id,tool_content_id, +gate_activity_level_id,gate_open_flag, +gate_start_time_offset,gate_end_time_offset, +gate_start_date_time,gate_end_date_time, +library_activity_ui_image, +create_grouping_id,create_grouping_ui_id, +library_activity_id, +grouping_support_type_id, apply_grouping_flag,online_instructions,activity_category_id) +values +(28,28, +'Permission Gate','Permission Gate Activity','Help Text for Permission Gate', +10,20, +null,null,5, +null,null,0,0, +1,null,'20050101', +0,null, +null,null,null, +null,null, +3,0, +null,null, +null,null, +'PermissionGateImage', +null,null, +null, +1,0,'Online Instructions',1); + -- Populates the lams_learning_transition table with various transitions for the dummy design insert into lams_learning_transition(transition_id,transition_ui_id,description,title,to_activity_id,from_activity_id,learning_design_id,create_date_time,to_ui_id,from_ui_id) @@ -675,14 +745,20 @@ values(3,3,'Notebook to GroupingActivity','Notebook to GroupingActivity',23,15,1,'20050207',23,1); insert into lams_learning_transition(transition_id,transition_ui_id,description,title,to_activity_id,from_activity_id,learning_design_id,create_date_time,to_ui_id,from_ui_id) -values(4,4,'GroupingActivity to Chat','GroupingActivity to Chat',21,23,1,'20050207',7,23); +values(4,4,'GroupingActivity to Schedule gate','GroupingActivity to Schedule gate',27,23,1,'20050207',27,23); insert into lams_learning_transition(transition_id,transition_ui_id,description,title,to_activity_id,from_activity_id,learning_design_id,create_date_time,to_ui_id,from_ui_id) -values(5,5,'Chat to QNA','Chat to QNA',24,21,1,'20050207',24,7); +values(5,5,'Schedule gate to Chat','Schedule gate to Chat',21,27,1,'20050207',7,27); insert into lams_learning_transition(transition_id,transition_ui_id,description,title,to_activity_id,from_activity_id,learning_design_id,create_date_time,to_ui_id,from_ui_id) -values(6,6,'QNA to OptionsActivity','QNA to OptionsActivity',12,24,1,'20050207',12,24); +values(6,6,'Chat to QNA','Chat to QNA',24,21,1,'20050207',24,7); +insert into lams_learning_transition(transition_id,transition_ui_id,description,title,to_activity_id,from_activity_id,learning_design_id,create_date_time,to_ui_id,from_ui_id) +values(7,7,'QNA to Permission gate','QNA to Permission gate',28,24,1,'20050207',28,24); + +insert into lams_learning_transition(transition_id,transition_ui_id,description,title,to_activity_id,from_activity_id,learning_design_id,create_date_time,to_ui_id,from_ui_id) +values(8,8,'Permission gate to OptionsActivity','Permission gate to OptionsActivity',12,28,1,'20050207',12,28); + --insert into lams_learning_transition(transition_id,transition_ui_id,description,title,to_activity_id,from_activity_id,learning_design_id,create_date_time,to_ui_id,from_ui_id) --values(6,6,'OptionsActivity to Notebook','OptionsActivity to Notebook',16,12,1,'20050207',2,12); @@ -693,7 +769,7 @@ --values(8,8,'MultipleChoice to ParallelActivity','MultipleChoice to ParallelActivity',13,17,1,'20050207',13,3); insert into lams_learning_transition(transition_id,transition_ui_id,description,title,to_activity_id,from_activity_id,learning_design_id,create_date_time,to_ui_id,from_ui_id) -values(7,7,'OptionsActivity to ParallelActivity','OptionsActivity to ParallelActivity',13,12,1,'20050207',13,12); +values(9,9,'OptionsActivity to ParallelActivity','OptionsActivity to ParallelActivity',13,12,1,'20050207',13,12); --insert into lams_learning_transition(transition_id,transition_ui_id,description,title,to_activity_id,from_activity_id,learning_design_id,create_date_time,to_ui_id,from_ui_id) --values(9,9,'ParallelActivity to QNA','ParallelActivity to QNA',18,13,1,'20050207',4,13); @@ -702,7 +778,7 @@ --values(10,10,'QNA to MessageBoard','QNA to MessageBoard',19,18,1,'20050207',5,4); insert into lams_learning_transition(transition_id,transition_ui_id,description,title,to_activity_id,from_activity_id,learning_design_id,create_date_time,to_ui_id,from_ui_id) -values(8,8,'ParallelActivity to SequenceActivity','ParallelActivity to SequenceActivity',14,13,1,'20050207',14,13); +values(10,10,'ParallelActivity to SequenceActivity','ParallelActivity to SequenceActivity',14,13,1,'20050207',14,13); --insert into lams_learning_transition(transition_id,transition_ui_id,description,title,to_activity_id,from_activity_id,learning_design_id,create_date_time,to_ui_id,from_ui_id) --values(12,12,'SequenceActivity to Shared Resources','SequenceActivity to Shared Resources',22,14,1,'20050207',8,14); Index: lams_learning/test/java/org/lamsfoundation/lams/learning/service/TestLearnerService.java =================================================================== diff -u -rfdfe33f9febbb6d1b96a2f84b6902f7f8f628ad9 -r8bad300543fcb9835328a90421398ce890566880 --- lams_learning/test/java/org/lamsfoundation/lams/learning/service/TestLearnerService.java (.../TestLearnerService.java) (revision fdfe33f9febbb6d1b96a2f84b6902f7f8f628ad9) +++ lams_learning/test/java/org/lamsfoundation/lams/learning/service/TestLearnerService.java (.../TestLearnerService.java) (revision 8bad300543fcb9835328a90421398ce890566880) @@ -77,11 +77,11 @@ private User testUser; private Lesson testLesson; private static LearnerProgress testProgress; - private static final long TEST_SYNCHGATE_ACTIVITY_ID = 31; + private static final long TEST_SYNCHGATE_ACTIVITY_ID = 33; private static final long TEST_RGRP_ACTIVITY_ID = 23; - private static final long TEST_CNB_ACTIVITY_ID = 33; - private static final long TEST_CQNA_ACTIVITY_ID = 36; - private static final long TEST_MB_ACTIVITY_ID = 37; + private static final long TEST_CNB_ACTIVITY_ID = 37; + private static final long TEST_CQNA_ACTIVITY_ID = 40; + private static final long TEST_MB_ACTIVITY_ID = 41; private static final long TEST_SYNCHGATE_ACTIVITY_UIID = 26; private static final long TEST_NOTEBOOK_ACTIVITY_UIID = 1; @@ -97,10 +97,13 @@ private static final long TEST_SEQUENCE_ACTIVITY_UIID = 14; private static final long TEST_SR_ACTIVITY_UIID = 8; private static final long TEST_SQNA_ACTIVITY_UIID = 25; + private static final long TEST_SCHEDULE_GATE_ACTIVITY_UIID = 27; + private static final long TEST_PERMISSION_GATE_ACTIVITY_UIID = 28; private static final String HOST="http://localhost:8080/lams_learning"; private static final String LOAD_TOOL_URL="/LoadToolActivity.do"; private static final String GATE_URL="/gate.do"; private static final String PARAM_ACTIVITY_ID="?activityId="; + /* * @see TestCase#setUp() */ @@ -207,32 +210,52 @@ testLesson); assertLearnerProgress(testRootPreviousActivity,TEST_RGRP_ACTIVITY_UIID,TEST_RGRP_ACTIVITY_UIID,3,1,"random grouping","random grouping"); assertEquals("verify temp completed activities",1,testProgress.getCurrentCompletedActivitiesList().size()); + + //progress from random grouping activity to schedule gate + testCompletedActivity = testProgress.getNextActivity(); + testRootPreviousActivity = testCompletedActivity; + testProgress = learnerService.calculateProgress(testCompletedActivity, + testUser, + testLesson); + assertLearnerProgress(testRootPreviousActivity,TEST_SCHEDULE_GATE_ACTIVITY_UIID,TEST_SCHEDULE_GATE_ACTIVITY_UIID,4,1,"schedule gate","schedule gate"); + assertEquals("verify temp completed activities",1,testProgress.getCurrentCompletedActivitiesList().size()); + - //progress from random grouping activity to chat + //progress from schedule gate activity to chat testCompletedActivity = testProgress.getNextActivity(); testRootPreviousActivity = testCompletedActivity; testProgress = learnerService.calculateProgress(testCompletedActivity, testUser, testLesson); - assertLearnerProgress(testRootPreviousActivity,TEST_CHAT_ACTIVITY_UIID,TEST_CHAT_ACTIVITY_UIID,4,1,"chat","chat"); + assertLearnerProgress(testRootPreviousActivity,TEST_CHAT_ACTIVITY_UIID,TEST_CHAT_ACTIVITY_UIID,5,1,"chat","chat"); assertEquals("verify temp completed activities",1,testProgress.getCurrentCompletedActivitiesList().size()); + + //progress from chat activity to QNA + testCompletedActivity = testProgress.getNextActivity(); + testRootPreviousActivity = testCompletedActivity; + testProgress = learnerService.calculateProgress(testCompletedActivity, + testUser, + testLesson); + assertLearnerProgress(testRootPreviousActivity,TEST_QNA_ACTIVITY_UIID,TEST_QNA_ACTIVITY_UIID,6,1,"QNA","QNA"); + assertEquals("verify temp completed activities",1,testProgress.getCurrentCompletedActivitiesList().size()); - //progress from chat to QNA + + //progress from QNA to permission gate testCompletedActivity = testProgress.getNextActivity(); testRootPreviousActivity = testCompletedActivity; testProgress = learnerService.calculateProgress(testCompletedActivity, testUser, testLesson); - assertLearnerProgress(testRootPreviousActivity,TEST_QNA_ACTIVITY_UIID,TEST_QNA_ACTIVITY_UIID,5,1,"QNA","QNA"); + assertLearnerProgress(testRootPreviousActivity,TEST_PERMISSION_GATE_ACTIVITY_UIID,TEST_PERMISSION_GATE_ACTIVITY_UIID,7,1,"permission gate","permission gate"); assertEquals("verify temp completed activities",1,testProgress.getCurrentCompletedActivitiesList().size()); - //progress from QNA to options activity + //progress from permission gate to options activity testCompletedActivity = testProgress.getNextActivity(); testRootPreviousActivity = testCompletedActivity; testProgress = learnerService.calculateProgress(testCompletedActivity, testUser, testLesson); - assertLearnerProgress(testRootPreviousActivity,TEST_OPTIONS_ACTIVITY_UIID,TEST_OPTIONS_ACTIVITY_UIID,6,1,"OPTIONS","OPTIONS"); + assertLearnerProgress(testRootPreviousActivity,TEST_OPTIONS_ACTIVITY_UIID,TEST_OPTIONS_ACTIVITY_UIID,8,1,"OPTIONS","OPTIONS"); assertEquals("verify temp completed activities",1,testProgress.getCurrentCompletedActivitiesList().size()); //progress from sub option(notice board) to parallel activity @@ -241,7 +264,7 @@ testProgress = learnerService.calculateProgress(testCompletedActivity, testUser, testLesson); - assertLearnerProgress(testRootPreviousActivity,TEST_PARALLEL_ACTIVITY_UIID,TEST_PARALLEL_ACTIVITY_UIID,8,1,"PARALLEL","PARALLEL"); + assertLearnerProgress(testRootPreviousActivity,TEST_PARALLEL_ACTIVITY_UIID,TEST_PARALLEL_ACTIVITY_UIID,10,1,"PARALLEL","PARALLEL"); assertEquals("verify temp completed activities",2,testProgress.getCurrentCompletedActivitiesList().size()); //progress from sub parallel(QNA) to waiting @@ -251,7 +274,7 @@ testProgress = learnerService.calculateProgress(testCompletedActivity, testUser, testLesson); - assertLearnerProgress(testRootPreviousActivity,TEST_PARALLEL_ACTIVITY_UIID,TEST_WAITING_ACTIVITY_UIID,9,1,"PARALLEL","WAITING"); + assertLearnerProgress(testRootPreviousActivity,TEST_PARALLEL_ACTIVITY_UIID,TEST_WAITING_ACTIVITY_UIID,11,1,"PARALLEL","WAITING"); assertTrue("verify waiting flag-should be waiting.",testProgress.isParallelWaiting()); assertTrue("verify next activity",testProgress.getNextActivity()==null); assertEquals("verify temp completed activities",1,testProgress.getCurrentCompletedActivitiesList().size()); @@ -262,7 +285,7 @@ testProgress = learnerService.calculateProgress(testCompletedActivity, testUser, testLesson); - assertLearnerProgress(testRootPreviousActivity,TEST_SEQUENCE_ACTIVITY_UIID,TEST_SR_ACTIVITY_UIID,11,1,"SEQUENCE","SHARE RESOURCE"); + assertLearnerProgress(testRootPreviousActivity,TEST_SEQUENCE_ACTIVITY_UIID,TEST_SR_ACTIVITY_UIID,13,1,"SEQUENCE","SHARE RESOURCE"); assertTrue("verify waiting flag-should not be waiting",!testProgress.isParallelWaiting()); assertEquals("verify temp completed activities",2,testProgress.getCurrentCompletedActivitiesList().size()); @@ -272,7 +295,7 @@ testProgress = learnerService.calculateProgress(testCompletedActivity, testUser, testLesson); - assertLearnerProgress(testRootPreviousActivity,TEST_SEQUENCE_ACTIVITY_UIID,TEST_SQNA_ACTIVITY_UIID,12,2,"SEQUENCE","QNA"); + assertLearnerProgress(testRootPreviousActivity,TEST_SEQUENCE_ACTIVITY_UIID,TEST_SQNA_ACTIVITY_UIID,14,2,"SEQUENCE","QNA"); assertEquals("verify temp completed activities",1,testProgress.getCurrentCompletedActivitiesList().size()); //progress sub sequence(QNA) to complete lesson