You are here

public function RefreshPageElementsHelperTest::testAjaxResponseCartBlock in Commerce Ajax Add to Cart 8

Tests ajax response when cart block is updated.

@covers ::getCartBlock @covers ::updateCart @covers ::getResponse

File

tests/src/Kernel/RefreshPageElementsHelperTest.php, line 225

Class

RefreshPageElementsHelperTest
Tests RefreshPageElementsHelper methods.

Namespace

Drupal\Tests\dc_ajax_add_cart\Kernel

Code

public function testAjaxResponseCartBlock() {
  $refreshPageElements = $this->refreshPageElementsHelper
    ->updateCart();
  $this
    ->assertInstanceOfRefreshPageElementsHelper($refreshPageElements);
  $response = $refreshPageElements
    ->getResponse();
  $this
    ->assertAjaxResponse($response);

  // Check if the returned response has the expected ajax commands.
  $ajax_commands = $response
    ->getCommands();
  $actual_ajax_command_names = array_map(function ($i) {
    return $i['command'];
  }, $ajax_commands);
  foreach ($this->expectedAjaxCommandNamesCartBlockUpdate as $ajax_command_name) {
    $this
      ->assertTrue(in_array($ajax_command_name, $actual_ajax_command_names), "{$ajax_command_name} is not present");
  }
}