Skip to content

Commit

Permalink
refactor: Do not make unit assertions in benchmarks.
Browse files Browse the repository at this point in the history
  • Loading branch information
drupol committed Jan 5, 2022
1 parent aedcb38 commit 8117ebb
Show file tree
Hide file tree
Showing 6 changed files with 12 additions and 74 deletions.
25 changes: 1 addition & 24 deletions tests/benchmarks/CachingIteratorsAggregateBench.php
Expand Up @@ -9,7 +9,6 @@

namespace benchmarks\loophp\iterators;

use Exception;
use Generator;
use loophp\iterators\CachingIteratorAggregate;
use loophp\iterators\SimpleCachingIteratorAggregate;
Expand All @@ -19,7 +18,6 @@
use PhpBench\Benchmark\Metadata\Annotations\Warmup;
use Psl\Iter\Iterator as IterIterator;
use Traversable;
use function count;

/**
* @Groups({"CachingIteratorsAggregateBench"})
Expand Down Expand Up @@ -80,27 +78,6 @@ private function loop(Traversable $input, int $breakAt): Generator

private function test(Traversable $input, int $size): void
{
$breakAt = $size / 2;

$a = iterator_to_array($this->loop($input, $breakAt));
$b = iterator_to_array($this->loop($input, $breakAt));
$c = iterator_to_array($this->loop($input, $breakAt));
$d = iterator_to_array($this->loop($input, $breakAt));

if (count($a) !== $size) {
throw new Exception('$a !== $size => Invalid benchmark.');
}

if ($a !== $b) {
throw new Exception('$a !== $b => Invalid benchmark.');
}

if ($b !== $c) {
throw new Exception('$b !== $c => Invalid benchmark.');
}

if ($c !== $d) {
throw new Exception('$c !== $d => Invalid benchmark.');
}
iterator_to_array($this->loop($input, $size / 2));
}
}
8 changes: 1 addition & 7 deletions tests/benchmarks/PackIterableAggregateBench.php
Expand Up @@ -9,15 +9,13 @@

namespace benchmarks\loophp\iterators;

use Exception;
use Generator;
use loophp\iterators\PackIterableAggregate;
use PhpBench\Benchmark\Metadata\Annotations\Groups;
use PhpBench\Benchmark\Metadata\Annotations\Iterations;
use PhpBench\Benchmark\Metadata\Annotations\Revs;
use PhpBench\Benchmark\Metadata\Annotations\Warmup;
use Traversable;
use function count;

/**
* @Groups({"internal"})
Expand Down Expand Up @@ -64,10 +62,6 @@ private function loop(Traversable $input): Generator

private function test(Traversable $input, int $size): void
{
$a = iterator_to_array($this->loop($input));

if (count($a) !== $size) {
throw new Exception('$a !== $size => Invalid benchmark.');
}
iterator_to_array($this->loop($input));
}
}
8 changes: 1 addition & 7 deletions tests/benchmarks/RandomIterableAggregateBench.php
Expand Up @@ -9,15 +9,13 @@

namespace benchmarks\loophp\iterators;

use Exception;
use Generator;
use loophp\iterators\RandomIterableAggregate;
use PhpBench\Benchmark\Metadata\Annotations\Groups;
use PhpBench\Benchmark\Metadata\Annotations\Iterations;
use PhpBench\Benchmark\Metadata\Annotations\Revs;
use PhpBench\Benchmark\Metadata\Annotations\Warmup;
use Traversable;
use function count;

/**
* @Groups({"internal"})
Expand Down Expand Up @@ -64,10 +62,6 @@ private function loop(Traversable $input): Generator

private function test(Traversable $input, int $size): void
{
$a = iterator_to_array($this->loop($input));

if (count($a) !== $size) {
throw new Exception('$a !== $size => Invalid benchmark.');
}
iterator_to_array($this->loop($input));
}
}
27 changes: 2 additions & 25 deletions tests/benchmarks/SimpleCachingIteratorsAggregateBench.php
Expand Up @@ -9,15 +9,13 @@

namespace benchmarks\loophp\iterators;

use Exception;
use Generator;
use loophp\iterators\SimpleCachingIteratorAggregate;
use PhpBench\Benchmark\Metadata\Annotations\Groups;
use PhpBench\Benchmark\Metadata\Annotations\Iterations;
use PhpBench\Benchmark\Metadata\Annotations\Revs;
use PhpBench\Benchmark\Metadata\Annotations\Warmup;
use Traversable;
use function count;

/**
* @Groups({"internal"})
Expand Down Expand Up @@ -45,7 +43,7 @@ public function benchIterator(array $params): void

public function provideGenerators(): Generator
{
$items = 25000;
$items = 5000;

yield SimpleCachingIteratorAggregate::class => [
'class' => SimpleCachingIteratorAggregate::class,
Expand All @@ -68,27 +66,6 @@ private function loop(Traversable $input, int $breakAt): Generator

private function test(Traversable $input, int $size): void
{
$breakAt = $size / 2;

$a = iterator_to_array($this->loop($input, $breakAt));
$b = iterator_to_array($this->loop($input, $breakAt));
$c = iterator_to_array($this->loop($input, $breakAt));
$d = iterator_to_array($this->loop($input, $breakAt));

if (count($a) !== $size) {
throw new Exception('$a !== $size => Invalid benchmark.');
}

if ($a !== $b) {
throw new Exception('$a !== $b => Invalid benchmark.');
}

if ($b !== $c) {
throw new Exception('$b !== $c => Invalid benchmark.');
}

if ($c !== $d) {
throw new Exception('$c !== $d => Invalid benchmark.');
}
iterator_to_array($this->loop($input, $size / 2));
}
}
8 changes: 1 addition & 7 deletions tests/benchmarks/UnpackIterableAggregateBench.php
Expand Up @@ -9,15 +9,13 @@

namespace benchmarks\loophp\iterators;

use Exception;
use Generator;
use loophp\iterators\UnpackIterableAggregate;
use PhpBench\Benchmark\Metadata\Annotations\Groups;
use PhpBench\Benchmark\Metadata\Annotations\Iterations;
use PhpBench\Benchmark\Metadata\Annotations\Revs;
use PhpBench\Benchmark\Metadata\Annotations\Warmup;
use Traversable;
use function count;

/**
* @Groups({"internal"})
Expand Down Expand Up @@ -64,10 +62,6 @@ private function loop(Traversable $input): Generator

private function test(Traversable $input, int $size): void
{
$a = iterator_to_array($this->loop($input));

if (count($a) !== $size) {
throw new Exception('$a !== $size => Invalid benchmark.');
}
iterator_to_array($this->loop($input));
}
}
10 changes: 6 additions & 4 deletions tests/unit/ClosureIteratorTest.php
Expand Up @@ -41,15 +41,17 @@ public function testRewind(): void
{
$iterator = new ClosureIterator(
static fn (array $iterable): array => $iterable,
[self::MAP_DATA]
[range('a', 'e')]
);

self::assertSame(1, $iterator->current());
self::assertSame('a', $iterator->current());
$iterator->next();
self::assertSame(2, $iterator->current());
self::assertSame('b', $iterator->current());
$iterator->next();
self::assertSame('c', $iterator->current());

$iterator->rewind();

self::assertSame(1, $iterator->current());
self::assertSame('a', $iterator->current());
}
}

0 comments on commit 8117ebb

Please sign in to comment.