You are here

batch_example.test in Examples for Developers 7

Test case for Testing the batch example module.

This file contains the test cases to check if module is performing as expected.

File

batch_example/batch_example.test
View source
<?php

/**
 * @file
 * Test case for Testing the batch example module.
 *
 * This file contains the test cases to check if module is performing as
 * expected.
 */

/**
 * Functional tests for the Batch Example module.
 *
 * @ingroup batch_example
 */
class BatchExampleTestCase extends DrupalWebTestCase {
  protected $webUser;

  /**
   * {@inheritdoc}
   */
  public static function getInfo() {
    return array(
      'name' => 'Batch example functionality',
      'description' => 'Verify the defined batches.',
      'group' => 'Examples',
    );
  }

  /**
   * Enable modules and create user with specific permissions.
   */
  public function setUp() {
    parent::setUp('batch_example');

    // Create user.
    $this->webUser = $this
      ->drupalCreateUser();
  }

  /**
   * Login user, create 30 nodes and test both batch examples.
   */
  public function testBatchExampleBasic() {

    // Login the admin user.
    $this
      ->drupalLogin($this->webUser);

    // Create 30 nodes.
    for ($count = 0; $count < 30; $count++) {
      $node = $this
        ->drupalCreateNode();
    }

    // Launch Batch 1
    $result = $this
      ->drupalPost('examples/batch_example', array(
      'batch' => 'batch_1',
    ), t('Go'));

    // Check that 1000 operations were performed.
    $this
      ->assertText('1000 results processed');

    // Launch Batch 2
    $result = $this
      ->drupalPost('examples/batch_example', array(
      'batch' => 'batch_2',
    ), t('Go'));

    // Check that 600 operations were performed.
    $this
      ->assertText('600 results processed');
  }

}

Classes

Namesort descending Description
BatchExampleTestCase Functional tests for the Batch Example module.