Commit graph

753 commits

Author SHA1 Message Date
theoreticalbts
d1d06213e1 block_tests.cpp: Fix generate_empty_blocks 2015-10-29 19:23:23 -04:00
theoreticalbts
9d3652e9ec Fix tests to obey new feed publishing requirement !core_exchange_rate.is_null() 2015-10-29 10:42:32 -04:00
Daniel Larimer
bf4f9ab916 fix some unit tests by renaming BITUSD to USDBIT
Some unit tests broke after making assets with BIT prefix illegal.
2015-10-19 16:49:05 -04:00
theoreticalbts
d0609e8e74 Update copyright notice for BitShares 2015-10-12 13:48:40 -04:00
theoreticalbts
60f0812de2 Update copyright notice 2015-10-12 13:32:47 -04:00
theoreticalbts
f0f96d5a8f Allow witness-fed and committee-fed BitAsset feeds to be specified in flags.
This is only technically a hardfork, in order to actually desync the chain
the witness account / committee account would need to pass a proposal to do
something in their capacity as the owner of an asset_object.  It should be
fairly safe to say that this will not occur on testnet until witnesses have
upgraded.
2015-10-09 13:23:55 -04:00
theoreticalbts
9b910ee1a4 HARDFORK Allow digits in asset name; fix #359 2015-10-08 15:26:13 -04:00
theoreticalbts
0106a896dc operation_tests.cpp: Fix black_swan_issue_346 test 2015-10-08 15:26:13 -04:00
Daniel Larimer
f05a7bbc97 fix warning 2015-10-02 16:12:06 -04:00
theoreticalbts
db84a492b9 Implement unit test for #350 2015-10-02 10:53:31 -04:00
theoreticalbts
9d5a5dd21c Implement unit test for #346 2015-10-01 12:26:03 -04:00
Eric Frias
74bbde785b In the p2p networking code, request multiple transactions at a time to improve performance during flooding 2015-09-29 17:37:32 -04:00
theoreticalbts
8d52e2dda8 database: Scrub db in open() to force reindex if DB is outdated 2015-09-28 12:15:17 -04:00
theoreticalbts
cb983ced0a block_tests.cpp: Remove logspam, fix compiler warnings 2015-09-22 13:28:53 -04:00
theoreticalbts
53e86fded2 block_tests.cpp: Update transaction_invalidated_in_cache test 2015-09-22 13:27:59 -04:00
theoreticalbts
8de583b0a1 Fix unit tests 2015-09-21 17:36:45 -04:00
Daniel Larimer
966df708a5 fix unit tests 2015-09-18 13:56:32 -04:00
Daniel Larimer
0c1ea181fe commenting out bogus test 2015-09-18 13:48:52 -04:00
Daniel Larimer
26007bb655 update shuffling algorithm 2015-09-18 13:42:12 -04:00
theoreticalbts
b5db094b3b Fix broken unit tests 2015-09-17 12:11:40 -04:00
theoreticalbts
b9727e6e1c Increase logging, improve error messages 2015-09-17 12:11:40 -04:00
theoreticalbts
60f6833795 database_fixture.cpp: Fail assert instead of segfault if asset or account is not found 2015-09-17 12:11:40 -04:00
theoreticalbts
1451f67636 block_tests.cpp: Implement miss_many_blocks test #313 2015-09-16 11:10:57 -04:00
theoreticalbts
422f5762d3 Create unit test for genesis ID reservation #281 2015-09-16 10:18:23 -04:00
Eric Frias
8e9bd890a8 Fix bugs, improve logging in p2p sync 2015-09-10 19:33:11 -04:00
theoreticalbts
15ec55e52d block_tests.cpp: Fix transaction_invalidated_in_cache test, including transaction expiration 2015-09-09 11:03:16 -04:00
theoreticalbts
7317465633 block_tests.cpp: Fix #300 by generating more blocks in generate_empty_blocks() 2015-09-08 16:40:52 -04:00
theoreticalbts
6c73046281 block_tests.cpp: Implement transaction_expires_in_cache test #264 #299 2015-09-08 16:09:48 -04:00
Daniel Larimer
96a20bbd35 adding extra test of fork db 2015-09-02 09:03:04 -04:00
theoreticalbts
823adbbed5 generate_empty_blocks: Create binary to generate many blocks for testing 2015-08-27 16:42:23 -04:00
Daniel Larimer
2a494d9de0 Merge branch 'witness_schedule_refactor'
Also fix object_id addition
2015-08-27 11:33:42 -04:00
Daniel Larimer
12cd23df57 Merge branch 'witness_schedule_refactor' of github.com:cryptonomex/graphene into witness_schedule_refactor 2015-08-26 18:36:36 -04:00
theoreticalbts
59a3ca32b7 Remove secret hashes from witnesses 2015-08-26 17:43:00 -04:00
theoreticalbts
19d10e462c Implement GRAPHENE_PROXY_TO_SELF_ACCOUNT #267 2015-08-26 17:09:49 -04:00
theoreticalbts
0ae94f88d4 operation_tests2.cpp: Fix production check in witness_create 2015-08-26 16:10:34 -04:00
theoreticalbts
6c052294e1 Remove block randomness and rewrite witness scheduling 2015-08-26 15:36:27 -04:00
theoreticalbts
dcc4f8076b database.hpp: Simplify get_scheduled_witness() return value 2015-08-26 15:36:26 -04:00
theoreticalbts
0bcfc69da2 Further improve Merkle root algorithm, implement unit test #266
This commit redefines the hash h of a node in the Merkle tree as:

