Example #1
0
 /**
  * {@inheritdoc}
  */
 protected function setUp()
 {
     parent::setUp();
     $container = new ContainerBuilder();
     $request = $this->getMockBuilder('\\Symfony\\Component\\HttpFoundation\\Request')->disableOriginalConstructor()->getMock();
     $this->view = $this->getMock('\\Drupal\\views\\Entity\\View', array('initHandlers'), array(array('id' => 'test_view'), 'view'));
     $view_executable = $this->getMock('\\Drupal\\views\\ViewExecutable', array('initHandlers', 'getTitle'), array(), '', FALSE);
     $view_executable->expects($this->any())->method('getTitle')->willReturn('View title');
     $view_executable->storage = $this->view;
     $view_executable->argument = array();
     $display_manager = $this->getMockBuilder('\\Drupal\\views\\Plugin\\ViewsPluginManager')->disableOriginalConstructor()->getMock();
     $container->set('plugin.manager.views.display', $display_manager);
     $access_manager = $this->getMockBuilder('\\Drupal\\views\\Plugin\\ViewsPluginManager')->disableOriginalConstructor()->getMock();
     $container->set('plugin.manager.views.access', $access_manager);
     $route_provider = $this->getMockBuilder('\\Drupal\\Core\\Routing\\RouteProviderInterface')->disableOriginalConstructor()->getMock();
     $container->set('router.route_provider', $route_provider);
     $container->setParameter('authentication_providers', ['basic_auth' => 'basic_auth']);
     $state = $this->getMock('\\Drupal\\Core\\State\\StateInterface');
     $container->set('state', $state);
     $style_manager = $this->getMockBuilder('\\Drupal\\views\\Plugin\\ViewsPluginManager')->disableOriginalConstructor()->getMock();
     $container->set('plugin.manager.views.style', $style_manager);
     $container->set('renderer', $this->getMock('Drupal\\Core\\Render\\RendererInterface'));
     $authentication_collector = $this->getMock('\\Drupal\\Core\\Authentication\\AuthenticationCollectorInterface');
     $container->set('authentication_collector', $authentication_collector);
     $authentication_collector->expects($this->any())->method('getSortedProviders')->will($this->returnValue(['basic_auth' => 'data', 'cookie' => 'data']));
     \Drupal::setContainer($container);
     $this->restExport = RestExport::create($container, array(), "test_routes", array());
     $this->restExport->view = $view_executable;
     // Initialize a display.
     $this->restExport->display = array('id' => 'page_1');
     // Set the style option.
     $this->restExport->setOption('style', array('type' => 'serializer'));
     // Set the auth option.
     $this->restExport->setOption('auth', ['basic_auth']);
     $display_manager->expects($this->once())->method('getDefinition')->will($this->returnValue(array('id' => 'test', 'provider' => 'test')));
     $none = $this->getMockBuilder('\\Drupal\\views\\Plugin\\views\\access\\None')->disableOriginalConstructor()->getMock();
     $access_manager->expects($this->once())->method('createInstance')->will($this->returnValue($none));
     $style_plugin = $this->getMock('\\Drupal\\rest\\Plugin\\views\\style\\Serializer', array('getFormats', 'init'), array(), '', FALSE);
     $style_plugin->expects($this->once())->method('getFormats')->will($this->returnValue(array('json')));
     $style_plugin->expects($this->once())->method('init')->with($view_executable)->will($this->returnValue(TRUE));
     $style_manager->expects($this->once())->method('createInstance')->will($this->returnValue($style_plugin));
     $this->routes = new RouteCollection();
     $this->routes->add('test_1', new Route('/test/1'));
     $this->routes->add('view.test_view.page_1', new Route('/test/2'));
     $this->view->addDisplay('page', NULL, 'page_1');
 }