コード例 #1
0
ファイル: SqonTest.php プロジェクト: sqon/sqon
 /**
  * Verify that paths can be set in the Sqon using an iterator.
  */
 public function testAddPathsUsingAnIterator()
 {
     $this->eventDispatcher->addListener(BeforeSetPathsUsingIteratorEvent::NAME, function () {
         $this->events[BeforeSetPathsUsingIteratorEvent::NAME] = true;
     });
     $this->eventDispatcher->addListener(AfterSetPathsUsingIteratorEvent::NAME, function () {
         $this->events[AfterSetPathsUsingIteratorEvent::NAME] = true;
     });
     $path = new Memory('test');
     $iterator = new ArrayIterator(['.\\dir\\to\\..\\test.php' => $path]);
     self::assertSame($this->sqon, $this->sqon->setPathsUsingIterator($iterator), 'The iterator setter did not return a fluent interface.');
     self::assertTrue($this->events[BeforeSetPathsUsingIteratorEvent::NAME], sprintf('The "%s" event was not dispatched.', BeforeSetPathsUsingIteratorEvent::NAME));
     self::assertTrue($this->events[AfterSetPathsUsingIteratorEvent::NAME], sprintf('The "%s" event was not dispatched.', AfterSetPathsUsingIteratorEvent::NAME));
     self::assertEquals($path, $this->sqon->getPath('dir/test.php'), 'The path from the iterator was not added.');
 }