public function testMappingMcqQuestion() { $questionJson = $this->getFixtureFileContents('learnosityjsons/item_mcq.json'); $question = json_decode($questionJson, true); list($xmlString, $messages) = Converter::convertLearnosityToQtiItem($question); $this->assertNotNull($xmlString); $this->assertTrue(StringUtil::startsWith($xmlString, '<?xml version="1.0" encoding="UTF-8"?> <assessmentItem xmlns="http://www.imsglobal.org/xsd/imsqti_v2p1"')); $document = new XmlDocument(); $document->loadFromString($xmlString); $this->assertNotNull($document); }
protected function convertToAssessmentItem(array $data) { list($xml, $manifest) = Converter::convertLearnosityToQtiItem($data); // Assert the XML string is formed and not empty // Also, assert manifest is in form of array, regardless it was empty or not $this->assertTrue(is_string($xml) && !empty($xml)); $this->assertTrue(is_array($manifest)); $document = new XmlDocument(); $document->loadFromString($xml); /** @var AssessmentItem $assessmentItem */ $assessmentItem = $document->getDocumentComponent(); // Basic assert on <assessmentItem> object $this->assertNotNull($assessmentItem); $this->assertTrue($assessmentItem instanceof AssessmentItem); return $assessmentItem; }