41 lines
1.3 KiB
PHP
41 lines
1.3 KiB
PHP
<?php
|
|
|
|
namespace Aternos\Codex\Test\Tests\Detective;
|
|
|
|
use Aternos\Codex\Detective\WeightedSinglePatternDetector;
|
|
use Aternos\Codex\Log\File\StringLogFile;
|
|
use PHPUnit\Framework\TestCase;
|
|
|
|
class WeightedSinglePatternDetectorTest extends TestCase
|
|
{
|
|
public function testDetect(): void
|
|
{
|
|
$this->assertEquals(1, (new WeightedSinglePatternDetector())
|
|
->setLogFile(new \Aternos\Codex\Log\File\PathLogFile(__DIR__ . '/../../data/simple.log'))
|
|
->setPattern('/This/')
|
|
->setWeight(1)
|
|
->detect()
|
|
);
|
|
|
|
$this->assertEquals(0.5, (new WeightedSinglePatternDetector())
|
|
->setLogFile(new \Aternos\Codex\Log\File\PathLogFile(__DIR__ . '/../../data/simple.log'))
|
|
->setPattern('/This/')
|
|
->setWeight(0.5)
|
|
->detect()
|
|
);
|
|
|
|
$this->assertEquals(0, (new WeightedSinglePatternDetector())
|
|
->setLogFile(new \Aternos\Codex\Log\File\PathLogFile(__DIR__ . '/../../data/simple.log'))
|
|
->setPattern('/This/')
|
|
->setWeight(0)
|
|
->detect()
|
|
);
|
|
|
|
$this->assertFalse((new WeightedSinglePatternDetector())
|
|
->setLogFile(new StringLogFile("You cannot detect this."))
|
|
->setPattern('/missing/')
|
|
->detect()
|
|
);
|
|
}
|
|
}
|