h(unary_node) = unary_node
h(binary_node) = H(left_child + right_child)

Previous code in c0b9af9a99 defined hash as:

h(unary_node) = H(unary_node + digest_type())
h(binary_node) = H(left_child + right_child)

The improved definition in this commit saves some hash computations.
2015-08-26 15:36:05 -04:00
theoreticalbts
c2e5432a30 Remove block randomness and rewrite witness scheduling 2015-08-25 18:01:15 -04:00
theoreticalbts
30296d9c36 database.hpp: Simplify get_scheduled_witness() return value 2015-08-25 17:59:15 -04:00
Nathan Hourt
eeeab17477 Polish out-of-order-block handling, write test case 2015-08-19 13:07:13 -04:00
theoreticalbts
3a7e65c888 chain_property_object: Implement chain_property_object as container for unchangeable properties set at genesis #238 2015-08-17 13:38:35 -04:00
theoreticalbts
7c579f22d3 fee_tests.cpp: Check fee after every block in account_create_fee_scaling test 2015-08-13 14:37:56 -04:00
theoreticalbts
e6116c466f Move account_create_fee_scaling test from fee_tests to block_tests 2015-08-13 14:29:51 -04:00
theoreticalbts
ce624827f6 Include smart_ref_impl.hpp when dereferencing smart_ref #231 2015-08-13 14:28:54 -04:00
theoreticalbts
4e1f38d8d9 api_stress.py: Implement simple stress testing of API 2015-08-12 16:52:30 -04:00
theoreticalbts
96fb8f60c2 fee_tests.cpp: Make sure validation actually enforces nonzero fees 2015-08-12 14:26:48 -04:00
theoreticalbts
3eedabbac2 Compute scaled precision at compile time, use in tests (fixes failures by prev commit) 2015-08-11 15:04:48 -04:00
theoreticalbts
44c174ad4a config.hpp: Remove CORE constant 2015-08-11 13:14:57 -04:00
Nathan Hourt
a4e5a03973 Resolve #161: Fix account creation fee scaling 2015-08-10 16:39:09 -04:00
theoreticalbts
0e76af1fe0 Add egenesis_none to targets in tests/ directory, fix #227 2015-08-10 12:38:01 -04:00
Nathan Hourt
9510960bf5 Resolve #193: Test transfer with memo 2015-08-07 16:33:51 -04:00
theoreticalbts
0295f10387 block_tests.cpp: Implement optional_tapos test to ensure backend doesn't force TaPoS 2015-08-06 13:08:53 -04:00
theoreticalbts
2e9876b557 Implement chain-locked transactions 2015-08-06 12:56:37 -04:00
theoreticalbts
1b5a7cb213 Implement max_auth_exceeded exception, internal exc framework, small refactor
Refactor tasks:

