CourseObjectFulfillmentTestCase.php in Course 8.3
File
tests/src/Functional/CourseObjectFulfillmentTestCase.php
View source
<?php
namespace Drupal\Tests\course\Functional;
use Drupal\course\Entity\CourseObject;
class CourseObjectFulfillmentTestCase extends CourseTestCase {
function testCourseContentObjectFulfillment() {
$course = $this
->createCourse();
$co1 = CourseObject::create([
'object_type' => 'course_test_object',
]);
$co1
->setCourse($course);
$co1
->save();
$co1
->getFulfillment($this->student_user)
->setComplete(TRUE)
->save();
$this
->assertFalse($co1
->getFulfillment($this->student_user)
->isComplete(), 'Check that the object is not fulfilled.');
$course
->enroll($this->student_user);
$co1
->getFulfillment($this->student_user)
->setOption('test_value', 'findMe123')
->setComplete(TRUE)
->save();
$co1
->getFulfillment($this->student_user)
->setOption('test_value_undef', 'findMe123')
->setComplete(TRUE)
->save();
$this
->assertEqual($co1
->getFulfillment($this->student_user)
->getOption('test_value'), 'findMe123', 'Check that defined fulfillment data was saved.');
$this
->assertNotEqual($co1
->getFulfillment($this->student_user)
->getOption('test_value_undef'), 'findMe123', 'Check that undefined fulfillment data was not saved.');
$this
->assertTrue($co1
->getFulfillment($this->student_user)
->isComplete(), 'Check that the object is fulfilled.');
}
}