def test_currency_negative(): """test_currency_negative.""" amount = -100 default = Currency(amount=amount) decimal = CONTEXT.create_decimal(amount) assert default.amount == decimal assert default.numeric_code == '0' assert default.alpha_code == '' assert default.decimal_sign == '.' assert default.grouping_sign == ',' assert not default.international assert default.symbol == '' assert default.symbol_ahead assert default.symbol_separator == '' assert default.convertion == '' assert default.__hash__() == hash((decimal, '', '0')) assert default.__repr__() == ('Currency(amount: -100, ' 'alpha_code: "", ' 'symbol: "", ' 'symbol_ahead: True, ' 'symbol_separator: "", ' 'numeric_code: "0", ' 'decimal_places: "2", ' 'decimal_sign: ".", ' 'grouping_sign: ",", ' 'convertion: "", ' 'international: False)') assert default.__str__() == '-100.00'
def test_currency_custom(): """test_currency_custom.""" amount = 1000 euro = Currency(amount=amount, alpha_code='EUR', symbol='€', symbol_ahead=False, symbol_separator='\u00A0', numeric_code='978', decimal_places=2, decimal_sign=',', grouping_sign='.', convertion='0123456789-,.', international=True) decimal = CONTEXT.create_decimal(amount) assert euro.amount == decimal assert euro.numeric_code == '978' assert euro.alpha_code == 'EUR' assert euro.decimal_places == 2 assert euro.decimal_sign == ',' assert euro.grouping_sign == '.' assert euro.international assert euro.symbol == '€' assert not euro.symbol_ahead assert euro.symbol_separator == '\u00A0' assert euro.convertion == '0123456789-,.' assert euro.__hash__() == hash((decimal, 'EUR', '978')) assert euro.__repr__() == ('Currency(amount: 1000, ' 'alpha_code: "EUR", ' 'symbol: "€", ' 'symbol_ahead: False, ' 'symbol_separator: "\u00A0", ' 'numeric_code: "978", ' 'decimal_places: "2", ' 'decimal_sign: ",", ' 'grouping_sign: ".", ' 'convertion: "0123456789-,.", ' 'international: True)') assert euro.__str__() == 'EUR 1,000.00'