protected function UCXFTestCase::checkTokens in Extra Fields Checkout Pane 6.2
Same name and namespace in other branches
- 7 uc_extra_fields_pane.test \UCXFTestCase::checkTokens()
Test if tokens are properly generated.
Parameters
array $values: An array of ucxf values, grouped by field name.
int $order_id: The Ubercart order ID
int $type: The value element type
Return value
void
1 call to UCXFTestCase::checkTokens()
- UCXFTestCase::checkout in ./
uc_extra_fields_pane.test - Overrides UbercartTestHelper::checkout().
File
- ./
uc_extra_fields_pane.test, line 370 - Automated tests for Extra Fields Pane
Class
- UCXFTestCase
- Base class for all Extra Fields Pane test cases.
Code
protected function checkTokens($values, $order_id, $type) {
$order = uc_order_load($order_id);
foreach ($values as $db_name => $value) {
$field = UCXF_FieldList::getFieldByName($db_name);
$db_name = str_replace('ucxf_', '', $field->db_name);
// Generate token name
$token_name = '';
switch ($type) {
case UCXF_Value::UCXF_VALUE_ORDER_INFO:
$token_name = 'extra-' . $field->pane_type . '-' . $db_name;
break;
case UCXF_Value::UCXF_VALUE_ORDER_DELIVERY:
$token_name = 'extra-extra_delivery-' . $db_name;
break;
case UCXF_Value::UCXF_VALUE_ORDER_BILLING:
$token_name = 'extra-extra_billing-' . $db_name;
break;
}
// Test if generated token value is equal to expected output.
$text = TOKEN_PREFIX . $token_name . TOKEN_SUFFIX;
$token_value = token_replace($text, 'order', $order);
$this
->assertEqual($field
->output_value($value), $token_value, t('The token for %field is properly generated.', array(
'%field' => $field->db_name,
)));
}
}