Commit Graph

3626 Commits (44d36df40f878800ceb070365607f5506c1cb995)

Author SHA1 Message Date
Kieran Prasch 24b4b33265 post-rebase cleanup 2022-11-17 15:25:00 +00:00
Kieran Prasch ff3f414331 Sort fixtures that compile to localized acceptance/unit conftest respectively; Faster unit test suite. 2022-11-17 15:22:55 +00:00
Kieran Prasch fbfe0c8bc6 Fixturize test module constants 2022-11-17 15:22:53 +00:00
Kieran Prasch 38e8259e37 Cleanup test conditions data 2022-11-17 15:20:43 +00:00
Kieran Prasch 15b98e5479 de-duplicate condition fixture definition 2022-11-17 15:20:43 +00:00
James Campbell b7f23c7c16 Investigate types changing in condition parameters 2022-11-17 15:20:41 +00:00
derekpierre 7a389e2c39 Improve OperatorBondedTracker coverage. 2022-11-16 12:28:17 -05:00
derekpierre b2f71dd5c6 Add more conditions/lingo tests. 2022-11-16 12:28:17 -05:00
derekpierre dc488624e8 Improve testing for ConditionLingo, utils. Remove unceessary check for function_abi. 2022-11-16 12:28:15 -05:00
derekpierre ceee8bd2e9 Add tests for evaluate_condition() utils method. Fix incorrect type in method. 2022-11-16 12:27:12 -05:00
Kieran Prasch 6ca73c2849 remove lisence header from tests 2022-11-16 13:27:47 +00:00
KPrasch 0f27f974b3
Merge pull request #3014 from theref/functionAbi
Resolve `function_abi` AFTER condition is initialized
2022-11-15 16:29:53 +00:00
James Campbell bdaaafd9c3 Fix newsfragment and ensure conditions test has a valid method 2022-11-15 14:58:56 +00:00
James Campbell 4c5dadbad4 Resolve `function_abi` AFTER condition is initialized
Fixes #3012

Problem
-------
- when specifying a `standard_contract_type`, the `function_abi` is resolved
  immediately
- when this condition is serialized, it contains both `standard_contract_type`
  and `function_abi`, which we are trying to prevent

