CourseObjectFulfillmentTestCase.test in Course 7.2
File
tests/CourseObjectFulfillmentTestCase.test
View source
<?php
class CourseObjectFulfillmentTestCase extends CourseTestCase {
public static function getInfo() {
return array(
'name' => 'Course object fulfillments',
'description' => 'Ensure that Course object fulfillments function properly.',
'group' => 'Course',
);
}
function testCourseContentObjectFulfillment() {
$this->learner = $this
->drupalCreateUser();
$courseNode = $this
->createCourseNode();
$course = course_get_course($courseNode);
$co1 = course_get_course_object('course_test', 'course_test_object');
$co1
->setCourse($course);
$co1
->save();
$co1
->getFulfillment($this->learner)
->setComplete(TRUE)
->save();
$this
->assertFalse($co1
->getFulfillment($this->learner)
->isComplete(), 'Check that the object is not fulfilled.');
course_enroll($courseNode, $this->learner);
$co1
->getFulfillment($this->learner)
->setOption('test_value', 'findMe123')
->setComplete(TRUE)
->save();
$co1
->getFulfillment($this->learner)
->setOption('test_value_undef', 'findMe123')
->setComplete(TRUE)
->save();
$this
->assertEqual($co1
->getFulfillment($this->learner)
->getOption('test_value'), 'findMe123', 'Check that defined fulfillment data was saved.');
$this
->assertNotEqual($co1
->getFulfillment($this->learner)
->getOption('test_value_undef'), 'findMe123', 'Check that undefined fulfillment data was not saved.');
$this
->assertTrue($co1
->getFulfillment($this->learner)
->isComplete(), 'Check that the object is fulfilled.');
}
}