public function testAssociationRemoval()
{
$part = new Part();
$part->setName("TEST");
$part->setCategory($this->getContainer()->get("partkeepr.part.category_service")->getRootNode());
$part->setStorageLocation($this->fixtures->getReference("storagelocation.first"));
$partManufacturer = new PartManufacturer();
$partManufacturer->setManufacturer($this->fixtures->getReference("manufacturer.first"));
$part->addManufacturer($partManufacturer);
$partDistributor = new PartDistributor();
$partDistributor->setDistributor($this->fixtures->getReference("distributor.first"));
$part->addDistributor($partDistributor);
$partAttachment = new PartAttachment();
$fileService = $this->getContainer()->get("partkeepr_uploadedfile_service");
$fileService->replaceFromData($partAttachment, "BLA", "test.txt");
$part->addAttachment($partAttachment);
$this->getContainer()->get("doctrine.orm.default_entity_manager")->persist($part);
$this->getContainer()->get("doctrine.orm.default_entity_manager")->flush($part);
$part->removeDistributor($partDistributor);
$part->removeManufacturer($partManufacturer);
$part->removeAttachment($partAttachment);
$this->getContainer()->get("doctrine.orm.default_entity_manager")->flush($part);
$storage = $fileService->getStorage($partAttachment);
$this->assertNull($partDistributor->getId());
$this->assertNull($partDistributor->getId());
$this->assertNull($partAttachment->getId());
$this->assertFalse($storage->has($partAttachment->getFullFilename()));
}