public function HandlerTest::testHandlerWeights

Tests the order of handlers is the same before and after saving.

File

drupal/core/modules/views/lib/Drupal/views/Tests/Handler/HandlerTest.php, line 194
Definition of Drupal\views\Tests\Handler\HandlerTest.

Class

HandlerTest
Tests abstract handlers of views.

Namespace

Drupal\views\Tests\Handler

Code

public function testHandlerWeights() {
  $handler_types = array(
    'fields',
    'filters',
    'sorts',
  );
  $view = views_get_view('test_view_handler_weight');
  $view
    ->initDisplay();

  // Store the order of handlers before saving the view.
  $original_order = array();
  foreach ($handler_types as $type) {
    $original_order[$type] = array_keys($view->display_handler
      ->getOption($type));
  }

  // Save the view and see if our filters are in the same order.
  $view
    ->save();
  $view = views_get_view('test_view_handler_weight');
  $view
    ->initDisplay();
  foreach ($handler_types as $type) {
    $loaded_order = array_keys($view->display_handler
      ->getOption($type));
    $this
      ->assertIdentical($original_order[$type], $loaded_order);
  }
}