public function testClean()
{
$basket = $this->getPreparedBasket();
$product = $this->getMockProduct();
$basketElement = $this->getMock('Sonata\\Component\\Basket\\BasketElementInterface');
$basketElement->expects($this->any())->method('getProduct')->will($this->returnValue($product));
$basketElement->expects($this->any())->method('getPosition')->will($this->returnValue(0));
$deletedBasketElement = clone $basketElement;
$deletedBasketElement->expects($this->any())->method('getDelete')->will($this->returnValue(true));
$basket->addBasketElement($basketElement);
$basket->addBasketElement($deletedBasketElement);
$basket->clean();
$this->assertEquals(1, count($basket->getBasketElements()));
}