- Delete obsolete, commented-out implementation of verify_authority
- Make verify_authority_accounts an implementation detail of account_evaluator.cpp
- Create internal_exception macros / header
- Implement max_auth_exceeded and auth_account_not_found exceptions
2015-07-28 17:10:52 -04:00
theoreticalbts
36e155bc0c Implement tx_duplicate_sig exception, fix committee_authority test 2015-07-28 17:10:52 -04:00
theoreticalbts
54103da9a8 Implement tx_irrelevant_sig exception, fix assert_op_test 2015-07-28 17:10:52 -04:00
theoreticalbts
6bebdbad1c Make unit tests query get_slot_time() instead of doing own time computations
Fixed unit tests:  witness_apy_test, generate_empty_blocks, undo_block,
fork_blocks, undo_pending, switch_forks_undo_create, duplicate_transactions,
tapos, change_block_interval
2015-07-28 11:58:22 -04:00
theoreticalbts
5b9cd9122e Implement skip_slots 2015-07-28 11:58:22 -04:00
Daniel Larimer
9aab9ffa68 fix #205 tests no longer attempt to validate empty transactions 2015-07-24 17:21:54 -04:00
theoreticalbts
d33e64e407 operation_tests2.cpp: Fix set_expiration logic in some tests broken by parent commit
Fixed tests: withdraw_permission_nominal_case, withdraw_permission_test, proposal_owner_authority_complete
2015-07-23 17:01:39 -04:00
theoreticalbts
86456ba6e0 tests: Set expirations with helper function instead of ad hoc in each test 2015-07-23 17:01:39 -04:00
Vikram Rajkumar
c14ac442f5 Simplify genesis state; #17 2015-07-23 11:53:36 -04:00
theoreticalbts
83c8b4c5f9 transaction.cpp: Implement minimize_required_signatures and nonminimal_sig_test 2015-07-22 17:13:45 -04:00
Daniel Larimer
6f19268ffd Merge branch 'confidential' 2015-07-22 16:24:07 -04:00
theoreticalbts
9c1be851cd authority_tests.cpp: Initial implementation of get_required_signatures_test #182 2015-07-22 16:01:14 -04:00
theoreticalbts
085013fbd8 database_fixture.hpp: Add {name}_public_key to fields defined by ACTOR macro 2015-07-22 16:01:14 -04:00
Daniel Larimer
be65c277c9 Implement and Test Confidential Transactions
This checkin contains a fully functional confidential transaction
integration with passing unit tests.
2015-07-22 14:45:13 -04:00
theoreticalbts
d827c5df28 block_tests.cpp: Remove redundant, unimplemented force_settlement test 2015-07-21 16:07:14 -04:00
theoreticalbts
f06a5dccda operation_tests.cpp: Remove unimplemented bulk_discount_test #169 2015-07-21 16:07:14 -04:00
theoreticalbts
1430fab0f4 operation_tests.cpp: Add messages to update_uia test, fix check failing due to previous commit 2015-07-21 16:07:14 -04:00
theoreticalbts
5f12f3f445 operation_tests2.cpp: Implement force_settlement_test 2015-07-21 16:07:14 -04:00
theoreticalbts
cb2031a1e4 uia_tests.cpp: Remove mistakenly copy-pasted notes 2015-07-21 16:07:13 -04:00
Vikram Rajkumar
d0b8c66aad Fix Linux Clang build with missing includes; resolve #174 2015-07-20 14:57:08 -04:00
theoreticalbts
c67acc0cf5 uia_tests.cpp: Implement transfer_restricted_test 2015-07-17 20:48:49 -04:00
theoreticalbts
5655d47a6f operation_tests.cpp: Delete unimp_transfer_cashback_test, superseded by cashback_test 2015-07-17 19:15:29 -04:00
theoreticalbts
d52461b77b operation_tests.cpp: Implement reserve_asset_test 2015-07-17 15:54:18 -04:00
Daniel Larimer
d065984854 fix crash due to bad cast 2015-07-17 01:32:52 -04:00
Daniel Larimer
8c6e0b9e55 Refactor Authority Checking
transaction_evaluation_state no longer tracks authority validation.
Authority validation is now compeltely independent of the database.
2015-07-17 00:41:43 -04:00
Daniel Larimer
dc8849f23b Active key is not required when owner key present
- when updating account there is no need to sign with the active key if
 the owner has signed.
 - when updating an account the active key is enough to update the
 active key.
2015-07-16 16:09:32 -04:00
theoreticalbts
c527b2d41e operation_tests.cpp: Implement cover_with_collateral_test 2015-07-16 15:32:58 -04:00
theoreticalbts
bc9a3173ec database_fixture: Make borrow() return object 2015-07-16 15:32:58 -04:00
theoreticalbts
a4496eccb8 Fix #162 by adding an active authority to tests that use account_create_op directly 2015-07-15 17:22:47 -04:00
theoreticalbts
6f4eb55756 operation_tests2.cpp: Set skip_flags to deal with gaps in balance_object_test 2015-07-15 17:02:24 -04:00
theoreticalbts
8cc683374a operation_tests.cpp: set_expiration_time in transfer_core_asset test 2015-07-15 16:43:42 -04:00
theoreticalbts
8c91d17301 fee_tests.cpp: Rewrite cashback_test to compute ref amounts instead of using hardcoded numbers 2015-07-15 16:22:12 -04:00
Daniel Larimer
9671a92c43 Merge branch 'master' of github.com:cryptonomex/graphene 2015-07-15 14:18:32 -04:00
Daniel Larimer
7f54d3d077 Issue #160 - Dynamic Undo History / Minority Fork
The blockchain now has a minimal participation requirement that can only
be overridden with checkpoints.  Any time participation falls below a
minimal level no new blocks may be added.

