recurly-8.x-1.x-dev/tests/src/Functional/RecurlyRedeemCouponFormTest.php

tests/src/Functional/RecurlyRedeemCouponFormTest.php
<?php

namespace Drupal\Tests\recurly\Functional;

use Drupal\recurly_test_client\RecurlyMockClient;

/**
 * Tests for RecurlyRedeemCouponFormTest.
 *
 * @group recurly
 */
class RecurlyRedeemCouponFormTest extends RecurlyBrowserTestBase {

  /**
   * {@inheritdoc}
   */
  protected function setUp() : void {
    parent::setUp();
    $this->drupalPlaceBlock('local_tasks_block');
    $this->drupalPlaceBlock('system_messages_block');
  }

  /**
   * Test access to coupon redemption form based on module configuration.
   *
   * @covers \Drupal\recurly\Access\RecurlyAccessCoupon
   */
  public function testAccessControl() {
    RecurlyMockClient::addResponse('GET', '/accounts/abcdef1234567890', 'accounts/show-200.xml');
    RecurlyMockClient::addResponse('GET', '/accounts/abcdef1234567890/subscriptions?per_page=200', 'subscriptions/index-200-single.xml');

    $account = $this->createUserWithSubscription();
    $this->drupalLogin($account);

    $this->config('recurly.settings')
      ->set('recurly_coupon_page', 0)
      ->save();

    $this->drupalGet($account->toUrl('recurly-coupon'));
    $this->assertSession()->statusCodeEquals(403);

    $this->config('recurly.settings')
      ->set('recurly_coupon_page', 1)
      ->save();

    $this->drupalGet($account->toUrl('recurly-coupon'));
    $this->assertSession()->statusCodeEquals(200);
  }

}

Главная | Обратная связь

drupal hosting | друпал хостинг | it patrol .inc