fix tests

This commit is contained in:
Dennis Eichhorn 2023-10-22 04:03:56 +00:00
parent b4af5e237c
commit 9b71428f88
5 changed files with 49 additions and 27 deletions

View File

@ -70,8 +70,8 @@ final class Apriori
*
* The algorithm cheks how often a set exists in a given set of sets.
*
* @param array<array> $sets Sets of a set (e.g. [[1,2,3,4], [1,2], [1]])
* @param array $subset Subset to check for (empty array -> all subsets are checked)
* @param array<string[]> $sets Sets of a set (e.g. [[1,2,3,4], [1,2], [1]])
* @param string[] $subset Subset to check for (empty array -> all subsets are checked)
*
* @return array
*

View File

@ -189,11 +189,9 @@ final class MemoryCF
$anglePointer = \array_keys($cosine);
// Inspect items of the top n comparable users
for ($i = 1; $i <= $size; ++$i) {
$index = (int) ($i / 2) - 1;
$uId = $i % 2 === 1 ? $distancePointer[$index] : $anglePointer[$index];
$distances = $i % 2 === 1 ? $euclidean : $cosine;
for ($i = 0; $i < $size; ++$i) {
$uId = $i % 2 === 0 ? $distancePointer[$i] : $anglePointer[$i];
$distances = $i % 2 === 0 ? $euclidean : $cosine;
foreach ($this->rankings[$uId] as $iId => $_) {
// Item is not already in dataset and not in historic dataset (we are only interested in new)

View File

@ -54,14 +54,30 @@ final class AprioriTest extends \PHPUnit\Framework\TestCase
);
self::assertEquals(
[],
[
'4' => 5,
'3' => 3,
'3:4' => 3,
'2' => 5,
'2:4' => 4,
'2:3' => 2,
'2:3:4' => 2,
'1' => 3,
'1:4' => 2,
'1:3' => 1,
'1:3:4' => 1,
'1:2' => 3,
'1:2:4' => 2,
'1:2:3' => 1,
'1:2:3:4' => 1,
],
Apriori::apriori([
[1, 2, 3, 4],
[1, 2, 4],
[1, 2],
[2, 3, 4],
[3, 4],
[2, 4],
['1', '2', '3', '4'],
['1', '2', '4'],
['1', '2'],
['2', '3', '4'],
['3', '4'],
['2', '4'],
])
);
}
@ -85,14 +101,14 @@ final class AprioriTest extends \PHPUnit\Framework\TestCase
['2:3' => 2],
Apriori::apriori(
[
[1, 2, 3, 4],
[1, 2, 4],
[1, 2],
[2, 3, 4],
[3, 4],
[2, 4],
['1', '2', '3', '4'],
['1', '2', '4'],
['1', '2'],
['2', '3', '4'],
['3', '4'],
['2', '4'],
],
[2, 3]
['2', '3']
)
);
}

View File

@ -26,17 +26,23 @@ require_once __DIR__ . '/../../Autoloader.php';
final class DependencyResolverTest extends \PHPUnit\Framework\TestCase
{
/**
* @testdox A value is matched with the minimum quantity of available coins.
* @covers phpOMS\Algorithm\Graph\DependencyResolver
* @group framework
*/
public function testResolveCircular() : void
{
self::assertEquals(
null,
DependencyResolver::resolve([0 => [1, 2], 1 => [0, 2], 2 => []])
);
}
/**
* @covers phpOMS\Algorithm\Graph\DependencyResolver
* @group framework
*/
public function testResolve() : void
{
self::assertEquals(
null,
DependencyResolver::resolve([0 => [1, 2], 1 => [0, 2], 2 => []])
);
self::assertEquals(
[0, 1, 2, 3],
DependencyResolver::resolve([0 => [1, 2], 1 => [2, 3], 2 => [], 3 => []])

View File

@ -54,10 +54,12 @@ class BaseModelMapper extends DataMapperFactory
'belongsToOne' => [
'mapper' => BelongsToModelMapper::class,
'external' => 'test_base_belongs_to_one',
'private' => true,
],
'belongsToOnePrivate' => [
'mapper' => BelongsToModelMapper::class,
'external' => 'test_base_belongs_to_one',
'private' => true,
],
];