Commit Graph

330 Commits

Author SHA1 Message Date
Nicholas Dudfield
4f0399180c Reinstate disabled test (Thanks to encoded reminder) 2014-05-06 13:56:20 +07:00
Stefan Thomas
c3f630c27f Merge pull request #72 from emschwartz/message-signing
[FEATURE] New Message class for sigs on arbitrary data
2014-05-02 10:59:25 -07:00
Evan Schwartz
cf3a21a712 [CHORE] Merged PubKeyValidator into Account class 2014-05-01 20:28:55 -07:00
Evan Schwartz
a2b07d5edd [FIX] Handling public key validation for unfunded accounts 2014-05-01 17:22:20 -07:00
Evan Schwartz
904082a86c [FEATURE] New Message class for sigs on arbitrary data
This includes supporting files that can sign arbitrary data
with a signature that enables public key recovery. It also
includes the PublicKeyValidator class that can verify whether
a given public key is active for an account by looking in its
AccountRoot.
2014-04-30 18:41:18 -07:00
Stefan Thomas
fbdef6eea0 [BUG] UInt#parse_number should support zero. Add tests. 2014-04-24 09:01:18 -07:00
Stefan Thomas
716fd0b938 [CHORE] Improved Amount#parse_quality w/ demurrage support, drops->XRP, etc.
Amount#parse_quality is made currency-aware. This allows it to adjust for XRP as
the base currency, as well as for interest-bearing or demurring base currencies.
2014-03-22 02:38:03 -07:00
Stefan Thomas
893fc4c168 [CHORE] Add Amount#invert mathematical utility function. 2014-03-22 00:47:41 -07:00
Stefan Thomas
c808cb0a1c [CHORE] Add ability to apply demurrage at the time of product/ratio calculation. 2014-03-21 18:43:22 -07:00
Stefan Thomas
9d6ccdcab1 [CHORE] Enable signature canonicalization. 2014-03-20 17:38:46 -07:00
wltsmrz
976de00242 Update remote init test 2014-03-03 15:27:38 -08:00
Nicholas Dudfield
e227a541e7 Set VER_ACCOUNT_ID on address returned by keypair
Just a decent default, client code can still set_version before base58 encoding.
2014-03-03 11:09:15 +07:00
sublimator
5c8550b364 Update serializedtypes-test.js 2014-02-15 09:31:59 +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
Nicholas Dudfield
b01c15847c Fix binary serialization of Vector256 2014-02-01 11:02:10 +07:00
Nicholas Dudfield
23528293e0 Fix binary parsing of Vector256 2014-02-01 10:46:04 +07:00
Stefan Thomas
f678f47155 Amount: Full demurrage support. 2014-01-25 11:31:56 -08:00
Stefan Thomas
86c35d7d9c Add a new simple test for XRP IOUs in PathSet. 2014-01-24 05:25:30 -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
Nicholas Dudfield
967317f37e Add SerializedObject.check_no_missing_fields 2014-01-05 11:36:35 +07:00
wltsmrz
1fa196037e Fix direct requirements for tests 2013-11-18 13:08:05 -08:00
wltsmrz
9b3bb77d0e Merge pull request #27 from stevenzeiler/develop
[TEST] Add chai and sinon for testing, begin testing remote.js
2013-11-13 18:35:17 -08:00
Stefan Thomas
05f3a97042 UInt160 can be an account or a plain hash.
The UInt160 class used to be hardcoded to be an Account. This commit changes it
so it can be used as an account or a plain hash. It will try to automatically
self-classify based on how it is initialized.

In the future we may want to have some dedicated classes rather than a
single configurable UInt160.
2013-11-12 15:51:50 -08:00
Steven Zeiler
1db2187e79 [TEST] Add chai and sinon for testing.
Begin testing remote.js
    Add initialization of 'note variable' and a comment that it should be removed
2013-11-12 14:13:15 -08:00
Stefan Thomas
96ed994932 Fixes on XRP path serialization/deserialization. 2013-11-11 12:17:09 -08:00
Stefan Thomas
b2580ec178 Disambiguate PathSets with XRP vs XRP IOUs.
XRP IOUs are no longer valid, however they do exist in the network's historical
transactions, so the serialization and deserialization need to be able to handle
them.
2013-11-11 11:49:52 -08:00
Stefan Thomas
34ea528ade Add serialization of XRP as an IOU if explicitly asked for.
Unfortunately, there are some transactions in the history that use this format,
so we need to support it in order to be able to verify historic ledgers.
2013-11-08 16:36:37 -08:00
Stefan Thomas
a8759f1390 Fix large 32-bit integers getting deserialized as signed ints. 2013-11-08 14:21:27 -08:00
Stefan Thomas
069852a501 Fix parsing Hash256s that start with FF. 2013-11-08 12:49:13 -08:00
Stefan Thomas
5def7ba917 Add SHAMaps, metadata serialization and transaction hash calculation. 2013-11-07 22:36:06 -08:00
Stefan Thomas
74ef8f8400 Fix Int64 parsing. 2013-11-07 21:56:26 -08:00
Stefan Thomas
e65f975e29 Transaction#hash. 2013-11-07 13:56:07 -08:00
Stefan Thomas
f259c7ebd7 Montgomery: Fix infinite loop for leading zero inputs. Add test. 2013-09-21 17:16:44 -07:00
Stefan Thomas
5c36be59e5 More tests for Montgomery exponentiation. 2013-09-21 16:49:09 -07:00
Stefan Thomas
d2559dcdb8 Added Montgomery exponentiation for SJCL. 2013-09-21 15:23:55 -07:00
Stefan Thomas
6194d9bcd9 Left a console statement. Oops. 2013-09-21 05:50:28 -07:00
Stefan Thomas
64df821b38 JSBN and coverage tests cleanup.
Fixes compiler warning about SJCL.
Fixes coverage source highlighting issue.
Move JSBN outside of src/js/jsbn/.
2013-09-21 05:41:19 -07:00
Stefan Thomas
0986b37267 Added Jacobi functionality, more bn features - plus tests. 2013-09-19 22:24:49 -07:00
wltsmrz
8dd1b62d78 Improve test coverage 2013-09-12 14:15:44 -07:00
wltsmrz
9eeb3faba3 Improve test coverage 2013-09-12 14:15:34 -07:00
wltsmrz
bba2e10e94 Test coverage 2013-09-11 14:22:47 -07:00
jatchili
bcaabd36be Merge branch 'develop' of https://github.com/ripple/ripple-lib into develop
Conflicts:
	src/js/ripple/serializedtypes.js
	test/serializedtypes-test.js

JSONify complex structures before comparing them in tests.
2013-09-10 16:46:53 -07:00
jatchili
21aed214a7 messing around with serialized types test 2013-09-10 16:10:49 -07:00
wltsmrz
6f9c103d78 Update tests for future test coverage 2013-09-10 15:48:57 -07:00
wltsmrz
6ce83107c8 Cleanup 2013-09-09 13:05:40 -07:00
wltsmrz
bf95285d90 Use assert.deepEqual, fix serializedtypes 2013-09-08 18:07:55 -07:00
wltsmrz
8b1407613a Remove extraneous file 2013-09-08 17:38:02 -07:00
wltsmrz
25401bd08d Update ripple-lib tests to use mocha 2013-09-08 17:33:08 -07:00
jatchili
0c18f6157d SerializedObject to_json method, and a simple test for that. Tests are still preliminary, and refactoring is still necessary. 2013-08-14 18:33:01 -07:00
jatchili
63038d3603 basic tests for serializedtypes.js 2013-08-12 15:19:04 -07:00