Currently it requires 66% participation and tolerates short periods of
time below 66% participation with a maximum of 500 consecutive blocks
missed.  For every two blocks produced 1 can be missed with a slack of
999 bias.
2015-07-15 14:13:24 -04:00
theoreticalbts
15724170b8 Fix test failures due to now-required expiration 2015-07-15 13:53:55 -04:00
theoreticalbts
a751d90e00 Move witness pay to VBO, update test #142 2015-07-15 12:36:26 -04:00
Daniel Larimer
a60c506cc7 Merge branch 'master' of github.com:cryptonomex/graphene 2015-07-14 18:48:12 -04:00
Daniel Larimer
cfa95a3f57 Issue #157 - make trx expiration absolute
This is done to comply with the policy that transactions should be self
describing and not depend upon implied state.  This makes things easier
for everyone to understand exactly when a transaction will be invalid
without having to refer to chain state.
2015-07-14 18:46:58 -04:00
theoreticalbts
cfd9dd0f75 app_test: Rewrite broken two_node_network test 2015-07-14 18:17:01 -04:00
theoreticalbts
6fd566e6f7 block_tests.cpp: Test witness participation rate 2015-07-13 17:02:00 -04:00
theoreticalbts
d48e97cab7 Test recent_slots_filled 2015-07-13 17:02:00 -04:00
Vikram Rajkumar
2f429e07f1 Rename bad references to delegate -> committee member; #147 2015-07-13 16:08:17 -04:00
Vikram Rajkumar
6043586d15 Rename bad references to delegate -> witness; #147 2015-07-13 16:08:17 -04:00
Vikram Rajkumar
70b77be3bc Rename bad references to genesis account -> committee account; #147 2015-07-13 16:08:16 -04:00
Vikram Rajkumar
34598df149 Fix a test failure 2015-07-13 16:08:16 -04:00
theoreticalbts
e876c5fb81 Organize temporary files under GRAPHENE_TEMPDIR (or /tmp/graphene-tmp if undefined) 2015-07-13 15:15:55 -04:00
Eric Frias
8245b18c98 Win32 compile fixes 2015-07-10 11:55:12 -04:00
Daniel Larimer
04b8820b3b Merge branch 'master' into fee_refactor 2015-07-09 16:34:56 -04:00
Daniel Larimer
10bd652168 fix uia_transfer test, update transfer error messages 2015-07-09 16:21:40 -04:00
Daniel Larimer
014e6e7b79 fix uia_fees test 2015-07-09 16:05:57 -04:00
Daniel Larimer
9e150df605 Fix withdraw_witness_pay test 2015-07-09 15:55:10 -04:00
Daniel Larimer
a164fbe8fa fix proposal authority 2015-07-09 15:14:44 -04:00
theoreticalbts
a41384d4b1 asset_ops.hpp: Change bitasset_options member name to bitasset_opts to fix gcc compile 2015-07-09 14:52:22 -04:00
theoreticalbts
ae7b904e4a Clean up some unused files 2015-07-09 11:59:06 -04:00
Daniel Larimer
9699be84e6 Progress on #144 2015-07-09 11:40:37 -04:00
Daniel Larimer
c8f0ea4abe It now builds #144 2015-07-09 09:56:50 -04:00
Daniel Larimer
786c65d4b4 Merge branch 'master' into fee_refactor 2015-07-09 08:43:45 -04:00
Daniel Larimer
714f6d01f0 progress updating tests #144 2015-07-09 08:22:04 -04:00
Daniel Larimer
fdcf821c41 Progress on #144 - refactoring fee schedule 2015-07-08 18:45:53 -04:00
Vikram Rajkumar
3f6535343d Fix build 2015-07-08 18:10:38 -04:00
Nathan Hourt
d64c9154a7 Progress #17: Lazy load genesis state
This speeds up startup for witness_node when starting on a database
which is already initialized.
2015-07-08 17:39:34 -04:00
theoreticalbts
9c4ac2e064 exceptions: Add some exceptions 2015-07-08 16:48:24 -04:00
theoreticalbts
d4e4854eb6 exceptions: Implement missing_auth exceptions 2015-07-08 14:29:07 -04:00
theoreticalbts
8ff25b813f Begin implementation of new exception framework #113 2015-07-08 13:53:08 -04:00
theoreticalbts
680dadf5b0 database_fixture: Enable verbose output only if --record-assert-trip is passed on command line 2015-07-08 13:53:08 -04:00
theoreticalbts
4229e33525 tests: replace BOOST_REQUIRE_THROW / BOOST_CHECK_THROW with GRAPHENE_*_THROW 2015-07-08 13:53:08 -04:00
theoreticalbts
16db253535 db_fixture.hpp: Implement some macros for exception checking 2015-07-08 13:53:08 -04:00
Nathan Hourt
3d60449c6e Progress #8: Test shorts and force settles 2015-07-07 17:39:45 -04:00
Vikram Rajkumar
9b5bd12c67 Add genesis_state_type::initial_timestamp; #17 2015-07-07 15:37:31 -04:00
Vikram Rajkumar
38956692ee Fix a couple misleading names 2015-07-07 15:06:06 -04:00
Nathan Hourt
e6e7f70ff9 Resolve #98: Finish testing of genesis balances 2015-07-07 13:59:07 -04:00
Nathan Hourt
b134fbe43c Move some unacceptably slow tests to intense_tests
Speeds up chain_tests runs from ~30s to ~5s on my system.
2015-07-07 13:59:07 -04:00
Vikram Rajkumar
68744c9de0 Initialize genesis witnesses with default secret commitment; #17, #23 2015-07-07 12:36:31 -04:00
Daniel Larimer
b1dd41ff3a Refactor get_required_auths on operations 2015-07-07 10:57:01 -04:00
Nathan Hourt
24496932d4 Progress #98: add some vesting genesis balance testing 2015-07-06 17:40:23 -04:00
Nathan Hourt
ab740d6aaa Make memo_test fail if serialization format changes
If this happens, the web guys need to be notified of the new format.
2015-07-06 17:40:23 -04:00
Daniel Larimer
7d6d7066c2 merge 2015-07-06 16:55:28 -04:00
Daniel Larimer
c537e41fcb Merge branch 'master' of github.com:cryptonomex/graphene 2015-07-06 16:50:36 -04:00
theoreticalbts
fcf21683f3 operation_tests2.cpp: Remove extra generate_block() in witness_create test 2015-07-06 15:52:33 -04:00
Daniel Larimer
8ccafe0f03 Refactor fee schedule for extensibility 2015-07-06 14:56:35 -04:00
Nathan Hourt
715d9a71b3 Fix the ~90 tests I just broke, and one I didn't 2015-07-06 14:14:15 -04:00
Nathan Hourt
6ab59f63a7 Resolve #133: allow creation of example genesis json 2015-07-06 14:00:39 -04:00
theoreticalbts
52fd59f0aa basic_tests.cpp: Change BOOST_REQUIRE to BOOST_CHECK in valid_name_test 2015-07-06 13:01:30 -04:00
theoreticalbts
7c30e44dc9 Fix is_valid_name() bugs, make it RFC 1035 compliant, update unit test, fix #15 2015-07-06 13:01:24 -04:00
Eric Frias
423eccf4a4 Win32 compile fixes, no functional changes 2015-07-05 17:58:24 -04:00
Daniel Larimer
c0c6022338 Fix #130 Black Swans Settle at Price Feed 2015-07-03 17:07:24 -04:00
Vikram Rajkumar
4a84892981 Fix build errors 2015-07-02 13:04:28 -04:00
Daniel Larimer
68fabe1464 Progress #127 - importing balances 2015-07-02 11:18:52 -04:00
Daniel Larimer
fefa0f65f8 Issue #106 - Removing KeyObject
- this is a major refactor of the code and may have broken some behavior
in the wallet or witness nodes.
- this commit changes the serialization of operations
- the chain_tests pass
2015-07-02 01:52:45 -04:00
Nathan Hourt
66c9606652 Progress #17: Add assets, initial witness count to genesis state 2015-07-01 17:18:53 -04:00
Daniel Larimer
ae80339362 #82 Add more riggirous invariant checks 2015-07-01 17:10:19 -04:00
Daniel Larimer
cc767bbc7e Resolve #103 - Implement issuer override tests 2015-07-01 16:57:22 -04:00
Daniel Larimer
2257e5da6c #108 Rename Burn to Reserve 2015-07-01 14:43:17 -04:00
Daniel Larimer
683fb6fe32 Merge branch 'master' of github.com:cryptonomex/graphene 2015-07-01 14:05:48 -04:00
Daniel Larimer
4bbaad02a7 Progress on Burn, Reserve, Issue, Retire #108 2015-07-01 14:05:42 -04:00
Nathan Hourt
f29eaa92e2 Fix all outstanding unexpected test failures 2015-07-01 13:53:07 -04:00
Nathan Hourt
5f5d819a1f Progress #98: Add public key to balance_claim_operation 2015-07-01 12:10:21 -04:00
Nathan Hourt
1c8e31c34a Fix 2 of the failing tests 2015-07-01 12:10:20 -04:00
theoreticalbts
f46758e97c block_tests: Implement tapos_rollover test 2015-06-30 17:07:21 -04:00
Nathan Hourt
c530867933 Progress #17
- Add initial support for vesting genesis balances
- Add owner/active keys to genesis accounts
- Cleanup circa balance_object and evaluator
2015-06-30 17:05:17 -04:00
Daniel Larimer
a05a13b20e Merge branch 'master' of github.com:cryptonomex/graphene 2015-06-30 15:13:23 -04:00
Daniel Larimer
e161e5a9fc Issues #112 Verifying all signatures are used
- refactor how signatures are stored on the transaction, removing key_id
and extra_signatures maps and replacing with a vector
- verify that each key only signs one time
- update tests to handle stricter policies on signatures
2015-06-30 15:11:26 -04:00
Nathan Hourt
e3f5e2cf8d Resolve #104: Set minimum feeds on bitassets 2015-06-30 11:59:53 -04:00
Nathan Hourt
6aae0d8314 Cleanup balance_object_test a bit 2015-06-30 10:25:46 -04:00
Nathan Hourt
391b0bec45 Progress #17: Remove GRAPHENE_INITIAL_SUPPLY
The INITIAL_SUPPLY macro is generally not useful, and there's no good
way to fulfill the promise it creates. By removing it, I can skip the
scaling on the genesis values. Now, if there is an allocation at
genesis, the supply is determined by that allocation. Otherwise, the
supply is GRAPHENE_MAX_SHARE_SUPPLY and it all belongs to
GRAPHENE_COMMITTEE_ACCOUNT.

