Commit Graph

12 Commits

Author SHA1 Message Date
Geert Weening
5fe1ebdd45 [TEST] add test to verify HEX_ZERO is native currency 2014-06-24 16:35:12 -07:00
Geert Weening
a47eef3283 [TEST] add full_name null case test 2014-06-24 11:55:33 -07:00
Geert Weening
a573465e41 [FEATURE] Currency: add option force hex in json format
provide the `force_hex` flag in the options object in a `to_json` or `json_rewrite` call
2014-06-23 14:48:54 -07:00
Geert Weening
a71fc07ba5 [FEATURE] add getter for a Currency's iso_code 2014-06-03 15:18:45 -07:00
Geert Weening
61586a4185 [FEATURE] support numeric currency codes
ISO 4217 states support for both alphabetic and numeric codes. rippled adheres to the ISO 4217 as stated in the Currency_Format on the wiki (https://ripple.com/wiki/Currency_Format) and there are trustlines out there with numeric currency codes.

The three-digit numeric code is useful when currency codes need to be understood in countries that do not use Latin scripts and for computerised systems. Where possible the 3 digit numeric code is the same as the numeric country code.
2014-06-02 17:14:22 -07:00
Geert Weening
3ef105e077 [FEATURE] support full_name in to_human() and to_json() 2014-05-30 15:10:07 -07:00
Geert Weening
decebe3d2e [FEATURE] allow numbers, hyphens and spaces in full currency 2014-05-30 15:10:07 -07:00
Geert Weening
53c7836a7a [TEST] test human readable Currency parsing 2014-05-30 15:10:07 -07:00
Stefan Thomas
0772ffb6ed Currency: Behavior change for to_json for demurrage currencies.
Currency#to_json should output a format that can be successfully converted back
to a Currency object via from_json. So for demurrage currencies it should output
the full hex currency code.

Currency#to_human on the other hand should always print something a human will
understand. For demurrage currencies we'll print the three-letter code for now.
2014-02-09 23:07:04 -08:00
Stefan Thomas
f678f47155 Amount: Full demurrage support. 2014-01-25 11:31:56 -08:00
Stefan Thomas
9f76907f51 Currency: Add support for complex currencies. (UInt160)
This patch might regress the performance of the Currency class and by extension
the Amount class. Since Amount is on a lot of hot paths in the client we should
make sure this isn't a major problem.

As for compatibility, this patch is a major change, but it should maintain the
public interface very well, which the exception of some strange edge cases (e.g.
Currency.from_json(1337)), which weren't well-defined before anyway. Any code
that accesses _value directly (shame on you!) will need to be fixed. There
aren't any such references in ripple-client or the rippled test suite, so I
think we're looking pretty good.
2014-01-24 05:24:46 -08:00
wltsmrz
9eeb3faba3 Improve test coverage 2013-09-12 14:15:34 -07:00