protected function buildComponentCollectionWithNonMergeableInteractionTypes() { $collection = new QtiComponentCollection(); $choiceInteraction = ChoiceInteractionBuilder::buildSimple('testChoiceInteractionIdentifier', ['ChoiceOne' => 'A', 'ChoiceTwo' => 'B']); $collection->attach($choiceInteraction); return $collection; }
protected function buildComponentCollectionWithRegularInteractionTypes() { $collection = new QtiComponentCollection(); $choiceInteraction = ChoiceInteractionBuilder::buildSimple('testChoiceInteractionIdentifier', ['Choice 1' => 'A', 'Choice 2' => 'B']); $textEntryInteraction = new TextEntryInteraction('testTextEntryInteractionIdentifier'); $collection->attach($choiceInteraction); $collection->attach($textEntryInteraction); return $collection; }
public function testHasMinChoice() { $validResponseIdentifier = ['one', 'two']; $responseDeclaration = ResponseDeclarationBuilder::buildWithCorrectResponse('testIdentifier', $validResponseIdentifier); $responseProcessingTemplate = ResponseProcessingTemplate::matchCorrect(); $optionsMap = ['one' => 'Label One', 'two' => 'Label Two', 'three' => 'Label Three']; $interaction = ChoiceInteractionBuilder::buildSimple('testIdentifier', $optionsMap); $interaction->setMinChoices(1); $interactionMapper = new ChoiceInteractionMapper($interaction, $responseDeclaration, $responseProcessingTemplate); $interactionMapper->getQuestionType(); $this->assertTrue(count(LogService::read()) === 1); }