Also, remove one of the redundant and confusing MAX_SUPPLY macros and
unify the usage to always be GRAPHENE_MAX_SHARE_SUPPLY.
2015-06-29 17:50:56 -04:00
Daniel Larimer
873cf4dcf8 Merge branch 'master' of github.com:cryptonomex/graphene 2015-06-29 17:29:11 -04:00
Daniel Larimer
681f0923fe add secondary index to get proposals relevant to a particular account 2015-06-29 17:29:04 -04:00
Nathan Hourt
8747a0572b Progress #17: add balance_objects to genesis, test 2015-06-29 17:18:29 -04:00
Vikram Rajkumar
9719689c34 Add unit test for is_valid_symbol 2015-06-29 15:25:54 -04:00
Vikram Rajkumar
f0ea015ccf Clean up is_valid_name and remove child accounts; #15, #93 2015-06-29 15:25:53 -04:00
theoreticalbts
d0f1fe5b01 Implement burn worker test #37 2015-06-29 11:50:41 -04:00
Vikram Rajkumar
7dd3d92a6c Merge pull request #102 from pmconrad/rfc_1035
See #15
2015-06-29 11:13:36 -04:00
Peter Conrad
0162a7d87d Added more test cases 2015-06-29 11:56:52 +02:00
Peter Conrad
18808b44ae Fixed build 2015-06-29 11:46:16 +02:00
Nathan Hourt
baea85ea3a Resolve #97: Add exponentially growing fees on account creation
It scales up aggressively right now; this can be adjusted later. I just
wanted to demonstrate that it works.
2015-06-26 16:43:39 -04:00
Nathan Hourt
a626b0685f Fix failing prediction market test 2015-06-26 10:57:38 -04:00
Nathan Hourt
5b55ab71ea Resolve #94
Core exchange rate is now redundantly stored in price feed for
bitassets, and updated when the median feed changes. This allows feed
producers to update the core exchange rate. Redundant storage is
necessary, because the core exchange rate is needed for user-issued
assets as well as market issued assets.
2015-06-26 10:53:12 -04:00
Daniel Larimer
c566687974 fix tests properly 2015-06-25 14:14:30 -04:00
Daniel Larimer
342abe6ca1 Fix tests 2015-06-25 12:07:39 -04:00
Daniel Larimer
a0765e2cf2 Removing unnecessary indexing from account history plugin, it can now focus on just tracking operation history 2015-06-24 16:38:56 -04:00
Daniel Larimer
aaf31d840f #47 Fix crash, added history lenght limits, added init testing 2015-06-24 14:01:37 -04:00
theoreticalbts
ed381af304 Spell out boost::program_options in headers instead of using alias
Multiple defs of bpo alias confused gcc and broke cli_wallet build.
2015-06-23 22:35:00 -04:00
theoreticalbts
5e630171ca operation_tests2.cpp: Fix global_settle_test 2015-06-23 18:05:47 -04:00
theoreticalbts
6944a3fe1f operation_tests.cpp: Remove redundant unimplemented tests 2015-06-23 18:05:47 -04:00
Vikram Rajkumar
b63de0ad29 Fix some compiler warnings 2015-06-23 17:54:59 -04:00
Vikram Rajkumar
0b854bc702 Build with TCMalloc if available 2015-06-23 17:54:59 -04:00
Nathan Hourt
cfcafcb5c2 Progress #66: Set initial fees
There is now a default value for all fees
2015-06-23 17:09:55 -04:00
theoreticalbts
0d02361af0 Clean up names of assert ops and evaluation dispatch 2015-06-23 15:15:34 -04:00
Nathan Hourt
08cba191c7 Progress #66: Audit calculate_fee implementations
I've audited all the calculate_fee impls and they all should be
reasonable at this point.

