function CurrencySignFormElementWebTestCase::testValidation in Currency 7.2
Test validation.
File
- currency/
tests/ CurrencySignFormElementWebTestCase.test, line 35 - Contains class CurrencySignFormElementWebTestCase.
Class
- CurrencySignFormElementWebTestCase
- Tests the currency_amount form element.
Code
function testValidation() {
$path = 'currency_test-form-element-currency-sign';
// Test an empty sign.
$values = array(
'sign[sign]' => '',
);
$this
->drupalPost($path, $values, t('Submit'));
$this
->assertUrl('user');
$this
->assertRaw("\$form_state['sign'] = ''");
// Test a suggested sign.
$values = array(
'sign[sign]' => '¤',
);
$this
->drupalPost($path, $values, t('Submit'));
$this
->assertUrl('user');
$this
->assertRaw("\$form_state['sign'] = '¤'");
// Test a custom sign.
$values = array(
'sign[sign]' => CURRENCY_SIGN_FORM_ELEMENT_CUSTOM_VALUE,
'sign[sign_custom]' => 'foobar',
);
$this
->drupalPost($path, $values, t('Submit'));
$this
->assertUrl('user');
$this
->assertRaw("\$form_state['sign'] = 'foobar'");
$this
->drupalGet($path . '//foobar');
$this
->assertRaw('<option value="' . CURRENCY_SIGN_FORM_ELEMENT_CUSTOM_VALUE . '" selected="selected">');
$this
->assertRaw('<option value="' . CURRENCY_SIGN_FORM_ELEMENT_CUSTOM_VALUE . '" selected="selected">');
// Check if the sign element is set to a custom value.
$this
->assertFieldByXPath("//select[@name='sign[sign]']/option[@value='" . CURRENCY_SIGN_FORM_ELEMENT_CUSTOM_VALUE . "' and @selected='selected']");
// Check if the custom sign input element has the custom sign as its value.
$this
->assertFieldByXPath("//input[@name='sign[sign_custom]' and @value='foobar']");
// Test a custom currency.
$values = array(
'sign[sign]' => '',
);
$this
->drupalPost($path . '/ZZZ', $values, t('Submit'));
$this
->assertUrl('user');
$this
->assertRaw("\$form_state['sign'] = ''");
}