function StaticMenuLinkOverridesTest::testSaveOverride
Tests the saveOverride method.
@covers ::saveOverride
      
    
@covers ::loadOverride
      
    
@covers ::getConfig
      
    
File
- 
              core/tests/ Drupal/ Tests/ Core/ Menu/ StaticMenuLinkOverridesTest.php, line 99 
Class
- StaticMenuLinkOverridesTest
- @coversDefaultClass \Drupal\Core\Menu\StaticMenuLinkOverrides[[api-linebreak]] @group Menu
Namespace
Drupal\Tests\Core\MenuCode
public function testSaveOverride() {
  $config = $this->getMockBuilder('Drupal\\Core\\Config\\Config')
    ->disableOriginalConstructor()
    ->getMock();
  $config->expects($this->at(0))
    ->method('get')
    ->with('definitions')
    ->will($this->returnValue([]));
  $config->expects($this->at(1))
    ->method('get')
    ->with('definitions')
    ->will($this->returnValue([]));
  $definition_save_1 = [
    'definitions' => [
      'test1' => [
        'parent' => 'test0',
        'menu_name' => '',
        'weight' => 0,
        'expanded' => FALSE,
        'enabled' => FALSE,
      ],
    ],
  ];
  $definitions_save_2 = [
    'definitions' => [
      'test1' => [
        'parent' => 'test0',
        'menu_name' => '',
        'weight' => 0,
        'expanded' => FALSE,
        'enabled' => FALSE,
      ],
      'test1__la___ma' => [
        'parent' => 'test1',
        'menu_name' => '',
        'weight' => 0,
        'expanded' => FALSE,
        'enabled' => FALSE,
      ],
    ],
  ];
  $config->expects($this->at(2))
    ->method('set')
    ->with('definitions', $definition_save_1['definitions'])
    ->will($this->returnSelf());
  $config->expects($this->at(3))
    ->method('save');
  $config->expects($this->at(4))
    ->method('get')
    ->with('definitions')
    ->will($this->returnValue($definition_save_1['definitions']));
  $config->expects($this->at(5))
    ->method('get')
    ->with('definitions')
    ->will($this->returnValue($definition_save_1['definitions']));
  $config->expects($this->at(6))
    ->method('set')
    ->with('definitions', $definitions_save_2['definitions'])
    ->will($this->returnSelf());
  $config->expects($this->at(7))
    ->method('save');
  $config_factory = $this->createMock('Drupal\\Core\\Config\\ConfigFactoryInterface');
  $config_factory->expects($this->once())
    ->method('getEditable')
    ->will($this->returnValue($config));
  $static_override = new StaticMenuLinkOverrides($config_factory);
  $static_override->saveOverride('test1', [
    'parent' => 'test0',
  ]);
  $static_override->saveOverride('test1.la__ma', [
    'parent' => 'test1',
  ]);
}Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.
