public function testResolveRemovesAllMappings() { $mapping1 = new PathMapping('/path', 'resources'); $mapping1->load($this->package1, $this->packages); $mapping2 = new PathMapping('/path', 'resources'); $mapping2->load($this->package2, $this->packages); $mapping3 = new PathMapping('/path', 'resources'); $mapping3->load($this->package3, $this->packages); $conflict = new PathConflict('/path/conflict'); $conflict->addMapping($mapping1); $conflict->addMapping($mapping2); $conflict->addMapping($mapping3); $conflict->resolve(); $this->assertCount(0, $conflict->getMappings()); $this->assertCount(0, $mapping1->getConflicts()); $this->assertCount(0, $mapping2->getConflicts()); $this->assertCount(0, $mapping3->getConflicts()); $this->assertTrue($conflict->isResolved()); }
public function testAddConflictIgnoresDuplicates() { $mapping = new PathMapping('/path', 'resources'); $mapping->load($this->package1, $this->packages); $conflict = new PathConflict('/path/conflict'); $this->assertCount(0, $mapping->getConflicts()); $this->assertCount(0, $conflict->getMappings()); $mapping->addConflict($conflict); $mapping->addConflict($conflict); $this->assertCount(1, $mapping->getConflicts()); $this->assertContains($conflict, $mapping->getConflicts()); $this->assertCount(1, $conflict->getMappings()); $this->assertContains($mapping, $conflict->getMappings()); $this->assertTrue($mapping->isConflicting()); }