public function testObserverCanBeAttachedAndDetach()
{
$subject = new Subject();
$observerA = $this->getMockForAbstractClass('\\SplObserver');
$subject->attach($observerA);
$observerB = $this->getMockForAbstractClass('\\SplObserver');
$subject->attach($observerB);
$subject->detach($observerB);
$this->assertContains($observerA, $subject->getObservers());
$this->assertNotContains($observerB, $subject->getObservers());
}