TODO: Set default fee values.
2015-06-23 14:19:39 -04:00
Daniel Larimer
06a9488f8b Issue #53 - flexible vesting balance creation
Use static variant to allow the types of vesting balances to be easily
extended and the creation operation allows for many different types of
initialization parameters.

Added a check that requires a minimum claim date which allows creating
of vesting balance objects with a cliff.
2015-06-23 10:14:40 -04:00
Daniel Larimer
8ac4bc1d58 Fix #39 Refactor assert_operation
Reasons:
  1. The protocol should not depend upon implementation details such as
  how the database objects are structured or reflected
  2. The protocol should deal in abstract concepts
  3. Should use fc::datastream rather than istringstream for performance
  and memory allocation reasons
  4. Fees should be charged proportional to the size of the operation
  5. Validate on the assert operation should also perform sanity checks
  on types
  6. Protocol definition objects should never depend upon the database
  because they may be used in situations where the database and
  evaluators are not present.
  7. Reflected field names should never have '_' in them because they
  become part of the *PUBLIC* json definition.
2015-06-23 09:14:18 -04:00
Daniel Larimer
21bd520f9c Merge branch 'master' of github.com:cryptonomex/graphene 2015-06-22 15:08:24 -04:00
Daniel Larimer
758d588aa1 switch to rationals 2015-06-22 15:04:19 -04:00
Nathan Hourt
3eaec849eb Progress #61: Getting witnesses/delegates by owner
Support and API are now present for retrieving witnesses and delegates
by their owners.
2015-06-22 15:03:24 -04:00
theoreticalbts
816ad4b7a6 operation_tests2.cpp: Implement assert_op_test 2015-06-22 13:26:08 -04:00
Daniel Larimer
49b2ce8094 Merge branch 'callprice'
Conflicts:
	tests/common/database_fixture.hpp
