diff --git a/Behavioral/Iterator/BookList.php b/Behavioral/Iterator/BookList.php index 0dda925..6fcf265 100644 --- a/Behavioral/Iterator/BookList.php +++ b/Behavioral/Iterator/BookList.php @@ -25,7 +25,7 @@ class BookList implements \Countable public function removeBook(Book $bookToRemove) { - foreach ($this as $key => $book) { + foreach ($this->books as $key => $book) { /** @var Book $book */ if ($book->getAuthorAndTitle() === $bookToRemove->getAuthorAndTitle()) { unset($this->books[$key]); diff --git a/Behavioral/Iterator/Tests/IteratorTest.php b/Behavioral/Iterator/Tests/IteratorTest.php index 2e117d8..2c5acd9 100644 --- a/Behavioral/Iterator/Tests/IteratorTest.php +++ b/Behavioral/Iterator/Tests/IteratorTest.php @@ -63,4 +63,13 @@ class IteratorTest extends \PHPUnit_Framework_TestCase $iterator->next(); } } + + /** + * Test BookList Remove + */ + public function testBookRemove() + { + $this->bookList->removeBook($this->bookList->getBook(0)); + $this->assertEquals($this->bookList->count(), 2); + } }