achievements-2.x-dev/src/Tests/Form/AdminFormTest.php

src/Tests/Form/AdminFormTest.php
<?php

namespace Drupal\achievements\Tests\Form;

use Drupal\Component\Render\FormattableMarkup;
use Drupal\Core\Url;
use Drupal\simpletest\WebTestBase;

/**
 * Tests the admin form.
 *
 * @group achievements
 */
class AdminFormTest extends WebTestBase {

  /**
   * {@inheritdoc}
   */
  protected static $modules = ['achievements'];

  /**
   * @var \Drupal\user\UserInterface
   */
  protected $admin_user;

  /**
   * {@inheritdoc}
   */
  public function setUp() {
    parent::setUp();

    $this->admin_user = $this->drupalCreateUser(['administer achievements']);
    $this->drupalLogin($this->admin_user);
  }

  /**
   * Test the achievements admin form.
   */
  public function testAdminForm() {
    $settings = [
      'leaderboard_count_per_page' => 75,
      'leaderboard_relative' => 'disabled',
      'leaderboard_relative_nearby_ranks' => 7,
      'unlocked_move_to_top' => FALSE,
    ];
    $this->drupalPostForm(Url::fromRoute('achievements.admin'), $settings, $this->t('Save configuration'));

    $config = $this->config('achievements.settings');
    foreach ($settings as $name => $value) {
      $this->assertEquals($value, $config->get($name), FormattableMarkup::format('Achievement setting @setting properly updated', ['@setting' => $name]));
    }
  }

}

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

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