public function testConfigExtendsKeyValue() { $config = new SimpleConfig(); $config->add('month', 'june'); $config->add('obj', FakeNode::createDummy()); $this->assertEquals('june', $config->get('month')); $this->assertInstanceOf(Node::class, $config->get('obj')); }
public function testOverride() { $engine = new OverrideDiscoveryEngine(); $input = FakeNode::createDummy(); $this->assertCount(2, $engine->discoveryQuery($input)->parameters()); $this->assertEquals($input->identity(), $engine->discoveryQuery($input)->parameters()['input']); $this->assertEquals("recommendation", $engine->recoResultName()); $this->assertEquals("rate", $engine->scoreResultName()); $this->assertEquals("source", $engine->idParamName()); $this->assertEquals(10, $engine->defaultScore()); }
public function testResultGetTwoScoresIfDiscoveredTwice() { $node = FakeNode::createDummy(); $list = new Recommendations(); $list->add($node, 'e1', new SingleScore(1)); $list->add($node, 'e2', new SingleScore(1)); $this->assertEquals(1, $list->size()); $this->assertEquals(2, $list->getItems()[0]->totalScore()); $this->assertCount(2, $list->get(0)->getScores()); $this->assertArrayHasKey('e1', $list->get(0)->getScores()); $this->assertArrayHasKey('e2', $list->get(0)->getScores()); }
public function testReasons() { $node = FakeNode::createDummy(); $list = new Recommendations(new SimpleContext()); $list->add($node, 'disc1', new SingleScore(1, 'reason1')); $list->add($node, 'disc1', new SingleScore(1, 'reason2')); $list->add($node, 'disc2', new SingleScore(3, 'reason3')); for ($i = 0; $i < 10; ++$i) { $list->add($node, 'disc3', new SingleScore(1, 'reasond' . $i)); } $reco = $list->get(0); $this->assertEquals(15, $reco->totalScore()); $this->assertArrayHasKey('disc3', $reco->getScores()); $this->assertCount(10, $reco->getScore('disc3')->getScores()); }
public function testDefault() { $input = FakeNode::createDummy(); $context = new SimpleContext(); $this->assertInstanceOf(Config::class, $context->config()); }