Skip to content

Commit 33fc0e7

Browse files
committed
Added ResumableIteratorAggregateProxyTest
1 parent 82ef89a commit 33fc0e7

2 files changed

Lines changed: 41 additions & 1 deletion

File tree

src/autoloader.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,11 +41,11 @@ static public function autoloader(string $class)
4141
}
4242
}
4343

44+
// @codeCoverageIgnoreStart
4445
$files = json_decode(file_get_contents(__DIR__.'/../composer.json'), true)['autoload']['files'];
4546
foreach ($files as $file) {
4647
require_once __DIR__.'/../'.$file;
4748
}
4849

49-
// @codeCoverageIgnoreStart
5050
return [Autoloading::class, 'autoloader'];
5151
// @codeCoverageIgnoreEnd
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
<?php
2+
3+
declare(strict_types=1);
4+
5+
namespace JsonMachineTest;
6+
7+
use JsonMachine\ResumableIteratorAggregateProxy;
8+
9+
/**
10+
* @covers \JsonMachine\ResumableIteratorAggregateProxy
11+
*/
12+
class ResumableIteratorAggregateProxyTest extends \PHPUnit_Framework_TestCase
13+
{
14+
public function testName()
15+
{
16+
$iteratorAggregate = new class() implements \IteratorAggregate {
17+
private $generator;
18+
19+
public function getIterator(): \Generator
20+
{
21+
if ( ! $this->generator) {
22+
$this->generator = (function () {
23+
yield 1;
24+
yield 2;
25+
})();
26+
}
27+
28+
return $this->generator;
29+
}
30+
};
31+
32+
$this->assertSame(1, $iteratorAggregate->getIterator()->current());
33+
34+
$iteratorAggregate->getIterator()->next();
35+
36+
foreach (new ResumableIteratorAggregateProxy($iteratorAggregate) as $value) {
37+
$this->assertSame(2, $value);
38+
}
39+
}
40+
}

0 commit comments

Comments
 (0)