2015-06-21 19:41:32 -04:00
Daniel Larimer
177950b791 Fix margin call price calculation 2015-06-21 19:37:14 -04:00
Daniel Larimer
08bf4ec3fe progress 2015-06-19 18:49:32 -04:00
Nathan Hourt
96d2432c03 Tweak to database_fixture::borrow 2015-06-19 18:15:16 -04:00
Nathan Hourt
127ca9f8de WIP: Remove call price from call_order_update_operation 2015-06-19 18:14:23 -04:00
Nathan Hourt
c3b30b3dd7 Tweak to database_fixture::borrow 2015-06-19 16:36:37 -04:00
Daniel Larimer
fdec2a24e3 Fix #15 - adding unit test 2015-06-19 16:18:56 -04:00
Nathan Hourt
c1d1884d0b Test burning of whitelisted asset 2015-06-19 16:12:06 -04:00
Nathan Hourt
639930a2d7 Test bulk discount on fees 2015-06-19 16:12:05 -04:00
Daniel Larimer
3d29b29e50 remove debug logs 2015-06-19 15:58:50 -04:00
Daniel Larimer
decd0fd55e Merge branch 'master' of github.com:cryptonomex/graphene 2015-06-19 15:57:12 -04:00
Daniel Larimer
14b158364f implement and test prediction market features 2015-06-19 15:57:08 -04:00
theoreticalbts
764b8ce4ae operation_tests.cpp: Make witness_withdraw_pay_test computations more explicit 2015-06-19 15:19:37 -04:00
Daniel Larimer
186b970689 Merge branch 'master' of github.com:cryptonomex/graphene 2015-06-19 14:47:46 -04:00
Daniel Larimer
c80c839675 black swan test with force settle after 2015-06-19 14:47:42 -04:00
Nathan Hourt
9742bf511d Fix witness_withdraw_pay_test 2015-06-19 14:18:43 -04:00
Nathan Hourt
5e475e0c15 Mark expected failures while I track them down 2015-06-19 13:46:27 -04:00
Nathan Hourt
a90e3f0155 Fix broken delegate_feeds test 2015-06-19 13:43:57 -04:00
Nathan Hourt
626b5cbb23 Fix broken update_mia test 2015-06-19 12:29:44 -04:00
Daniel Larimer
19f1e04986 remove redundant tests 2015-06-19 12:27:09 -04:00
Daniel Larimer
b2962c530f Merge branch 'master' of github.com:cryptonomex/graphene 2015-06-19 12:11:36 -04:00
Daniel Larimer
51e6421ea0 fixed config settings 2015-06-19 12:11:32 -04:00
Nathan Hourt
dac278511b Cleaning up Dan's mess: fix broken mia_feeds test 2015-06-19 11:24:35 -04:00
Nathan Hourt
fc11f40937 Fix app_test
Sometimes it fails to connect, but when it does, it works.
2015-06-19 10:55:07 -04:00
Daniel Larimer
d5fb32a839 fix margin calls 2015-06-19 09:07:23 -04:00
Daniel Larimer
2c055d2320 resolve conflicts 2015-06-18 18:45:01 -04:00
Daniel Larimer
db43f41de8 Progress on margin call tests 2015-06-18 18:42:44 -04:00
Nathan Hourt
d30240ad8e Fix random failures of fired_delegates 2015-06-18 17:22:29 -04:00
Nathan Hourt
bba5681722 Resolve #31, at last
I'm now satisfied with the testing.
2015-06-18 17:22:29 -04:00
theoreticalbts
a2f7d704fe Make failing tests fail more nicely 2015-06-18 17:15:55 -04:00
Daniel Larimer
a14500a364 merge from master, clean up test output 2015-06-18 15:40:38 -04:00
Daniel Larimer
0a5954db70 merge master 2015-06-18 15:31:30 -04:00
Nathan Hourt
568a18571b Merge branch 'issue52' 2015-06-18 15:26:00 -04:00
Daniel Larimer
ef4ed937cb Fix update_call_order
- redefine price feeds
- clean up unit test spam
2015-06-18 15:17:48 -04:00
Nathan Hourt
d47c2ee2a2 Progress #52: The tests pass again. 2015-06-18 15:08:51 -04:00
Nathan Hourt
9291250214 Issue #52: working my way out of the rabbit hole
Evils abound. And tests still fail.
2015-06-18 15:08:51 -04:00
Vikram Rajkumar
f44bb5d1eb Fix test build 2015-06-18 14:28:39 -04:00
theoreticalbts
f29ca98b9e authority_tests.cpp: Insert additional balance checks 2015-06-18 12:42:22 -04:00
theoreticalbts
1fb1e80a2e check skip_flags restored to 0 after all tests 2015-06-18 12:42:22 -04:00
theoreticalbts
8e9b60dd9c block_tests.cpp: Explicitly specify skip_flags in all places 2015-06-18 12:33:44 -04:00
theoreticalbts
616a7cf4d7 tests: Use new macros
Generated by applying these commands to parent commit:

