/**
  * {@inheritDoc}
  */
 public function load(array $configs, ContainerBuilder $container)
 {
     $configuredMenus = array();
     if (is_file($file = $container->getParameter('kernel.root_dir') . '/config/navigation.yml')) {
         $configuredMenus = $this->parseFile($file);
         $container->addResource(new FileResource($file));
     }
     foreach ($container->getParameter('kernel.bundles') as $bundle) {
         $reflection = new \ReflectionClass($bundle);
         if (is_file($file = dirname($reflection->getFilename()) . '/Resources/config/navigation.yml')) {
             $configuredMenus = array_replace_recursive($configuredMenus, $this->parseFile($file));
             $container->addResource(new FileResource($file));
         }
     }
     $loader = new Loader\YamlFileLoader($container, new FileLocator(__DIR__ . '/../Resources/config'));
     $loader->load('services.yml');
     // validate menu configurations
     foreach ($configuredMenus as $rootName => $menuConfiguration) {
         $configuration = new NavigationConfiguration();
         $configuration->setMenuRootName($rootName);
         $menuConfiguration[$rootName] = $this->processConfiguration($configuration, array($rootName => $menuConfiguration));
     }
     // Set configuration to be used in a custom service
     $container->setParameter('jb_config.menu.configuration', $configuredMenus);
     // Last argument of this service is always the menu configuration
     $container->getDefinition('jb_config.menu.provider')->addArgument($configuredMenus);
 }
 /**
  * Init mock
  */
 public function setUp()
 {
     $this->navigationConfiguration = new NavigationConfiguration();
     $this->navigationConfiguration->setMenuRootName('my_menu');
 }