Example #1
0
 public function testOccurences()
 {
     $assessmentItemRefs = new AssessmentItemRefCollection();
     $assessmentItemRefs[] = new AssessmentItemRef('Q1', 'Q1.xml');
     $assessmentItemRefs[] = new AssessmentItemRef('Q2', 'Q2.xml');
     $assessmentItemRefs[] = new AssessmentItemRef('Q3', 'Q3.xml');
     $assessmentSections = new AssessmentSectionCollection();
     $assessmentSections[] = new AssessmentSection('S1', 'Section 1', true);
     $assessmentSections['S1']->setSectionParts($assessmentItemRefs);
     $testParts = new TestPartCollection();
     $testParts[] = new TestPart('T1', $assessmentSections);
     $assessmentTest = new AssessmentTest('test', 'A Test', $testParts);
     $route = new Route();
     $route->addRouteItem($assessmentItemRefs['Q1'], $assessmentSections['S1'], $testParts['T1'], $assessmentTest);
     $route->addRouteItem($assessmentItemRefs['Q2'], $assessmentSections['S1'], $testParts['T1'], $assessmentTest);
     $route->addRouteItem($assessmentItemRefs['Q3'], $assessmentSections['S1'], $testParts['T1'], $assessmentTest);
     $this->assertEquals(1, $route->getOccurenceCount($assessmentItemRefs['Q1']));
     $this->assertEquals(1, $route->getOccurenceCount($assessmentItemRefs['Q2']));
     $this->assertEquals(1, $route->getOccurenceCount($assessmentItemRefs['Q3']));
     $route->addRouteItem($assessmentItemRefs['Q3'], $assessmentSections['S1'], $testParts['T1'], $assessmentTest);
     $this->assertEquals(2, $route->getOccurenceCount($assessmentItemRefs['Q3']));
     // Get the second route item in the route.
     $routeItem2 = $route->getRouteItemAt(1);
     $this->assertEquals('Q2', $routeItem2->getAssessmentItemRef()->getIdentifier());
     $this->assertEquals(0, $routeItem2->getOccurence());
     $routeItem3 = $route->getRouteItemAt(2);
     $this->assertEquals('Q3', $routeItem3->getAssessmentItemRef()->getIdentifier());
     $this->assertEquals(0, $routeItem3->getOccurence());
     $routeItem4 = $route->getRouteItemAt(3);
     $this->assertEquals('Q3', $routeItem4->getAssessmentItemRef()->getIdentifier());
     $this->assertEquals(1, $routeItem4->getOccurence());
 }