Commit Graph

1608 Commits (11c8be9b6d1bf0e14dfc200ae376860d3cb34559)

Author SHA1 Message Date
Kieran R. Prasch 4431d7966d Respond to RFCs in PR #1225; Use blake2b for registry cache key. 2019-08-27 09:56:41 -07:00
Kieran R. Prasch 64d40a7f80 Whoops! Restores 'address' and respectively 2019-08-27 09:56:41 -07:00
szotov 72f8b49501 Monkey patch to prevent gas adjustment in tests 2019-08-27 09:56:41 -07:00
Kieran Prasch b20cf2f6f6 Test fixes: Alter estimate gas to use blockchain factory; Restore accidentally renamed deployment files. 2019-08-27 09:56:41 -07:00
Kieran Prasch 58f34dac7b Checkpoint #4 - Fixes policy sampling bugs - continue reflow fixes. 2019-08-27 09:56:41 -07:00
Kieran Prasch 2a299aaca1 Checkpoint #3 - Reflow StakeHolder, Stake and Wallet Management. 2019-08-27 09:56:36 -07:00
Kieran Prasch 324c2805f5 Checkpoint #2 - Refactor Policy, and Blockchain / Registry Reflow. 2019-08-27 09:54:14 -07:00
Kieran Prasch 69aea3f725 Checkpoint: Refactors lifecycle of Blockchain and Registry. 2019-08-27 09:54:13 -07:00
derekpierre 213b42fe58 Return UnsuportedProvider exception instead of ValueError - update unit tests. 2019-08-24 13:56:26 +02:00
derekpierre f7787b87b4 Minor unit test fix. 2019-08-24 09:01:06 +02:00
derekpierre 74e2c0cf3a Code cleanup: log message and tests for auto file-scheme detection 2019-08-24 09:01:06 +02:00
derekpierre 172e2a9683 Add provider type detection test for websocket uri 2019-08-24 09:01:06 +02:00
derekpierre 6ece74cb00 Auto-detect 'file' uri scheme when an ipc file path is provided without a scheme and exists. This allows for auto-completion for file paths passed as --provider. 2019-08-24 09:01:06 +02:00
szotov ca79c0834f Renaming workDone -> completedWork, payor -> payer 2019-08-21 21:27:42 +03:00
szotov 71223cb00c Fix after rebasing 2019-08-21 21:27:41 +03:00
szotov 38d8361f35 Added new restriction to prolongStake 2019-08-21 21:27:40 +03:00
szotov c0c2319443 Fix after rebasing 2019-08-21 21:27:40 +03:00
szotov 60f341c3e0 Removed preDeposit method, fixed small issues 2019-08-21 21:27:38 +03:00
szotov 7c2e08872d Fix getRemainingWork in worklock, worklock in intercontract test 2019-08-21 21:27:38 +03:00
szotov 75865a2388 Events for worklock 2019-08-21 21:27:37 +03:00
szotov e6fff3973b Tests for worklock 2019-08-21 21:27:36 +03:00
szotov 895411d312 Added function to prolong stake 2019-08-21 21:27:36 +03:00
szotov c173fc1e4f Tests for work measurement 2019-08-21 21:27:34 +03:00
David Núñez 29a7fd8407 NUCYPHER_WORKER_ETH_PASSWORD envvar for Ursula. Workaround for #1205.
Require existence of at least one ETH account when prompted.  Fix #1207.
2019-08-18 11:59:37 +02:00
Kieran Prasch 9408463dec Refactor from_seed_and_stake_info to accept a checksum_address inclusive in the URI. 2019-08-18 11:58:04 +02:00
damon c 126c44a5fc
Merge branch 'master' into status 2019-08-08 12:52:45 -07:00
K Prasch 002a373189
Merge pull request #1203 from vepkenez/sync-fix
Improved Blockchain Syncing UX
2019-08-08 12:50:31 -07:00
Kieran Prasch 73c6da3ffe
Restore nucypher status CLI: Error handling and console painting; implement worker-staker speration. 2019-08-08 12:43:18 -07:00
Damon C 785eb1e796
Implements InfuraClient by adding an intermediate call to get the variant of a web3 client. 2019-08-08 12:42:41 -07:00
Damon C d93f9c8947 squashed test fixes, addressed PR review comments 2019-08-08 11:49:25 -07:00
damon c 674efa768d
Apply suggestions from code review
Co-Authored-By: MacLane S Wilkison <maclane@nucypher.com>
2019-08-07 18:42:47 -07:00
Damon C d9aa98b0cf tests for blockchain sync flow 2019-08-07 13:31:38 -07:00
David Núñez c21448d547 Improve UX of nucypher stake set_worker and detach_worker 2019-08-04 02:41:04 +02:00
David Núñez 88c6309369 Add a log entry during tests to mark begin and end of each test 2019-08-04 02:41:04 +02:00
David Núñez f0c28f8c0c Action nucypher felix destroy should come earlier 2019-08-04 02:41:04 +02:00
David Núñez 965a473bb5 Make sure bare contracts are updated in deployers' upgrade tests 2019-08-04 02:41:04 +02:00
David Núñez 586f7edb89 Deployers now hold explicit list of deployment steps 2019-08-04 02:41:04 +02:00
David Núñez d82afa6d25 Minor touchups 2019-08-04 02:40:58 +02:00
David Núñez 23d84ae22b Passing --no-registry correctly to characters' config 2019-08-03 21:49:01 +02:00
David Núñez 031ba817f1 Setting download_registry=False in test fixtures 2019-08-03 21:49:01 +02:00
derekpierre 3424ff6dc9 Update deployer class property to be more descriptive - "number_of_deployment_transactions" 2019-07-29 14:53:27 -04:00
derekpierre f4327e821e Added the ability for per-deployment step progress updates since these steps can take a long time.
It is worth noting that only progress is updated for individual steps - the printing of the receipt confirmation to the console is not done until all receipts (from the inidividual step) are received by the deployer.
Added unit tests for progress updates.
2019-07-29 14:53:27 -04:00
David Núñez 1bd2aae362
Adapt Ursula CLI tests to being asked for worker account password 2019-07-29 11:27:14 -07:00
David Núñez 8dcf5a799d
Remove second stamp substantiation. Fix #1091 2019-07-29 11:27:14 -07:00
David Núñez ca732b5a50
Add test_transfer_tokens to nucypher-deploy tests. Remove unused stuff. 2019-07-29 11:27:14 -07:00
Kieran Prasch 6392c1f42a
Do no ask for client passwork in stake CLI when using hw wallet flag, or dev chain is auto detected. 2019-07-26 10:15:34 -07:00
Kieran Prasch d8e6486283
Split keyring password collection into two functions and implement in CLI; Provides interactive account selection for Alice. 2019-07-26 10:14:41 -07:00
Kieran Prasch 2dd3e92868
Shortens CLI flag names to --provider and --teacher. 2019-07-26 10:14:41 -07:00
David Núñez a9f5c4a12b Implement and test nucypher stake detach-worker 2019-07-26 14:08:01 +02:00
Kieran Prasch 27fc89d106
Ensure CLI painting implements emitters; Emitter logic for stakeholder CLI. 2019-07-25 15:19:44 -07:00
Bogdan Opanchuk 0ce9458bf0
Create a console emitter only once (in NucypherClickConfig) and propagate it everywhere 2019-07-25 15:19:42 -07:00
Bogdan Opanchuk 3e17cd7c74
Remove duplicate options, move shared options definition and processing to NucypherClickConfig 2019-07-25 15:18:29 -07:00
Bogdan Opanchuk b473c0f4bd
Hide registering/unregistering observers and Sentry init inside utilities/logging
Also add a check that Sentry SDK is only initialized once
2019-07-25 15:18:29 -07:00
Kieran Prasch 9bca91d97d
Deploy CLI Touch Ups (Tested on local private chain). Restore Syncing TImeout. Mock ChainId RPC Endpoint in some client integration tests. 2019-07-25 15:18:29 -07:00
Kieran Prasch 30aa51c1f2
Mock to_config_file briefly to avoid writing to the default config root. 2019-07-25 15:18:29 -07:00
Kieran Prasch c4f14cb1f0
Deprecates funding account and account creation options. Touch up stake CLI. 2019-07-25 15:18:29 -07:00
Kieran Prasch 1b3e3e45e5
Respond to RFCs in PR #1111: Remove deployment transaction gas limit. 2019-07-25 15:18:29 -07:00
David Núñez 22166d0242
Fix bug in UserEscrowDeployer tests 2019-07-25 15:18:29 -07:00
David Núñez e5d91632b2
Adapt deployers and tests to handle receipts, not tx_hashes 2019-07-25 15:18:29 -07:00
David Núñez 2d383ba41c
Once per module, session_testerchain restores balance of accounts, at expense of coinbase ¯\_(ツ)_/¯ 2019-07-25 15:18:29 -07:00
David Núñez e60bbd2332
Use session_testerchain in actors tests. Let's start with Investigator 2019-07-25 15:18:29 -07:00
David Núñez c156437bbe
First draft of Investigator test 2019-07-25 15:18:29 -07:00
David Núñez 9899148b17
Get on-chain staking parameters with StakingEscrowAgent 2019-07-25 15:18:29 -07:00
David Núñez d317a7d1b0
Add missing AdjudicatorAgent assertion in test_deploy_cli 2019-07-25 15:18:29 -07:00
David Núñez 718a5244dc
PolicyAgent --> PolicyManagerAgent 2019-07-25 15:18:29 -07:00
David Núñez 1a90164a7b
Improve PolicyManagerDeployer tests. Adds upgrade & rollback 2019-07-25 15:18:29 -07:00
David Núñez 7030937629
Extract common fixtures for deployers tests 2019-07-25 15:18:29 -07:00
David Núñez 77b311ff40
Revamp of StakingEscrowDeployer tests. Add upgrade & rollback tests 2019-07-25 15:18:29 -07:00
David Núñez 6ca6c4cbcc
Testing failed init of StakingEscrowAgent due to contract not deployed 2019-07-25 15:18:29 -07:00
David Núñez 1e431741e3
Reusable, session-scoped testerchain PoC: Deployers test time down 37% 2019-07-25 15:18:29 -07:00
David Núñez 2b8ec61556
Restore initial design of UserEscrowProxy.deploy() 2019-07-25 15:18:29 -07:00
David Núñez f100d39630
"Deployer" actor is now called "DeployerActor", to avoid confusion with deployers 2019-07-25 15:18:29 -07:00
David Núñez 434bb7072a
Fix error in test_user_escrow_deployer (see #1106) 2019-07-25 15:18:29 -07:00
David Núñez cef7e17279
UserEscrowProxyDeployer was incorrectly deploying a new Linker each time
New behavior is to look first for an existing Linker, and just in case it's not found, deploy it.
2019-07-25 15:18:29 -07:00
David Núñez f4325520dd
Fixtures can't use @pytest.mark.usefixtures
See warning in https://docs.pytest.org/en/latest/fixture.html#using-fixtures-from-classes-modules-or-projects
2019-07-25 15:18:29 -07:00
Kieran Prasch 017aba3743
Updates estimate gas with interactive deployment painting and Secrets namedtuple. 2019-07-25 15:18:29 -07:00
Kieran Prasch 4ee8c70860
Respond to RFCs in PR #1056. 2019-07-25 15:18:29 -07:00
Kieran Prasch 0b52cd2c74
Routes Ursula keyring attchment by federated/decentralized mode. 2019-07-25 15:18:29 -07:00
Kieran Prasch c8a95fba30
Skip transfer of rewards back to funding account for now. 2019-07-25 15:18:29 -07:00
Kieran Prasch c0f166e56a
Fix keyring checksum address multiple kwarg passing, add withdraw of inflation rewards to specified account or funding account. Touch up reward collection assertions. 2019-07-25 15:18:29 -07:00
Kieran Prasch 7508dc24c3
Use mocked blockchain interface connection within CLI subprocesses in two tests. 2019-07-25 15:18:29 -07:00
Kieran Prasch f947e6f747
Extracts manual staker and worker fixtures, Fixes incorrect address in to/from UrsulaConfiguration; Attempting to fix reward collection CLI integration tests. 2019-07-25 15:18:29 -07:00
Kieran Prasch 4b9b5f0559
Respond to RFCs in PR #1056; Test and CLI touch-ups. 2019-07-25 15:18:29 -07:00
Kieran Prasch fd5e5b236c
Adds CLI controls for inflation v. policy reward collection, extracts deployer action. 2019-07-25 15:18:29 -07:00
Kieran Prasch 2e70aebd01
Bug Fix: Functional inflation reward collection; Refactors internal stakeholder stake tracking 2019-07-25 15:18:29 -07:00
Kieran Prasch b83f8f9595
Move deployment secrets named tuple to Deployer and implement it. 2019-07-25 15:18:29 -07:00
Kieran Prasch 879afef6a7
Restore Federated CLI functionality; Refactor CLI lifecycle integration testing to implement --work-address 2019-07-25 15:18:29 -07:00
Kieran Prasch 28c1b39845
post #1029 rebase touch ups. 2019-07-25 15:18:29 -07:00
Kieran Prasch 73f606a31d
Restores staking CLI tests post #1029 via Stakeholder API. 2019-07-25 15:18:29 -07:00
Kieran Prasch cf0fd49008
Functional stakeholder persistence via CLI, Implements software-keyring entrypoints for StakeHolder; geth deploy integration testing. 2019-07-25 15:18:29 -07:00
Kieran Prasch 17aa2edd9f
Update ursula CLI tests to use new stake entry points 2019-07-25 15:18:29 -07:00
Kieran Prasch 7b16196765
Adds integration test for creating new geth accounts over RPC clients. 2019-07-25 15:18:29 -07:00
Kieran Prasch 362aff4824
Respond to RFCs in PR #1064 - Staker to/from blockchain, @michwill's funding account recipt fix; Touch Ups. 2019-07-25 15:18:29 -07:00
Kieran Prasch f7d780639d
BYOK for stakeholder and worker - Passing collect inflation reward test. 2019-07-25 15:18:29 -07:00
Kieran Prasch 13ed3501dc
xAdvance Stakeholder rewards integration testing. 2019-07-25 15:18:29 -07:00
Kieran Prasch e1cb849a3a
Improve Stakeholder API tests. 2019-07-25 15:18:29 -07:00
Kieran Prasch 7006891313
Updates stakeholder to used unified BlockchainInterface API 2019-07-25 15:18:29 -07:00
Kieran Prasch 3953da73ad
Detailing StakeHolder actions 2019-07-25 15:18:29 -07:00
Kieran Prasch d7b03de176
Second daraft of StakeHolder including JSON config. 2019-07-25 15:18:29 -07:00
Kieran Prasch 2e26f5753f
Respond to further RFCs in PR #1092.
Apply suggestions from code review

Co-Authored-By: David Núñez <david@nucypher.com>
2019-07-15 12:21:12 -07:00
Kieran Prasch 16e464fff5
Bug Fix: Allow TransactingPower to use cached password at activation time - credit to @cygnusv. 2019-07-15 12:06:44 -07:00
Kieran Prasch 6326340151
test touch-up. 2019-07-15 12:06:44 -07:00
Kieran Prasch 118262a9f4
Make accomodations for geth managed wallets (#1117) in TransactingPower. 2019-07-15 12:06:44 -07:00
Kieran Prasch 959c3dc35f
Ensure powerup activates in adjudicator agent and contract tests. 2019-07-15 12:06:44 -07:00
Kieran Prasch 70803d3e22
Post rebase renames. 2019-07-15 12:06:44 -07:00
Kieran Prasch f1cabadd8c
Improves TransactingPower unit and integration test coverage + Adjustments and touch ups to suit. 2019-07-15 12:06:44 -07:00
Kieran Prasch 56f4ec1844
Handle TransactingPower activation in estimate_gas.py 2019-07-15 12:06:44 -07:00
Kieran Prasch a5aef6f030
Manually call connect in client tests. 2019-07-15 12:06:44 -07:00
Kieran Prasch 7bb4c55e5c
Use TransactingPower.activate in Actor/Agent tests. 2019-07-15 12:06:44 -07:00
Kieran Prasch 98c04d1738
Remove nucypher deploy destroy-registry 2019-07-15 12:06:44 -07:00
Kieran Prasch 688572d5d3
Allows CLI-made characters to connect their blockchain interface through consuming the TransactingPower. 2019-07-15 12:06:44 -07:00
Kieran Prasch cda052b710
Handle being consumed, validate 'from' field in RPC tx requests. 2019-07-15 12:06:44 -07:00
Kieran Prasch dc22bdede0
post rebase BlockchainPower -> TransactingPower 2019-07-15 12:06:44 -07:00
Kieran Prasch e9a3fe7878
Powerups can be 'activated' - Returning to a single-account-based TransactingPower. 2019-07-15 12:06:44 -07:00
Kieran Prasch b9fa6310be
Basic TransactingPower functional test. 2019-07-15 12:06:44 -07:00
Kieran Prasch d1980f9662
Remove Trezor Imports and presence in setup.py; Deprecate libusb1 suport in-test. 2019-07-11 16:59:23 -07:00
tuxxy a21b01da18 Remove more deprecated device code 2019-07-11 15:39:06 -06:00
tuxxy 09f3370c1b Hack usb1 import to work on CI machines without libusb 2019-07-11 15:39:06 -06:00
tuxxy f107980c25 Add tests for device CLI skeleton 2019-07-11 15:39:06 -06:00
tuxxy c8e3a63a98 Move mock_trezorlib et al to conftest in tests.cli 2019-07-11 15:39:06 -06:00
tuxxy 44c218743b Move tests from wallet to device 2019-07-11 15:39:06 -06:00
tuxxy e4182b2b05 Add test for _reset and other unimplemented methods 2019-07-11 15:39:06 -06:00
tuxxy 438fe9ba7d Add test for call_handler_decorator and fix method declarations 2019-07-11 15:39:06 -06:00
tuxxy 632aa8c3e6 Add passing tests for trezor backend and change imports to work with mocking 2019-07-11 15:39:06 -06:00
David Núñez afbcff6b04 Introduce make_ursula_for_staker test utility, instead of activate_idle_staker fixture 2019-07-04 11:23:51 +02:00
David Núñez b4790ce976 Fix estimate_gas script: Adjudicator contract was already deployed. 2019-07-04 11:23:51 +02:00
David Núñez b301f02372 #1090: Use N=3 in test_blockchain_ursulas_reencrypt to reduce failures 2019-07-04 11:23:51 +02:00
David Núñez ad2d63fd5e Touchups to test_staker 2019-07-04 11:23:51 +02:00
David Núñez 9d0089102e Some improvements to PolicyManager and StakingEscrow deployer tests. See #1102 2019-07-04 11:23:51 +02:00
David Núñez f77c46bbe4 Basic tests of AdjudicatorDeployer and slashing with AdjudicatorAgent. 2019-07-04 11:23:51 +02:00
David Núñez 051bbbc02f Use testerchain.client.sign_message() in tests for EIP191 signatures 2019-07-04 11:23:51 +02:00
David Núñez f43365ca93 First stub of AdjudicatorAgent tests 2019-07-04 11:23:51 +02:00
David Núñez 31a40ab86c Deploy Adjudicator and instantiate AdjudicatorAgent singleton in agency fixture 2019-07-04 11:23:51 +02:00
David Núñez fd3b8603fa Touchups in some tests 2019-07-04 11:23:50 +02:00
David Núñez 5b530430dd Draft test for learning about worker with insolvent Staker. See #1075 2019-07-04 11:23:50 +02:00
David Núñez 3cdeba3c0b First stub of non-staking staker and worker fixtures. Closes #1035 2019-07-04 11:23:50 +02:00
David Núñez f6fac7c073 Adapting other adjudicator tests and gas estimation to latest changes 2019-07-04 11:23:50 +02:00
David Núñez 28eb4a16f1 Use blockchain_ursulas in test_adjudicator 2019-07-04 11:23:50 +02:00
David Núñez 1fbd679ff7 Include Ursula's identity evidence in WorkOrder and Evidence for slashing 2019-07-04 11:23:50 +02:00
David Núñez e53415e8b0 On-chain verification of EIP191 signatures now supports versions 0 and E 2019-07-04 11:23:50 +02:00
David Núñez ba5da0dfec Verify EIP191 signatures in SignatureVerifier
Not really an EIP191-compliant method, as it only supports version E, but this is what we currently use in nucypher
2019-07-04 11:23:50 +02:00
Kieran Prasch 420c30f079 Respond to RFCs in PR #1089 2019-07-04 11:23:50 +02:00
Kieran Prasch 46e424d49d Pretending to consume BlockchainPower in actor and agent tests. 2019-07-04 11:23:50 +02:00
Kieran Prasch 68b8a2735d Returning to a single-account BlockchainPower;TODO annotations for BlockchainPower. 2019-07-04 11:23:50 +02:00
Kieran Prasch 552fc461fc Updates estimate gas with new Testerchain API, completely removes calls to .transact() in nucypher nameapce. 2019-07-04 11:23:50 +02:00
Kieran Prasch bb3cce8465 Mock registry reads from disk in Felix CLI integration testing. 2019-07-04 11:23:50 +02:00
Kieran Prasch ebb6b422ac Add the ability to save an in-memory registry to disk. 2019-07-04 11:23:50 +02:00
Kieran Prasch 19d30b355c Adapting Felix to consume BlockchainPower at init-time. 2019-07-04 11:23:50 +02:00
Kieran Prasch 2ccc46b86a Refactor contract registry CLI integration testing to implement condensed Blockchain API. 2019-07-04 11:23:50 +02:00
Damon C aebac62dd8 remove most other direct blockchain.w3 references 2019-07-04 11:23:50 +02:00