def test_format_currency(self):
     self.assertEqual(format_currency('11', 'GBP'), '£11.00')
     self.assertEqual(format_currency('11.99', 'GBP'), '£11.99')
     self.assertEqual(format_currency('11000', 'USD'), 'US$11,000.00')
     self.assertEqual(format_currency(0), '£0.00')
     self.assertEqual(format_currency(0.00), '£0.00')
     self.assertEqual(format_currency('', ), '')
     self.assertEqual(format_currency(None), '')
     self.assertEqual(format_currency(Undefined()), '')
Example #2
0
    def test_format_currency_no_value_returns_empty_string(self):
        # Given
        currency = ''

        # When
        format_value = format_currency(currency)

        self.assertEqual(format_value, '')
Example #3
0
    def test_format_currency(self):
        # Given
        currency = 1.12

        # When
        format_value = format_currency(currency)

        self.assertEqual(format_value, '£1.12')
Example #4
0
 def test_format_currency(self):
     self.assertEqual(format_currency(self.autoescape_context, '11', 'GBP'),
                      "<span class='date'>£11.00</span>")
     self.assertEqual(
         format_currency(self.autoescape_context, '11.99', 'GBP'),
         "<span class='date'>£11.99</span>")
     self.assertEqual(
         format_currency(self.autoescape_context, '11000', 'USD'),
         "<span class='date'>US$11,000.00</span>")
     self.assertEqual(format_currency(self.autoescape_context, 0),
                      "<span class='date'>£0.00</span>")
     self.assertEqual(format_currency(self.autoescape_context, 0.00),
                      "<span class='date'>£0.00</span>")
     self.assertEqual(format_currency(
         self.autoescape_context,
         '',
     ), "<span class='date'></span>")
     self.assertEqual(format_currency(self.autoescape_context, None),
                      "<span class='date'></span>")
     self.assertEqual(format_currency(self.autoescape_context, Undefined()),
                      "<span class='date'></span>")
Example #5
0
def _get_formatted_total(block, answer_store, group_instance, schema):
    calculated_total = 0
    for answer in block['calculation']['answers_to_calculate']:
        if group_instance > 0 and not schema.answer_is_in_repeating_group(
                answer):
            group_instance = 0
        calculated_total += get_answer_store_value(answer, answer_store,
                                                   group_instance) or 0

    answer_json = schema.get_answer(
        block['calculation']['answers_to_calculate'][0])
    number_type = answer_json['type']
    if number_type == 'Currency':
        formatted_total = format_currency(calculated_total,
                                          answer_json['currency'])
    elif number_type == 'Unit':
        formatted_total = format_unit(answer_json['unit'], calculated_total)
    elif number_type == 'Percentage':
        formatted_total = format_percentage(calculated_total)
    else:
        formatted_total = format_number(calculated_total)

    return formatted_total
def format_playback_value(value, currency=None):
    if currency:
        return format_currency(value, currency)
    return format_number(value)