/**
  * @expectedException \InvalidArgumentException
  */
 public function testResolveShouldCallMakeOnContainer()
 {
     $container = m::mock('Illuminate\\Container\\Container');
     $container->shouldReceive('make')->once()->with('User\\Delete');
     $factory = new ValidatorFactory();
     $factory->setContainer($container);
     $factory->make('User\\Delete');
 }
 /**
  * Register the service provider.
  *
  * @return void
  */
 public function register()
 {
     $this->app['config']->package('edvinaskrucas/permission', __DIR__ . '/../../../../config');
     $this->app['permission'] = $this->app->share(function ($app) {
         $factory = new ValidatorFactory();
         $factory->setContainer($app);
         $driver = new ObjectDriver($factory);
         $namespaces = $app['config']->get('permission::namespaces');
         if (count($namespaces) > 0) {
             foreach ($namespaces as $namespace => $priority) {
                 $driver->registerNamespace($namespace, $priority);
             }
         }
         $manager = new Manager($driver);
         return $manager;
     });
     require_once __DIR__ . '/functions.php';
 }