diff options
Diffstat (limited to 'modules/simpletest/tests/form.test')
-rw-r--r-- | modules/simpletest/tests/form.test | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/modules/simpletest/tests/form.test b/modules/simpletest/tests/form.test index 9dfa7cf8c..be5c3117d 100644 --- a/modules/simpletest/tests/form.test +++ b/modules/simpletest/tests/form.test @@ -344,3 +344,42 @@ class FormsFormCleanIdFunctionalTest extends DrupalWebTestCase { } } + +/** + * Test using drupal_execute in a batch. + */ +class FormAPITestCase extends DrupalWebTestCase { + + function getInfo() { + return array( + 'name' => t('Drupal Execute and Batch API'), + 'description' => t('Tests the compatibility of drupal_execute and the Batch API'), + 'group' => t('Form API'), + ); + } + + /** + * Check that we can run drupal_execute during a batch. + */ + function testDrupalExecuteInBatch() { + + // Our test is going to modify the following variable. + variable_set('form_test_mock_submit', 'initial_state'); + + // This is a page that sets a batch, which calls drupal_execute, which + // modifies the variable we set up above. + $this->drupalGet('form_test/drupal_execute_batch_api'); + + // If the drupal_execute call executed correctly our test variable will be + // set to 'form_submitted'. + $this->assertEqual('form_submitted', variable_get('form_test_mock_submit', 'initial_state'), t('Check drupal_execute called submit handlers when running in a batch')); + + // Clean our variable up. + variable_del('form_test_mock_submit'); + } + + function setUp() { + parent::setUp('form_test'); + } + +} |