public function testRemoveGuesser()
 {
     $order = array(0 => 'query', 1 => 'router');
     $manager = new LocaleGuesserManager($order);
     $manager->addGuesser($this->getGuesserMock(), 'mock');
     $manager->removeGuesser('mock');
     $this->assertNull($manager->getGuesser('mock'));
 }
 private function getGuesserManager($order = array(1 => 'router', 2 => 'browser'))
 {
     $allowedLocales = array('de', 'fr', 'fr_FR', 'nl', 'es', 'en');
     $metaValidator = $this->getMetaValidatorMock();
     $callBack = function ($v) use($allowedLocales) {
         return in_array($v, $allowedLocales);
     };
     $metaValidator->expects($this->any())->method('isAllowed')->will($this->returnCallback($callBack));
     $manager = new LocaleGuesserManager($order);
     $routerGuesser = new RouterLocaleGuesser($metaValidator);
     $browserGuesser = new BrowserLocaleGuesser($metaValidator);
     $cookieGuesser = new CookieLocaleGuesser($metaValidator, 'lunetics_locale');
     $queryGuesser = new QueryLocaleGuesser($metaValidator, '_locale');
     $manager->addGuesser($queryGuesser, 'query');
     $manager->addGuesser($routerGuesser, 'router');
     $manager->addGuesser($browserGuesser, 'browser');
     $manager->addGuesser($cookieGuesser, 'cookie');
     return $manager;
 }