Commit Graph

55 Commits

Author SHA1 Message Date
Francisco Gindre 9a8d4c23b5 Code Cleanup, test enhancements, linting changes 2021-02-15 21:56:23 -03:00
Francisco Gindre aad4710608 fix tests 2020-12-14 18:55:51 -03:00
Francisco Gindre 69b9ee9dfe force retry on TestCoordinator 2020-12-05 15:10:22 -03:00
Francisco Gindre 1926ea6824 Canopy Tests Successfully pass 2020-11-05 19:02:01 -03:00
Francisco Gindre 552c011951 WIP - testCombinePreActivationNotesAndPostActivationNotesOnSpend 2020-11-02 14:15:52 -03:00
Francisco Gindre 29db874bec WIP - testExpiredSpendAfterActivation 2020-11-02 11:58:45 -03:00
Francisco Gindre 71940c8d40 WIP - testSpendMinedSpendThatExpiresOnActivation 2020-11-02 11:53:49 -03:00
Francisco Gindre 4d77455033 WIP - testSpendPostActivationFundsAfterConfirmation 2020-11-02 11:04:30 -03:00
Francisco Gindre 45b0f7523b WIP - testSpendPriorFundsAfterActivation 2020-10-30 20:45:54 -03:00
Francisco Gindre fa76c722b2 FIX - UNIQUE constraint violation when an operation failed 2020-10-26 18:57:19 -03:00
Francisco Gindre 4e1e899de8 Add darksidewalletd tests for foundTransactions notifications 2020-10-20 19:22:05 -03:00
Francisco Gindre e01d2e1745 add stub method 2020-10-20 11:07:42 -03:00
Francisco Gindre 972fb08926 Issue 208 - Improve API method to request transaction history 2020-10-19 21:01:46 -03:00
Francisco Gindre 18b8d622c2 remove SeedProvider protoco 2020-10-14 20:18:10 -03:00
Francisco Gindre 4a01865a7d Add IVK capabilities to Initializer 2020-10-14 19:50:26 -03:00
Francisco Gindre 328a18d898 DerivationTool + tests
Fixes #204
2020-10-09 17:58:36 -03:00
Francisco Gindre af8ee1ef12 Add SaplingParameterDownloader 2020-10-08 17:29:38 -03:00
Francisco Gindre 251b4c7aa3
Error handling refactor (#170)
* Improve error handling on processor and service

* Error Refactoring

* fix XCode12 issue

* Fix Compilation errors and test

* bump MIDDLE version
2020-08-10 19:19:59 -03:00
Francisco Gindre 647072ce26
Pending tx wont clear (#168)
* Created test to reproduce issue

* fix test

* Add Fixme message

* Fix reorg Tests
2020-07-22 16:32:07 -03:00
Francisco Gindre 32058fbc30 Remove MnemonicSwift from tests. iOS 12 Compatibility 2020-06-10 10:49:04 -03:00
Kevin Gorham a45f056242
Enable heartwood. (#138)
* Enable heartwood.

We might want to make further adjustments to conditionally enable this only on testnet.

* add consensus branch Id code

* better address validation

Co-authored-by: Francisco Gindre <francisco.gindre@gmail.com>
2020-06-09 21:23:46 -03:00
Francisco Gindre cc77d9705e
Issue 136 Null bytes in strings effectively truncate the string from … (#140)
* Issue 136 Null bytes in strings effectively truncate the string from librustzcash's point of view

* Code clean up

* Fix from PR review
2020-06-08 17:07:48 -03:00
Francisco Gindre 3f130ebebf
Fixes issue 136 - expiry height -1 on pending transactions (#139) 2020-06-04 18:36:25 -03:00
Francisco Gindre f8f8be30a4
Advanced Re Org tests + Balance tests (#137)
* Stub methods and internal initializers

* [WIP] Balance tests

* testVerifyBalanceAfterExpiredTransaction and testVerifyChangeTransaction

* adopt new version of darkside lightwalletd

* Balance tests with new darkside wallet proto files

* podspec and podfile

* Advanced reorg testsw

* Issue 117 - Reorg Test Case: Index of incoming tx changes

* Hooking to Darksidewalletd

* update proto files to latest

* sanity tests

* FakeChainBuilder + advanced tests

* Use new datasets

* test: outbound tx index change on reorg

* testReOrgChangesInboundTxMinedHeight test + other improvements

* testReOrgChangesInboundMinedHeight

* testReOrgRemovesIncomingTxForever

* testReOrgRemovesOutboundTxAndIsNeverMined

* testReOrgRemovesOutboundTxAndIsNeverMined

* Fixes to balance tests
2020-06-03 20:18:57 -03:00
Francisco Gindre 1d71bc30c4
Canonical empty memo test (#112) 2020-04-28 15:30:57 -03:00
Francisco Gindre 36f2d0730a
Memo tests (#111)
* test scaffold

* Memo Tests

* emoji memo test
2020-04-24 16:50:23 -03:00
Francisco Gindre 462ce0f5d7
Decrypt transactions. Full wallet restore (#110)
* Add enhancement [WIP]

* Added enhance and decrypt transaction step

* modify logging

* Enhancement tests scaffolding
2020-04-23 14:11:03 -03:00
Francisco Gindre 174ceb1d8e
Swift grpc to NIO (#109)
* update protofiles

* update protobuf

* swift lint

* update GRPC service to NIO

* initial update [wip]

* Upgrade to SwiftGRPC NIO and Tests
2020-04-09 19:25:43 -03:00
Francisco Gindre 312a169911
Feature/reorg testing (#104)
* Add DarksideWalletD class

* darkside walletd reorg tests

* Removed hardcoded stuff from tests

* add parameters to support other kinds of reorgs

* Basic reorg test in place

* Integration to DarksideWalletD and tests

* tests improvements

* Implement reorg testing. fix error throwing
2020-04-06 12:54:31 -03:00
Francisco Gindre d4d3f0e5cf FIX: race condition on reorgs 2020-03-16 18:23:39 -03:00
Francisco Gindre f783f55f73 fix test crash 2020-03-16 15:26:17 -03:00
Francisco Gindre 72c3cb59ef
Integrate logging capabilities (#93)
* Integrate logging capabilities

* Relocate file
2020-03-09 17:25:27 -03:00
Francisco Gindre b867649443
Support Note Spending v7
* upgraded to note-spending-v7

* use "zip32 compliant" seed on demo app

* Fixes to initializer, added v7 methods, documented API. Fixed compact block processor not initializing correctly upon new wallets.

* documentation

* Change u8 return value to bool + tests

* add address validation functionality to Initializer

* renamed functions to a C style. Exposed deriving functions in rust backend. Added more tests

* fixed bug where compact block processor wouldn't reschedule

* Fixed capture blocks retaining references

* fixed memory cycles and leaks

* fixed memory leak and blockrange error

* fixed error on confirmed transactions and added blockheight to progress notifications
2020-02-26 13:54:48 -03:00
Francisco Gindre 77cfb2c328 Enhancements from PR 2020-02-07 18:04:21 -03:00
Francisco Gindre b3d42304a9 Fix - CompactBlock Processsor loops indefinitely on reorg 2020-01-30 00:11:40 -03:00
Francisco Gindre 8bb5eca9a6 fix testTxIdAsString test 2020-01-15 15:30:59 -03:00
Francisco Gindre 750108252f
Feature/single pod mainnet (#60)
* Mainnet changes [WIP]

* Separate pods approach [WIP]

* Create a single podfile and scripts to build mainnet or testnet [WIP]

* Added test spec to pod with TESTNET Script [WIP]

* pod install + sample app testnet build worked

* add prefix to database names

* Fix constants in tests

* fix plist

* fix stencils

* Force environment variable

* Get config from environment variable

* Save project settings and create new DemoAppConfig settings

* Fix Template. change demoApp config port

* Add extra warning when building to see environment in logs

* New Readme! + enhanced messaging on build_librustzcash_xcode.sh

* Fix Stencil if statement

* add our domain names to the demo app endpoints

* clean up Podfile

* fix: mainnet not building properly

* improve cleanup

* fixed weird seed change

* remove duplicated file reference

* Improve error handling on LightWalletService

* Improve error handling on Latest block height. fix get address pasteboard gesture

* fix mainnet walletbirthday stencil

* fix: demo app not syncing on mainnet

* Verified Balances and Send Max Funds fixed

* Add paths to preserve when installing pod

* add Stencil to preserved paths

* Fix $ZCASH_SDK_GENERATED_SOURCES_FOLDER not writable error

* Fixes from PR Comments

* Fixed TransactionId string generation

* Fixed Test build scripts + PR comments

* fix indentation

* Changes to script_commons

* fixes per PR

* remove else from mismatch function

* Add comment to poorly named function
2020-01-14 19:25:14 -03:00
Francisco Gindre 5930fbed6f
Outbound transaction reorg handling proposal (#48)
* Outbound transaction reorg handling proposal

* Add rewind distance

* include rewind on reorg notification, use it to refresh pending transactions
2019-12-17 14:12:07 -03:00
Francisco Gindre a139ffbdfe
Transaction Listing + send funds + synchronizer implementation (#47)
* Create UIKit subfolder

* add offset to transaction repository

* mock repository and tests [WIP]

* Paged transaction DAO

* Paged transaction repository by kind

* update protobuf files

* move SDKSynchronizer to UIKit folder

* created some health check test on transactions

* Build release version of librustzcash

* Add Send on main thread button for troubleshooting purposes

* fix submit method by using RawTransaction factory method

* fix transactions table mapping

* fix transactions table mapping

* fix get balance sample

* FIX: cosensus branch ID for Blossom

* SDKSynchronizer integration for Send Funds

* fix rawTransactionId mistaken by raw field

* fix testEncodeSpend

* Transaction submission failed tests

* unpaged transaction listings

* renamed method, fixed typo

* stupid xcode misplaced folders again

* add PaginatedTableView Dependency to Example and hook it up [WIP]

* fix  unit test target not being shared

* removed performance test

* fix get address, paged transactions nulled, added type of transaction

* added kind of transaction to transaction repo builder, fixed transaction builder

* Transaction Detail screen

* add transaction details to paginated transaction
2019-12-16 19:25:45 -03:00
Francisco Gindre 561ea7b620
Feature/sending ui (#39)
* [WIp} Send View Controller + Synchronizer methods to send and cancel tx +  builders

* Send Funds scaffold

* project changes

* initializer and synchronizer enhancements. removed dummy file

* fix bitcode issue, add Progress HUD

* Pending Transactions, send transactions

* create_to_address tests + sending UI
2019-12-06 09:38:47 -03:00
str4d cff6ec5505 Migrate to note-spending-v6 branch (#35)
* Migrate to note-spending-v6 branch

* Rename sendToAddress -> createToAddress

* cargo update

* Disable multicore proving temporarily

createToAddress breaks when called from a background thread if multicore
is enabled.

* Modify expectations. Single thread librustzcash needs more time
2019-12-03 14:11:23 -03:00
Francisco Gindre d8affaebd3
Transaction submission + tests (#34)
* transaction manager

* Transaction Manager Tests

* pending transactions DAO + Scaffold tests

* PendingTransactionsDao + tests

* Persistent Transaction Manager
2019-12-03 12:19:44 -03:00
Francisco Gindre c772934d3d
Transaction data access improvements + Create Spend + Get Balance Screen (#33)
* Transaction encoder implementation tests WIP

* Create Spend and Create Transaction + Test [WIP]

* New! Get Balance Screen

* Send to address
2019-11-26 19:32:20 -03:00
Francisco Gindre 908d8ac823
Received Notes and Sent Notes repository + tests (#31) 2019-11-18 17:54:23 -03:00
Francisco Gindre 2a80d705aa
Transaction Entity data access (#30)
* Account, Received & Received Notes, Transaction Protocols

* Transaction Entity fix

* TransactionRepository Implementation

* delete Carthage sample project

* (Pending|Sent|Received)Transaction Data Access

* Add findAll performance measure + test fix
2019-11-18 16:49:36 -03:00
Francisco Gindre 2c23875607
Synchronizer + Handle reorgs (#27)
* Compact Block Synchronizer first impl

* Synchronizer

* Basic Reorg logic. Moved tests to cocoapods

* Remote Carthage Support

* remove Carthage support from readme

* RustBackendMock

* RustBackend Stub for testing reorgs. Tests (fail). Download retry logic

* Simple reorgTest passed
2019-11-14 11:38:54 -03:00
Francisco Gindre d757a1337f
Compact Block Processor Sync (#11)
* Compact Block Processor demo + tests

* fix latest block sync glitch

* fix Compact Block Processor tests

* fix lint
2019-11-04 20:18:07 -03:00
Francisco Gindre bce2bd0d7e
Get Address Example, API improvements, test fixes (#10) 2019-11-01 16:59:16 -03:00
Francisco Gindre 670ec12494
Compact Block Processor progress notifications (#8) 2019-10-31 14:33:21 -03:00
Francisco Gindre 40a1f57274
download - Validate - Scan (#7)
* Deleted SQLStorage class added Connection Manager, abstracted Wallet over SQL storage

* Use ConnectionProvider, open and close connections per operation

* Replace fileExists with isReadableFile

* WIP - compact block processor + start stop notification tests

* Mock service to test smaller ranges on BlockProcessor

* Improvements to ZcashOperation and tests

* ZcashOperation own file. CompactBlockProcessor fixes + tests

* Block Processor. Batch processing first 1000 blocks

* Download-Validate-Scan sequence of compact block processor
2019-10-30 17:18:57 -03:00