sed -i -e 's/\([a-z0-9]\+\).push_transaction[(]\([^()]*\)[)]/PUSH_TX( \1, \2 )/' tests/tests/*.cpp
sed -i -e 's/\([a-z0-9]\+\).push_block[(]\([^()]*\)[)]/PUSH_BLOCK( \1, \2 )/' tests/tests/*.cpp
2015-06-18 12:33:44 -04:00
theoreticalbts
a219bee55d tests: implement new PUSH_TX / PUSH_BLOCK macros for tests 2015-06-18 12:33:44 -04:00
Nathan Hourt
8f739ac767 Dramatically accelerate chain_test, fix core asset burn bug
When generating blocks until a timestamp, we now generate one block
immediately, then skip blocks until the timestamp, and generate a
final block then.

Also, this exposed a bug in the witness budget handling which
caused the undesired burning of core asset. This bug is now fixed.
2015-06-17 12:14:28 -04:00
Nathan Hourt
c9328cc7f4 Resolve #52 2015-06-17 11:48:55 -04:00
Daniel Larimer
4aa1d6b339 Merge branch 'remove_leveldb' 2015-06-16 18:46:25 -04:00
Daniel Larimer
3bc325436f Merge branch 'master' of https://github.com/cryptonomex/graphene 2015-06-16 18:46:16 -04:00
Daniel Larimer
2724939ffb tests pass again 2015-06-16 18:45:33 -04:00
Vikram Rajkumar
109d95cbda Fix build 2015-06-16 17:02:13 -04:00
Daniel Larimer
ca89d5057c remove dependency on level db, bugs left to fix 2015-06-16 15:56:13 -04:00
Nathan Hourt
377432453f Lay to rest #16
It's finally done.
2015-06-16 14:42:05 -04:00
Daniel Larimer
2ae6ce9cdc updating tests to remove references to short 2015-06-16 12:17:09 -04:00
Nathan Hourt
ce4846e81b Progress #31: Add some testing 2015-06-15 17:31:44 -04:00
Nathan Hourt
81c6338dfe Begin test for cashback rewards 2015-06-15 17:31:43 -04:00
Vikram Rajkumar
6337f94555 Remove bond operations 2015-06-15 15:37:38 -04:00
Eric Frias
4490c3fa48 Win32 compile fixes 2015-06-15 14:46:19 -04:00
theoreticalbts
82cce44720 witness_order_mc_test: Renamed from delegate_groups_mc_test, less verbose logging 2015-06-11 17:55:16 -04:00
theoreticalbts
353bbd6b5c delegate_groups_mc_test: Fix round alignment problem due to generate_block() in database_fixture ctor 2015-06-11 17:55:16 -04:00
theoreticalbts
b7a44c6e6a intense_tests: Implement generic_scheduler_mc_test 2015-06-11 17:55:15 -04:00
Nathan Hourt
a185f864fc Progress #31: Implement threshold for vesting fees 2015-06-11 13:54:46 -04:00
theoreticalbts
c6a7cdf5a3 intense_tests: Implement delegate_groups_mc_test 2015-06-11 11:01:14 -04:00
Nathan Hourt
876e9a125d Resolve #31: Wrap it up and fix the failing tests 2015-06-10 14:22:32 -04:00
Nathan Hourt
7f0d1ebbed Progress #31, resolve #21
Declare, but not yet implement, account_upgrade_operation which can
upgrade accounts to members.

Resolve #21 by removing all the sketchy pointer arithmetic stuff
2015-06-10 14:17:17 -04:00
Nathan Hourt
ed7d485df3 Progress #31: Initial work on new cashback system
Lots still to do. There's no longer a way to upgrade an account, genesis
can't evaluate, and who knows how many tests are failing... But it
builds!
2015-06-10 14:17:17 -04:00
Nathan Hourt
0a945b0257 Initial commit 2015-06-08 12:36:37 -04:00