Mongolid\ActiveRecordTest::testShouldGetFirstOrFail PHP Method

testShouldGetFirstOrFail() public method

    public function testShouldGetFirstOrFail()
    {
        // Arrage
        $entity = m::mock(ActiveRecord::class . '[getDataMapper]');
        $this->setProtected($entity, 'collection', 'mongolid');
        $query = ['foo' => 'bar'];
        $projection = ['some', 'fields'];
        $dataMapper = m::mock();
        // Act
        Ioc::instance(get_class($entity), $entity);
        $entity->shouldReceive('getDataMapper')->andReturn($dataMapper);
        $dataMapper->shouldReceive('firstOrFail')->once()->with($query, $projection, true)->andReturn($entity);
        // Assert
        $this->assertEquals($entity, $entity->firstOrFail($query, $projection, true));
    }