Sonata\tests\CustomerBundle\Entity\AddressManagerTest::testDelete PHP Method

testDelete() public method

public testDelete ( )
    public function testDelete()
    {
        $existingAddress = $this->getMock('Sonata\\Component\\Customer\\AddressInterface');
        $existingAddress->expects($this->once())->method('setCurrent');
        $existingAddress->expects($this->once())->method('getId')->will($this->returnValue(42));
        $custAddresses = array($existingAddress, $this->getMock('Sonata\\Component\\Customer\\AddressInterface'));
        $customer = $this->getMock('Sonata\\Component\\Customer\\CustomerInterface');
        $customer->expects($this->once())->method('getAddressesByType')->will($this->returnValue($custAddresses));
        $address = $this->getMock('Sonata\\Component\\Customer\\AddressInterface');
        $address->expects($this->once())->method('getCurrent')->will($this->returnValue(true));
        $address->expects($this->once())->method('getCustomer')->will($this->returnValue($customer));
        $em = $this->getMockBuilder('Doctrine\\ORM\\EntityManager')->disableOriginalConstructor()->getMock();
        $em->expects($this->exactly(1))->method('persist');
        $registry = $this->getMock('Doctrine\\Common\\Persistence\\ManagerRegistry');
        $registry->expects($this->any())->method('getManagerForClass')->will($this->returnValue($em));
        $addressManager = new AddressManager('Sonata\\Component\\Customer\\AddressInterface', $registry);
        $addressManager->delete($address);
    }