Solution
--------
- call `_resolve_abi` after the condition is initialized
2022-11-15 14:47:11 +00:00
derekpierre 47a8105509 Update coverage configuration to allow for better categorization of coverage reporting.
Fix coverage upload methodology.
Temporarily reduce python matrix until testing is completed.
2022-11-14 18:07:53 -05:00
derekpierre 853fa5406c Fixed bug regarding replacement of context variable when value is 0.
Added tests for return value test key as it pertains to tuples.
2022-11-14 15:50:18 -05:00
James Campbell 656ff8071c Improve error types raised by Return Values 2022-11-14 18:27:48 +00:00
James Campbell 775d890d3b Allow returnValueTest key to be None in serialization 2022-11-14 14:32:29 +00:00
Kieran Prasch 2c5db8e1f8 snake case t staking data fixture. 2022-11-14 14:32:29 +00:00
Kieran Prasch 38283661b1 Strict typing for _resolve_abi; Simplifies enforcement of single-function ABI for condition definition. 2022-11-14 14:32:27 +00:00
James Campbell 48cc132580 Use web3 to find functions from contract abi in return value test 2022-11-14 14:32:13 +00:00
James Campbell 52038237ad Add test to ensure eval can't run on context variable in return key 2022-11-14 14:32:13 +00:00
James Campbell e36b958912 Allow return value to be tuple and use modern `isinstance` over `type` 2022-11-14 14:32:13 +00:00
James Campbell 417c8b0fd4 Fix mocking of tester chain 2022-11-14 14:32:13 +00:00
James Campbell beec9958d1 Add test for method not in standard contract abi 2022-11-14 14:32:13 +00:00
James Campbell 6b2b072e12 Include tests for handling list index in ReturnValue 2022-11-14 14:32:13 +00:00
James Campbell b6f422ff4e Add basic tests for Return Value key 2022-11-14 14:32:10 +00:00
James Campbell 01d414b79a Fix parsing of function abi from standard contracts 2022-11-14 14:31:54 +00:00
James Campbell 65fede079c Ensure tests use valid condition chain id 2022-11-14 14:31:54 +00:00
James Campbell 3bbbc7b262 Fix function abi schema to be a dict 2022-11-14 14:31:54 +00:00
James Campbell 4ce6f72695 Add basic test for custom abi condition 2022-11-14 14:31:54 +00:00
Kieran Prasch 961faf04f7 Regression test for unintentional reencryption upon falsy conditions. 2022-11-11 17:39:58 +00:00
derekpierre fcafc627d6 Add test for NoConnectionToChain scenario when verifying conditions. 2022-11-10 09:50:41 -05:00
derekpierre 08bf1a0515 Code cleanup based on RFCs from #3007. 2022-11-10 09:16:36 -05:00
derekpierre 1a56decb1a Move condition-related exceptions to an exceptions module. 2022-11-09 19:20:17 -05:00
Kieran Prasch cb434e1a03 RFC: Do not mutate user-supplied condition context. 2022-11-09 13:32:49 +00:00
Kieran Prasch 19d3f16635 chain name -> chain id in test data. 2022-11-09 13:32:49 +00:00
Kieran Prasch 77e0f2a1d4 Reduce permitted chains to a tuple. 2022-11-08 02:03:25 +00:00
Kieran Prasch 812d0a1b62 Use function ABI only for custom contract condition fixtures. 2022-11-07 12:51:38 +00:00
Kieran Prasch d2dcdb9230 Introduce dynamic multi-chain support; enforce condition chain ID as an int. 2022-11-07 12:51:31 +00:00
KPrasch 785a59663b
Merge pull request #2993 from KPrasch/development
[WIP] Export reusable pytest fixtures and cleanup
2022-11-02 19:17:52 +01:00
derekpierre 8126116cb5 Fix failing contracts tests in gh action. 2022-11-02 12:22:44 -04:00
Kieran Prasch a405cbb683 Remove Ibex and Oryx from nucypher 2022-11-02 13:25:43 +00:00
Kieran Prasch db2aec026d use pytest-nucypher directly 2022-10-31 20:16:35 +00:00
Kieran Prasch 4e2bede69d Promote tests/mock and tests/utils to imporatable packages 2022-10-31 20:16:35 +00:00
Kieran Prasch f3dd8ec870 Remove unused stakeholder fixtures 2022-10-31 20:16:35 +00:00
Kieran Prasch 42d8e7d5de pytest11 entry points to export fixtures 2022-10-31 20:16:35 +00:00
Kieran Prasch 4a4e8dd594 Finishes removal of control package, it's usages and test utils 2022-10-27 22:22:46 +01:00
Kieran Prasch 73b6b8d15d Removes WebController and WebEmitter 2022-10-27 21:14:34 +01:00
Kieran Prasch d1269d1507 atomically extricate porter to nucypher/nucypher-porter 2022-10-27 17:26:32 +01:00
Kieran Prasch 24a5c5e035 Rmeoves Clef and Trezor signer tests 2022-10-27 10:13:18 +01:00
Kieran Prasch 1b040cf25f Removes db filepath configurations 2022-10-27 10:12:17 +01:00
Kieran Prasch febc6093c1 Removes lmdb datastore usage 2022-10-27 10:12:17 +01:00
Kieran Prasch 646246ae3f delete datastore modules 2022-10-27 10:12:17 +01:00
Kieran Prasch 17d3888c4d Remove unused specifications, consolidate the remaining ones for use by porter alone. 2022-10-26 13:55:38 +01:00
Kieran Prasch ba22a98db5 Removed RPC and web controller acceptance tests for characters 2022-10-25 20:01:54 +01:00
Kieran Prasch 2c4634acea Removes RPCController and Web controller functionality 2022-10-25 17:35:25 +01:00
Kieran Prasch 07bf78d9ff Removes Web and RPC controller entities 2022-10-25 17:35:25 +01:00
Kieran Prasch 52af298af4 Removes enrico CLI command 2022-10-25 17:35:25 +01:00
Kieran Prasch ccbb66497a Additional deprecation of alice/bob CLI commands. Consolidates ursula CLI config tests. 2022-10-25 16:19:21 +01:00
Kieran Prasch 8f015aa690 Accomodate deprecation of Alice, Bob, and Card CLI in internal APIs and tests. 2022-10-21 10:27:54 +01:00
Kieran Prasch ec07eee6d2 Removes Alice, Bob, and Card CLI 2022-10-18 20:22:25 +02:00
Kieran Prasch 31fb711297 post-rebase import fix 2022-10-18 20:17:42 +02:00
Kieran Prasch baac304d30 Removal of ConditionLingo bytes serialization assertion 2022-10-18 20:10:38 +02:00
Kieran Prasch 5fd04472ab Support for nucypher-core Address and updates ReencryptionResponse function signature 2022-10-18 20:10:38 +02:00
Kieran Prasch 9ae4d5c966 to/from wei method updates for web3 v6+ support 2022-10-18 20:10:37 +02:00
Kieran Prasch aa05019a68 Handle rust-native conditions newtype just-in-time; Co-existing with ConditionsLingo 2022-10-18 20:09:26 +02:00
derekpierre 19dfcd2030 Minor refactor to allow for easier testing in the future. 2022-10-18 20:09:26 +02:00
derekpierre b7f1a1085a Apply RFCs from #2980. 2022-10-18 20:09:26 +02:00
derekpierre 15819cde61 Time condition in test should use integers instead of strings. 2022-10-18 20:09:25 +02:00
derekpierre 27d6112de1 Exception occuring during RPC call is propagated back to the caller as error message.
Better exception handling by condition objects either at creation or verification - including some refactoring of RPCCondition/ContractCondition.
Added/updated unit tests.
2022-10-18 20:09:25 +02:00
derekpierre c7e16088fb Simple test that shows a contract call failure not properly handled during condition verification.
Code cleanup.
2022-10-18 20:09:25 +02:00
derekpierre e3446303b7 Remove support for None in ReturnValueTest - solidity has no concept of None/null so not needed. We can revisit later.
Updated condition tests to use 'is True' or 'is False'
Added SubscriptionManager test to show condition test whose contract call returns a struct and that the struct can be tested for equality/inequality.
2022-10-18 20:09:25 +02:00
derekpierre d0d71944b9 Remove __eq__ from ReturnValueTest obj - only needed for tests. 2022-10-18 20:09:25 +02:00
derekpierre 658a4470a2 Apply RFCs from #2974.
Co-authored-by: KPrasch <kieran@nucypher.com>
2022-10-18 20:09:25 +02:00
derekpierre 96c829d5a6 ReturnValueTest can now take any valid value type (including None) for comparison - this provides flexibility based on the result of a contract call.
String value types need to be quoted, but context variables are a special case of strings that don't need to be.
Added tests.
2022-10-18 20:09:25 +02:00
derekpierre d158221794 Add '!=' comparator as a valid comparator for ReturnValueTest.
Updated tests.
2022-10-18 20:09:25 +02:00
derekpierre 5baac258c4 Make SubscriptionManager condition tests pass now that the facilities to make it pass are now available. 2022-10-18 20:09:25 +02:00
derekpierre fb257cba7d Context variables used in ReturnValueTest were not being replaced - needed for the NFT use case. Modified the code to support it.
Updated ERC721 condition tests to use an actual ERC721 contract with a minted NFT.
Added ERC721 tests for balanceof.
2022-10-18 20:09:25 +02:00
derekpierre 0379ce7114 Parameter types for ContractConditions do not have to be strings - we need to be careful with types when checking whether a parameter is a context variable or not.
ERC721 ownerOf function takes an int and not a string which caused failures.
Added/updated tests.
2022-10-18 20:09:25 +02:00
David Núñez 36e5368f3c Add more basic unit tests for ReturnValueTest 2022-10-18 20:09:25 +02:00
David Núñez 7219c749ba Sanitize input to constructor of ReturnValueTest 2022-10-18 20:09:25 +02:00
David Núñez 56af2bf27f Basic unit test for ConditionLingo 2022-10-18 20:09:25 +02:00
David Núñez 7c976751b0 Playing around with malicious input that exploits the use of eval()
This test creates an empty file in the filesystem when evaluating a condition. This shouldn't happen! We fix it later in this PR by using the ast module
2022-10-18 20:09:25 +02:00
derekpierre ed6227ad09 Code cleanup and additional tests.. 2022-10-18 20:09:25 +02:00
derekpierre e5fb972d2a Initial work for propagating errors that occur during Porter.retrieve_cfrags and communicating them back to the caller in Porter's response. 2022-10-18 20:09:25 +02:00
derekpierre f972c72470 Code cleanup to condition context variable - follow up RFCs from #2966. 2022-10-18 20:09:25 +02:00
derekpierre a4b9ef62d1 Improve error handling. 2022-10-18 20:09:25 +02:00
derekpierre f6721f7b81 Don't let context variable exceptions leak into ReencryptionCondition class. 2022-10-18 20:09:25 +02:00
derekpierre be175448f4 Perform actual validation of context provided for ":userAddress" context variable.
Added tests.
2022-10-18 20:09:25 +02:00
derekpierre 8c7f9f5a08 Tests updated since flask 2.2.2 has a different way of doing things. 2022-10-18 20:09:25 +02:00
derekpierre 7e8d9eb7f1 Modify tests to use context instead of python parameters. Add test for use of user customized context variable.
Cleanup some test code.
2022-10-18 20:09:25 +02:00
derekpierre 6d35b5754e Simple implementation for `:userAddress` context variable pre-processing.
Allow for user customized context variable - fallback to key-value pairing in context.
2022-10-18 20:09:25 +02:00
derekpierre f164cfb3a9 Clenup of tests regarding `context`. Minor fix for using lists for ConditionLingo conditions instead of tuple. 2022-10-18 20:09:25 +02:00
Kieran Prasch 0d55ed091b w3.eth.web3 -> w3.eth.w3 2022-10-18 20:09:25 +02:00
derekpierre 31e961d458 Fix randomly failing test (regression) - context is not a required parameter. 2022-10-18 20:09:25 +02:00
derekpierre 46b40dcc57 Update format of `context` for tests. 2022-10-18 20:09:25 +02:00
derekpierre dc52a58590 Allow for optional enforcement of type safety for the JSON field. The Porter retrieval endpoint will enforce a dictionary type for the `context` parameter..
Updated tests.
2022-10-18 20:09:25 +02:00
derekpierre d77fac4d39 Allow context to be specified as JSON and not base64 JSON.
Remove retrieve tests that utilize url parameters since it is a POST endpoint.
2022-10-18 20:09:25 +02:00
derekpierre 15cb062940 Added some tests that provide a context for re-encryption. 2022-10-18 20:09:25 +02:00
derekpierre 40e2c5c0ea Initial work to have Porter provide 'context' for condition-based re-encryption when applicable. 2022-10-18 20:09:25 +02:00
KPrasch cd11a414bc Apply suggestions from code review
Co-authored-by: Derek Pierre <derek.pierre@gmail.com>
2022-10-18 20:09:25 +02:00
Kieran Prasch e450179e23 Use none as the 'free' gas post-london 2022-10-18 20:09:25 +02:00
Kieran Prasch 47a7780082 Skip JSON endpoint test 2022-10-18 20:09:25 +02:00
Kieran Prasch 0acfc7e381 Support for web3.py v6 2022-10-18 20:08:52 +02:00
Kieran Prasch 0608608460 Capsule filtration bugfixes 2022-10-18 20:08:52 +02:00
Kieran Prasch b7145c0ab4 Remove core shims; Refactor for mk-embedded conditions. 2022-10-18 20:08:51 +02:00
Kieran Prasch 0aea2256a2 bird run 2022-10-18 20:07:58 +02:00
derekpierre 8a482d9389 Ensure delimiter is used as a single byte, and not a bunch of 0 bytes. Fixed test. 2022-10-18 20:07:58 +02:00
Kieran Prasch 72c6bd5295 Refactoring for interop with nucypher-ts 2022-10-18 20:07:58 +02:00
Kieran Prasch 74a0465cf3 Track lingos and capsules as packets; First working e2e flow. 2022-10-18 20:07:58 +02:00
Kieran Prasch 249c74eb31 Updates tests 2022-10-18 20:07:58 +02:00
Kieran Prasch d9f67f30ce Install nucypher core shims for conditions 2022-10-18 20:07:57 +02:00
Kieran Prasch 2948a198c0 Unit and acceptance tests for condition serialization and evaluation 2022-10-18 20:07:10 +02:00
Kieran Prasch 8d2045a118 conditions expression and evaluation prototype 2022-10-18 20:07:10 +02:00
Kieran Prasch 9e763dad86 expand test vectors 2022-10-18 20:07:10 +02:00
Kieran Prasch 5d4d409b82 Consolidates evm based reencryption conditions to eventually encapsulate payment methods; Reduce scope of conditions to a module 2022-10-18 20:07:10 +02:00
Kieran Prasch 58f4b6e50a Begin sanitization of return test comparators 2022-10-18 20:06:39 +02:00
Kieran Prasch 34bd940976 Establish unit tests for conditions 2022-10-18 20:06:39 +02:00
KPrasch f832157a5c
Merge pull request #2915 from KPrasch/metrics
Grant avalability metrics on polygon/mainnet
2022-10-04 15:53:53 +02:00
derekpierre e293eb1fae Fix failing test. 2022-07-04 11:24:26 -04:00
derekpierre eb9329e872 More work on the revamp of prometheus metrics collection. Reorganization/renaming of some metrics, added some metrics, fixed tests etc. 2022-07-04 11:06:09 -04:00
derekpierre 35e651a7a5 Fix failing Porter tests. 2022-06-27 16:48:14 -04:00
James Campbell 49441ec104 Fix acceptance tests for payment provider uri 2022-05-06 17:35:29 +03:00
James Campbell aff2f7bb2e Add network_type to network selection in cli to differentiate between eth and polygon 2022-05-03 09:52:46 +03:00
derekpierre 4a9c7c0385 Allow prometheus parameter but show error message about current lack of support. It will be allowed once functionality is revamped.
Modify prometheus associated acceptance test.
2022-04-28 09:19:00 -04:00
derekpierre 871094c548 Respond to RFCs in #2908. 2022-04-13 11:05:17 -04:00
derekpierre 7689b446a7 Add web controller tests for handling of WorkerPoolException.
Improve efficiency of Porter tests by reducing execution timeout.
2022-04-13 11:05:03 -04:00
derekpierre 0549a009ac Fix failing concurrency test. 2022-04-13 11:04:48 -04:00
Kieran Prasch 866d905a0a Updates grant avalability metrics script for use with polygon/mainnet 2022-04-11 16:00:12 -07:00
Kieran Prasch 2c0279ff35 fixes timing anomaly in ethereum test backend 2022-04-05 11:59:30 -07:00
Kieran Prasch 320e5bc4b3 test adjustments for london fork 2022-04-04 22:01:32 -07:00
derekpierre a8aa869c2d Ursula runs a background task, OperatorBondedTracker, which ensures that it shuts down if no the operator address is no longer bonded to a staking provider. 2022-03-25 10:38:48 -04:00
derekpierre 276b334941 Ensure that worktracker stops on first startup once operator is confirmed. 2022-03-24 20:31:04 -04:00
Kieran Prasch 18d24d1fe2 Responds to RFCs for PR #2873 2022-03-24 13:18:53 -07:00
derekpierre 5f6bee537c Enforce consistency of IP address and port when testing external ip utilities. 2022-03-23 11:43:35 -07:00
Kieran R. Prasch aad511ba30 test adjustments to handle policy registry, in-memory node storage and polygon mocks. 2022-03-22 15:54:36 -07:00
Kieran R. Prasch 99ac4693c2 Handle remote certificate mocks and storage in middleware. 2022-03-22 15:54:36 -07:00
Kieran Prasch ae79dfc6fb Handle SSL certificates inside middleware. 2022-03-22 15:54:36 -07:00
Bogdan Opanchuk 06be01be84 certificate_bytes was renamed to certificate_der 2022-03-13 16:56:09 -07:00
Bogdan Opanchuk 8428ae825a decentralized_identity_evidence was renamed to operator_signature 2022-03-13 16:38:59 -07:00
Bogdan Opanchuk b8199e37ee staker_address was renamed to staking_provider_address 2022-03-13 16:18:41 -07:00
KPrasch 1618bd2ced
Merge pull request #2850 from fjarri/address-derivation
Address derivation inside nucypher-core
2022-02-24 11:37:28 -08:00
Bogdan Opanchuk 5542057dc3 Fix old terminology 2022-02-23 23:43:19 -08:00
Bogdan Opanchuk fe28804657 decentralized_identity_evidence -> operator_signature 2022-02-23 23:43:19 -08:00
Kieran Prasch c809b69f9a Restoration of StakingEscrowDeployer and select tests; cleanup. 2022-02-21 17:23:26 -08:00
Kieran Prasch 73b238a587 Removes staking entities 2022-02-21 17:17:11 -08:00
Kieran Prasch d2852c9e71 Removes discrete staker modules 2022-02-21 17:08:05 -08:00
Bogdan Opanchuk aaa440c7fe Resolve the issue with obtaining the operator address in local/remote Ursulas 2022-02-20 23:36:00 -08:00
Bogdan Opanchuk 2e5dd70e51 nucypher-core had address parameter names normalized 2022-02-20 23:35:26 -08:00
Bogdan Opanchuk 687830bd4d Remove the dependency on coincurve 2022-02-20 23:35:26 -08:00
Bogdan Opanchuk 484f8b91e2 Use the worker address derived in nucypher_core 2022-02-20 23:35:26 -08:00
vzotova 236f32b438 Apply suggestions from code review #2871
Co-authored-by: derekpierre <derek.pierre@gmail.com>
2022-02-18 19:18:33 +03:00
vzotova 856abe4892 Renames `provider_uri` to `eth_provider_uri` 2022-02-18 11:27:15 +03:00
Kieran R. Prasch 2aae09f1e4 Respond to RFCs in PR #2862 2022-02-16 13:24:35 -08:00
vzotova a50b56de57 Fix bond cli and tests 2022-02-15 14:01:04 +03:00
Kieran Prasch 592229025f Check if an operator address is already bound to another staking provider if sp is unbound. 2022-02-14 12:04:49 -08:00
Kieran Prasch 5f3437091a Fast integration tests for bonding CLI using mocks. 2022-02-14 11:41:26 -08:00
Kieran Prasch 3c01f760c5 test stub for bonding CLI 2022-02-10 11:23:53 -08:00
vzotova 7c437b37b8 Removes `WorkLock` contract/agent/deployer and cli
Co-authored-by: Kieran Prasch <kieranprasch@gmail.com>
2022-02-10 20:19:21 +03:00
vzotova ecac8017ed Removes PolicyManager and StakingInterface 2022-02-09 14:24:26 +03:00
derekpierre b46432ab6d Purge Aragon/NuCypher DAO specific code. 2022-02-08 15:13:51 -05:00
Kieran Prasch 5014209eeb retire multisig tools 2022-02-08 11:11:22 -08:00
Kieran Prasch 62291021ba Respond to RFCs for PR #2857 Pt. II 2022-02-08 11:04:34 -08:00
Kieran Prasch 419e649ec7 Respond to RFCs for PR #2857 2022-02-08 11:04:34 -08:00
vzotova 1c90a5be8a Fix StakingEscrowDeployer + fix tests, update PREApplicationDeployer + add tests 2022-02-08 11:04:28 -08:00
Kieran Prasch ee2a5190e6 adjust tests 2022-02-08 11:04:27 -08:00
Kieran Prasch 3e35b87073 skip (and unskip) tests 2022-02-08 11:04:27 -08:00
Kieran Prasch 622ae3429a Removes PolicyManagerPayment 2022-02-08 11:04:27 -08:00
vzotova 0d716181b0 Fix pooling contract test and skip upgradeability test for now 2022-02-08 11:04:27 -08:00
derekpierre d442375e5f Cleanup of Porter tests to account for duration_periods no longer needed for sampling. 2022-02-08 11:04:27 -08:00
vzotova 2e09e61846 Move test_simplepre_ursula_worker_integration.py to actors/test_worker.py 2022-02-08 11:04:27 -08:00
vzotova 59785c0ab3 Fix contract tests after changing Economics 2022-02-08 11:04:27 -08:00
vzotova e6b5bda56d Fix time travel 2022-02-08 11:04:27 -08:00
vzotova f3bea94ac0 Tests for PRE app agent (copied from StakingEscrowAgent) 2022-02-08 11:04:27 -08:00
Kieran Prasch b193465f98 adjust tests 2022-02-08 11:03:50 -08:00
Kieran Prasch 9bbcfe399a Removes PolicyManager shims 2022-02-08 11:03:26 -08:00
Kieran Prasch fbf8d0fd1a Stake verification for node discovery 2022-02-08 11:03:26 -08:00
Kieran Prasch ec23c5177b Operator CLI 2022-02-08 11:03:09 -08:00
Kieran Prasch 1c34045a81 Prepares economics and deployment constants for use with threshold network. 2022-02-08 11:02:17 -08:00
Kieran Prasch 98f9e8d33b removes TStakingTest contract in favor of ThresholdStakingForPREApplicationMock 2022-02-08 11:02:04 -08:00
Kieran Prasch c62b01f1e8 bump multiversion test contract and SubscriptionManager pragma. 2022-02-08 11:02:04 -08:00
Kieran Prasch 0e148fbfa8 Skip tests 2022-02-08 11:02:02 -08:00
Kieran Prasch 34c79c7830 Require payment method for is_me Ursula and Alice. 2022-02-08 11:01:24 -08:00
Kieran Prasch b36debae5c Introduce PaymentMethod.Quote (calculate valid policy value for SubscriptionManager.createPolicy). 2022-02-08 11:01:24 -08:00
Kieran Prasch c6efd5fd06 Removes BlockchainPolicyAuthor. 2022-02-08 11:01:24 -08:00
Kieran Prasch bbc509910d Adjust tests to accommodate swapable payment methods. 2022-02-08 11:01:24 -08:00
Kieran Prasch ac1d4b5603 CLI supports payment method configuratiopn by Ursula and Alice. 2022-02-08 11:01:24 -08:00
Kieran Prasch fe36bf9d9d Introduce SubscriptionManager Deployer 2022-02-08 11:01:24 -08:00
Damon Ciarelli b9a467e136 cleanup, tests working; rename tests 2022-02-08 11:01:24 -08:00
Damon Ciarelli 2669cfdedd migrate to new role names in progress 2022-02-08 11:01:24 -08:00
Damon Ciarelli 32f8513ad7 Operator block until ready; Worker/actor/tracker refactor 2022-02-08 11:01:24 -08:00
Damon Ciarelli b241972b31 add live ursula test 2022-02-08 11:01:24 -08:00
Kieran Prasch ab2798d819 patch SimplePREApplicationDeployer for ruse in IRL. 2022-02-08 11:01:24 -08:00
Damon Ciarelli c1f66c0ef6 ursula pre_application_agent working; contract interactions required to run ursula. 2022-02-08 11:01:24 -08:00
Kieran Prasch 7e2f7da48a Stub for PREApplicationAgent integration tests. 2022-02-08 11:01:24 -08:00
Kieran Prasch 141b719db9 Mocked threhold staking interface. 2022-02-08 11:01:24 -08:00
Kieran Prasch 4136e740e8 PREApplicationDeployer 2022-02-08 11:01:24 -08:00
vzotova 33df782883 SimplePREApplication: worker -> operator 2022-02-08 11:01:24 -08:00
vzotova e461f2ff52 SimplePREApplication: renames operator to staking provider 2022-02-08 11:01:24 -08:00
vzotova a6c59ae02f StakingEscrow: renames operator to staking provider 2022-02-08 11:01:24 -08:00
vzotova d0917bd21e Apply suggestions from code review #2838
Co-authored-by: jMyles <justin@justinholmes.com>
2022-02-08 11:01:24 -08:00
jMyles 03556258c0 Slightly more legible if this comment is after the time travel. 2022-02-08 11:01:24 -08:00
jMyles 391dad2264 Clarifying two additional roles from the everyone_else pile. 2022-02-08 11:01:24 -08:00
vzotova 7ce5844105 Allow stake owner to bond worker 2022-02-08 11:01:24 -08:00
vzotova bfbf7faa8b Fix and tests for getActiveOperators 2022-02-08 11:01:23 -08:00
vzotova e4ff795d68 Tests for confirmation of worker address 2022-02-08 11:01:23 -08:00
vzotova 09b06a89b4 Tests for simple PRE app 2022-02-08 11:01:23 -08:00
vzotova ab6723ada3 Add one more way to setup vesting 2022-02-08 11:01:23 -08:00
vzotova 12755a563b Removes need to confirm merge before withdrawing 2022-02-08 11:01:23 -08:00
vzotova 9018b0d22c Apply suggestions from code review #2825
Co-authored-by: derekpierre <derek.pierre@gmail.com>
2022-02-08 11:01:23 -08:00
vzotova 8eb26ed1bf Allow to change operator for some cases 2022-02-08 11:01:23 -08:00
vzotova cdee46ba47 Fix after rebasing 2022-02-08 11:01:23 -08:00
Kieran R. Prasch c3827779b1 Rollback to solc v0.8.7 for platform compatibility 2022-02-08 11:01:23 -08:00
vzotova 3aa2e9b576 Methods to access Threshold token staking contract from StakingInterface 2022-02-08 11:01:23 -08:00
vzotova 9fb51c6f29 Tests for new methods in StakingEscrow 2022-02-08 11:01:23 -08:00
vzotova 02de9e7563 Adjust tests for contracts 2022-02-08 11:01:23 -08:00
vzotova 5ced61f337 Solidity 0.7.x -> 0.8.x, integration StakingEscrow with Threshold Network, updated OpenZeppelin library 2022-02-08 11:01:23 -08:00
vzotova 4dda3141ed Apply suggestions from code review #2831
Co-authored-by: David Núñez <david@nucypher.com>
2022-02-08 11:01:23 -08:00
vzotova c454c0cc5e `totalStakedForAt` and `totalStakedAt` return 0 except when upgrading, removes snapshots flag 2022-02-08 11:01:23 -08:00
vzotova 01dd86bd79 Remove check for totalStakedForAt and totalStakedAt in StakingEscrow.verifyState 2022-02-08 11:01:23 -08:00
vzotova dccc76418a Some fixes for deployers and tests 2022-02-08 11:01:23 -08:00
vzotova ff2802c399 Fix upgradeability and tests 2022-02-08 11:01:23 -08:00
vzotova 001913c380 Adjust several contract tests 2022-02-08 11:01:23 -08:00
vzotova 08d56157ee Draft of StakingEscrow for stop inflation 2022-02-08 11:01:23 -08:00
Kieran Prasch 8052585d2a Removes Felix 2022-02-07 12:11:28 -08:00
KPrasch e8f174e6f0
Merge pull request #2828 from xela7/keystore-generate-mnemonic-id
Keystore.generate can return optional mnemonic words
2022-01-14 12:32:43 -08:00
Bogdan Opanchuk 01179c5df5 [temporary] Check to see how long do performance tests take now 2022-01-09 15:25:04 -08:00
Bogdan Opanchuk a276cfec25 Disband umbral_adapter 2022-01-08 15:29:22 -08:00
Bogdan Opanchuk 8cb8f16370 Clean up Python parts moved to Rust
And some unused imports
2022-01-08 15:29:22 -08:00
Bogdan Opanchuk e5620c3155 Changes to make the tests pass 2022-01-08 15:29:22 -08:00
Bogdan Opanchuk 02bb2e2f76 Import the standalone package instead of nucypher.core 2022-01-08 15:29:22 -08:00
Alex Tokar 2d1b37f9aa return tuple when interactive=False 2021-11-29 14:03:30 -08:00
Alex Tokar 55d009b667 fixing tests with argument change 2021-11-29 13:44:07 -08:00
xela7 deeba59c78
make test more strict
Co-authored-by: KPrasch <kieranprasch@gmail.com>
2021-11-29 13:39:24 -08:00
Alex Tokar 2415436229 Keystore.generate can return optional mnemonic words 2021-11-24 11:56:26 -08:00
Bogdan Opanchuk 181e6bd3f1 Scrap `suspicious_activities_witnessed` from Ursula
We're not doing anything with it (until #567 is implemented),
and it's clogging the memory over time.
2021-11-06 00:03:37 -07:00
Bogdan Opanchuk 944d3373e7 Normalize the usage of VariableLengthBytestrings
Allow for every Versioned type to be able to deserialize itself from the bytestring.
2021-11-01 13:31:31 -07:00
Bogdan Opanchuk 7197d853d7 Move `signer` to the first position in the parameter list in various core constructors 2021-11-01 13:31:12 -07:00
Bogdan Opanchuk fe02c30fc7 Making names uniform throughout the codebase: policy_key -> policy_encrypting_key
Also change recipient_key to policy_encrypting_key in MessageKit.author(),
now that MessageKit is only used for reencryptable messages.
2021-11-01 13:31:12 -07:00
Bogdan Opanchuk 70b2a1d57b Remove `alice_verifying_key` from `ReencryptionRequest` 2021-11-01 13:31:12 -07:00
Bogdan Opanchuk 004aa312f3 Remove signing from MessageKit
Now it's the user's responsibility
2021-11-01 13:31:12 -07:00
Bogdan Opanchuk af404677c7 Make a separately versioned EncryptedKeyFrag instead of using a MessageKit 2021-11-01 13:31:11 -07:00
Bogdan Opanchuk 238a2cfd2a Remove `hrac` from `EncryptedTreasureMap` 2021-10-29 15:06:34 -07:00
Bogdan Opanchuk 4bb6c82014 Stop bundling `publisher_verifying_key` with `EncryptedTreasureMap`
Instead:
- Add it as a parameter to `retrieve_cfrags()`
- Add it to `ReencryptionRequest`
- Remove `EncryptedTreasureMap._public_signature` and `hrac`
2021-10-29 15:06:34 -07:00
Bogdan Opanchuk cdbe0fb546 Fix _decrypt_kfrag() argument name
Kfrags are encrypted by the publisher, not by the kfrag author (Alice)
2021-10-29 15:06:34 -07:00
Bogdan Opanchuk bb14e4eef0 Do not catch UnbondedWorker in `verify_node()` and let it propagate 2021-10-29 15:06:34 -07:00
Bogdan Opanchuk e1c0335cdc Sign the whole node metadata instead of just the interface 2021-10-29 15:06:34 -07:00
Kieran R. Prasch 320eaa7de9 Reference issue #2813 2021-10-29 14:37:37 -07:00
Kieran R. Prasch 25425d55e5 Skip stale federated retrieval test. 2021-10-29 07:56:24 -07:00