eZ\Publish\Core\Persistence\Cache\Tests\ObjectStateHandlerTest::testLoadObjectStates PHP Метод

testLoadObjectStates() публичный Метод

    public function testLoadObjectStates()
    {
        $testStates = array(new SPIObjectState(array('id' => 1, 'identifier' => 'test_state_1_group1', 'groupId' => 1)), new SPIObjectState(array('id' => 2, 'identifier' => 'test_state_2_group1', 'groupId' => 1)), new SPIObjectState(array('id' => 3, 'identifier' => 'test_state_3_group1', 'groupId' => 1)));
        $testStateIds = array_map(function ($state) {
            return $state->id;
        }, $testStates);
        $cacheItemMock = $this->getMock('Stash\\Interfaces\\ItemInterface');
        $this->cacheMock->expects($this->at(0))->method('getItem')->with('objectstate', 'byGroup', 1)->will($this->returnValue($cacheItemMock));
        $cacheItemMock->expects($this->once())->method('get')->will($this->returnValue(null));
        $cacheItemMock->expects($this->once())->method('isMiss')->will($this->returnValue(true));
        $this->loggerMock->expects($this->once())->method('logCall');
        $innerHandlerMock = $this->getMock('eZ\\Publish\\SPI\\Persistence\\Content\\ObjectState\\Handler');
        $this->persistenceHandlerMock->expects($this->once())->method('objectStateHandler')->will($this->returnValue($innerHandlerMock));
        $innerHandlerMock->expects($this->once())->method('loadObjectStates')->with(1)->will($this->returnValue($testStates));
        $cacheItemMock->expects($this->once())->method('set')->with($testStateIds)->will($this->returnValue($cacheItemMock));
        $cacheItemMock->expects($this->once())->method('save')->with();
        $handler = $this->persistenceCacheHandler->objectStateHandler();
        $states = $handler->loadObjectStates(1);
        $this->assertEquals($states, $testStates);
    }