pastebin

Paste Search Dynamic
Recent pastes
CachingIterator width
  1. <?php
  2.  
  3. /**
  4.  * Test: NetteIteratorsCachingIterator width.
  5.  */
  6.  
  7. declare(strict_types=1);
  8.  
  9. use NetteIterators;
  10. use TesterAssert;
  11.  
  12.  
  13. require __DIR__ . '/../bootstrap.php';
  14.  
  15.  
  16. test('', function () {
  17.         $arr = ['The', 'Nette', 'Framework'];
  18.  
  19.         $iterator = new IteratorsCachingIterator($arr);
  20.         $iterator->rewind();
  21.  
  22.         $iterator->rewind();
  23.         assert::true($iterator->valid());
  24.         assert::true($iterator->isFirst(0));
  25.         assert::false($iterator->isLast(0));
  26.         assert::true($iterator->isFirst(1));
  27.         assert::true($iterator->isLast(1));
  28.         assert::true($iterator->isFirst(2));
  29.         assert::false($iterator->isLast(2));
  30.  
  31.         $iterator->next();
  32.         assert::true($iterator->valid());
  33.         assert::false($iterator->isFirst(0));
  34.         assert::false($iterator->isLast(0));
  35.         assert::true($iterator->isFirst(1));
  36.         assert::true($iterator->isLast(1));
  37.         assert::false($iterator->isFirst(2));
  38.         assert::true($iterator->isLast(2));
  39.  
  40.         $iterator->next();
  41.         assert::true($iterator->valid());
  42.         assert::false($iterator->isFirst(0));
  43.         assert::true($iterator->isLast(0));
  44.         assert::true($iterator->isFirst(1));
  45.         assert::true($iterator->isLast(1));
  46.         assert::true($iterator->isFirst(2));
  47.         assert::true($iterator->isLast(2));
  48.  
  49.         $iterator->next();
  50.         assert::false($iterator->valid());
  51. });
  52.  
  53.  
  54. test('', function () {
  55.         $iterator = new IteratorsCachingIterator([]);
  56.         assert::false($iterator->isFirst(0));
  57.         assert::true($iterator->isLast(0));
  58.         assert::false($iterator->isFirst(1));
  59.         assert::true($iterator->isLast(1));
  60.         assert::false($iterator->isFirst(2));
  61.         assert::true($iterator->isLast(2));
  62. });
Parsed in 2.705 seconds