public function UbercartAttributeTestCase::testAttributeUIClassAttributeOptionOverview in Ubercart 6.2
Same name and namespace in other branches
- 7.3 uc_attribute/tests/uc_attribute.test \UbercartAttributeTestCase::testAttributeUIClassAttributeOptionOverview()
Tests the product class attribute option user interface.
File
- uc_attribute/
uc_attribute.test, line 678 - Ubercart Attribute Tests
Class
- UbercartAttributeTestCase
- SimpleTests for the Ubercart Attributes API.
Code
public function testAttributeUIClassAttributeOptionOverview() {
$class = $this
->createProductClass();
$attribute = self::createAttribute();
$option = self::createAttributeOption(array(
'aid' => $attribute->aid,
));
uc_attribute_subject_save($attribute, 'class', $class->pcid);
$this
->drupalGet('admin/store/products/classes/' . $class->pcid . '/options');
$this
->assertRaw(t(' @option</label>', array(
'@option' => $option->name,
)), t('Class attribute option form working.'), t('Ubercart'));
$o = (array) self::createAttributeOption(array(
'aid' => $attribute->aid,
), FALSE);
unset($o['name'], $o['aid']);
$o['select'] = TRUE;
foreach ($o as $field => $value) {
$edit["attributes[{$attribute->aid}][options][{$option->oid}][{$field}]"] = $value;
}
unset($o['select']);
$edit["attributes[{$attribute->aid}][default]"] = $option->oid;
$this
->showVar($edit);
$this
->drupalPost('admin/store/products/classes/' . $class->pcid . '/options', $edit, t('Submit'));
$this
->assertText('The product class options have been saved.', t('Class attribute option saved.'), t('Ubercart'));
$this
->showVar($option);
$option = uc_attribute_subject_option_load($option->oid, 'class', $class->pcid);
$fields_ok = TRUE;
foreach ($o as $field => $value) {
if ($option->{$field} != $value) {
$this
->showVar($option);
$this
->showVar($o);
$fields_ok = FALSE;
break;
}
}
$this
->assertTrue($fields_ok, t('Class attribute option edited successfully by form.'), t('Ubercart'));
}