*
*
*
* @test
*/
public function oneLevelCountsUseIsCorrect()
{
$first = new \DOMElement('first');
$firstSubject = new Subject($first, $this->nestingLimit);
self::assertSame(0, $firstSubject->countUse(false));
self::assertSame(0, $firstSubject->countUse(true));
}
/**
*
*
*
*
*
* @test
*/
public function twoLevelsCountUseIsCorrect()
{
$first = new \DOMElement('first');
$second = new \DOMElement('second');
$firstSubject = new Subject($first, $this->nestingLimit);
$secondSubject = new Subject($second, $this->nestingLimit);
$firstSubject->addUse($secondSubject);
$firstSubject->addUse($secondSubject);
self::assertSame(2, $firstSubject->countUse(false));
self::assertSame(2, $firstSubject->countUse(true));
}
/**
*
*
*
*
*
*
*
*
*
*
*
*
*
* @test
*/
public function threeLevelsCountUseIsCorrect()
{
$first = new \DOMElement('first');
$second = new \DOMElement('second');
$third = new \DOMElement('third');
$firstSubject = new Subject($first, $this->nestingLimit);
$secondSubject = new Subject($second, $this->nestingLimit);
$thirdSubject = new Subject($third, $this->nestingLimit);
$firstSubject->addUse($secondSubject);
$firstSubject->addUse($secondSubject);
$secondSubject->addUse($thirdSubject);
$secondSubject->addUse($thirdSubject);
$secondSubject->addUse($thirdSubject);
self::assertSame(6, $firstSubject->countUse(false));
self::assertSame(8, $firstSubject->countUse(true));
}
/**
*
*
*
* @test
*/
public function oneLevelCountsUsedInIsCorrect()
{
$first = new \DOMElement('first');
$firstSubject = new Subject($first, $this->nestingLimit);
self::assertSame(0, $firstSubject->countUsedIn());
}
/**
*
*
*
*
*
* @test
*/
public function twoLevelsCountUsedInIsCorrect()
{
$first = new \DOMElement('first');
$second = new \DOMElement('second');
$firstSubject = new Subject($first, $this->nestingLimit);
$secondSubject = new Subject($second, $this->nestingLimit);
$secondSubject->addUsedIn($firstSubject);
$secondSubject->addUsedIn($firstSubject);
self::assertSame(2, $secondSubject->countUsedIn());
}
/**
*
*
*
*
*
*
*
*
*
*
*
*
*
* @test
*/
public function threeLevelsCountUsedInIsCorrect()
{
$first = new \DOMElement('first');
$second = new \DOMElement('second');
$third = new \DOMElement('third');
$firstSubject = new Subject($first, $this->nestingLimit);
$secondSubject = new Subject($second, $this->nestingLimit);
$thirdSubject = new Subject($third, $this->nestingLimit);
$thirdSubject->addUsedIn($secondSubject);
$thirdSubject->addUsedIn($secondSubject);
$thirdSubject->addUsedIn($secondSubject);
$secondSubject->addUsedIn($firstSubject);
$secondSubject->addUsedIn($firstSubject);
self::assertSame(6, $thirdSubject->countUsedIn());
}
}