diff --git a/DataMapper/UserMapper.php b/DataMapper/UserMapper.php index 4bd8ce1..22ce20d 100644 --- a/DataMapper/UserMapper.php +++ b/DataMapper/UserMapper.php @@ -70,7 +70,7 @@ class UserMapper { $result = $this->_adapter->find($id); if (0 == count($result)) { - return; + throw new \InvalidArgumentException("User #$id not found"); } $row = $result->current(); diff --git a/Tests/DataMapper/UserMapperTest.php b/Tests/DataMapper/UserMapperTest.php index 9bcfa65..15b0459 100644 --- a/Tests/DataMapper/UserMapperTest.php +++ b/Tests/DataMapper/UserMapperTest.php @@ -87,4 +87,18 @@ class UserMapperTest extends \PHPUnit_Framework_TestCase $this->assertEquals([$existing], $user); } -} \ No newline at end of file + /** + * @expectedException InvalidArgumentException + * @expectedExceptionMessage User #404 not found + */ + public function testNotFound() + { + $this->dbal->expects($this->once()) + ->method('find') + ->with(404) + ->will($this->returnValue([])); + + $user = $this->mapper->findById(404); + } + +}