annotate vendor/phar-io/manifest/tests/values/AuthorCollectionTest.php @ 19:fa3358dc1485 tip

Add ndrum files
author Chris Cannam
date Wed, 28 Aug 2019 13:14:47 +0100
parents 1fec387a4317
children
rev   line source
Chris@14 1 <?php
Chris@14 2 /*
Chris@14 3 * This file is part of PharIo\Manifest.
Chris@14 4 *
Chris@14 5 * (c) Arne Blankerts <arne@blankerts.de>, Sebastian Heuer <sebastian@phpeople.de>, Sebastian Bergmann <sebastian@phpunit.de>
Chris@14 6 *
Chris@14 7 * For the full copyright and license information, please view the LICENSE
Chris@14 8 * file that was distributed with this source code.
Chris@14 9 */
Chris@14 10
Chris@14 11 namespace PharIo\Manifest;
Chris@14 12
Chris@14 13 use PHPUnit\Framework\TestCase;
Chris@14 14
Chris@14 15 /**
Chris@14 16 * @covers \PharIo\Manifest\AuthorCollection
Chris@14 17 * @covers \PharIo\Manifest\AuthorCollectionIterator
Chris@14 18 *
Chris@14 19 * @uses \PharIo\Manifest\Author
Chris@14 20 * @uses \PharIo\Manifest\Email
Chris@14 21 */
Chris@14 22 class AuthorCollectionTest extends TestCase {
Chris@14 23 /**
Chris@14 24 * @var AuthorCollection
Chris@14 25 */
Chris@14 26 private $collection;
Chris@14 27
Chris@14 28 /**
Chris@14 29 * @var Author
Chris@14 30 */
Chris@14 31 private $item;
Chris@14 32
Chris@14 33 protected function setUp() {
Chris@14 34 $this->collection = new AuthorCollection;
Chris@14 35 $this->item = new Author('Joe Developer', new Email('user@example.com'));
Chris@14 36 }
Chris@14 37
Chris@14 38 public function testCanBeCreated() {
Chris@14 39 $this->assertInstanceOf(AuthorCollection::class, $this->collection);
Chris@14 40 }
Chris@14 41
Chris@14 42 public function testCanBeCounted() {
Chris@14 43 $this->collection->add($this->item);
Chris@14 44
Chris@14 45 $this->assertCount(1, $this->collection);
Chris@14 46 }
Chris@14 47
Chris@14 48 public function testCanBeIterated() {
Chris@14 49 $this->collection->add(
Chris@14 50 new Author('Dummy First', new Email('dummy@example.com'))
Chris@14 51 );
Chris@14 52 $this->collection->add($this->item);
Chris@14 53 $this->assertContains($this->item, $this->collection);
Chris@14 54 }
Chris@14 55
Chris@14 56 public function testKeyPositionCanBeRetreived() {
Chris@14 57 $this->collection->add($this->item);
Chris@14 58 foreach($this->collection as $key => $item) {
Chris@14 59 $this->assertEquals(0, $key);
Chris@14 60 }
Chris@14 61 }
Chris@14 62 }