/**
  * @covers \Weasel\Annotation\AnnotationConfigurator
  */
 public function testBuiltIns()
 {
     $mock = $this->getMock('\\Weasel\\Annotation\\AnnotationReaderFactory', array(), array(), '', false);
     $mock->expects($this->never())->method('getReaderForClass');
     $instance = new AnnotationConfigurator(null, null, $mock);
     $annotation = $instance->get('\\Weasel\\Annotation\\Config\\Annotations\\Annotation');
     $builtins = \Weasel\Annotation\Config\BuiltInsProvider::getConfig();
     $this->assertSame($builtins->getAnnotation('\\Weasel\\Annotation\\Config\\Annotations\\Annotation'), $annotation);
 }
 public function __construct(LoggerInterface $logger = null, Cache $cache = null, AnnotationReaderFactory $readerFactory = null)
 {
     if (isset($logger)) {
         $this->setLogger($logger);
     }
     if (isset($cache)) {
         $this->setCache($cache);
     }
     if (!isset(self::$builtIns)) {
         self::$builtIns = Config\BuiltInsProvider::getConfig();
     }
     if (isset($readerFactory)) {
         $this->setReaderFactory($readerFactory);
     } else {
         $readerFactory = new AnnotationReaderFactory($this);
         $this->ownedFactory = true;
         if (isset($logger)) {
             $readerFactory->setLogger($logger);
         }
         $this->setReaderFactory($readerFactory);
     }
 }