Commit Graph

320 Commits

Author SHA1 Message Date
Christopher Goes 7a8e00dbb9
Change CoreContext parameters instead of using viper.Set 2018-04-03 22:15:27 +02:00
Christopher Goes 579e5d4cdc
Add CoreContext for CLI/REST options 2018-04-03 22:15:12 +02:00
Christopher Goes 720b37c6f2
Rename client/builder to client/core (ref #721) 2018-04-03 22:14:11 +02:00
Ethan Buchman e7e98a0644 lcd: waitForHeight instead of sleep in tests 2018-04-02 19:31:54 +03:00
Ethan Buchman ceddb54e91 cleanup gitignore 2018-03-31 19:05:15 +03:00
Ethan Buchman e226cb7a35
Merge branch 'develop' into cwgoes/misc-minor-fixes 2018-03-31 18:54:06 +03:00
Christopher Goes 10a22f20ba
Remove 'cool' and 'sketchy' modules from basecoind 2018-03-30 16:32:11 +02:00
Ethan Buchman d25593afc4
Merge pull request #726 from cosmos/adrian/mountmultipledbs
Mount every single store with its own DB
2018-03-30 06:41:10 -04:00
Adrian Brink 0789a5eed0
NewBasecoinApp takes a map of databases
NewBasecoinApp takes a map[string]dbm.DB . This stabilises the API,
since it allows us to add more stores without a breaking change. The
convention is that the keys of the dbs correspond to the names of the
capKeys.
2018-03-30 12:18:12 +02:00
Christopher Goes e13b1f2ac9
Change key DB to ~/.basecli/keys/keys.db 2018-03-29 18:23:11 +02:00
Ethan Buchman 66a1130f9d
Merge pull request #662 from cosmos/matt/ibc-rest
REST IBC transfer endpoint
2018-03-29 08:45:46 -04:00
Christopher Goes 0f9bd93bb1
Switch a few directories (#644 #646) 2018-03-29 12:10:13 +02:00
Christopher Goes 44de18e8da Use temporary dir for lcd keybase tests (closes #646) 2018-03-29 12:04:52 +02:00
Christopher Goes bb66b852ef Move keybase DB to ~/.basecoind/data (closes #644) 2018-03-29 12:04:52 +02:00
rigelrozanski 5ba297089a expose some keeper functions, tick cleanup 2018-03-28 19:01:50 +02:00
Adrian Brink 243564c233
Tests can never be proven to be non-deterministic
Our tests are at best probabilistic deterministic.
2018-03-28 15:08:59 +02:00
Christopher Goes 5b642062a7 Initial per-module genesis initialization 2018-03-28 11:24:31 +02:00
Ethan Buchman 742d24b7e4
Merge pull request #699 from lino-network/builder
Encapsulate Get Passphrase Logic in Builder
2018-03-27 20:25:48 -04:00
Rigel f2cf779117
Merge pull request #700 from lino-network/KeyAddBug
Fix key add override bug
2018-03-27 22:06:47 +02:00
Ethan Buchman 4331d9c2a4 fix test 2018-03-27 11:35:58 -04:00
Yukai Tu 487424eb19 Fix key add override bug 2018-03-25 01:35:02 -07:00
Yukai Tu 96d9c55172 Encaptulate Get Passphrase Logic in Builder 2018-03-24 23:14:18 -07:00
Matt Bell 5cfad33e49 Remove duplicate check 2018-03-20 13:46:02 +01:00
Matt Bell 0eec9671b2 Fixed IBC test 2018-03-20 11:53:02 +01:00
Matt Bell bad5228c4c IBC transfer REST test 2018-03-19 18:13:47 +01:00
Matt Bell ef68be2f38 Added IBC transfer REST endpoint 2018-03-19 18:13:37 +01:00
Ethan Buchman 64852138b6 fix the tests. includes some hacks 2018-03-18 02:02:26 +01:00
Ethan Buchman d807d32f8a client/lcd: wip use in-proc tm and lcd for tests 2018-03-17 23:12:43 +01:00
Ethan Buchman 7f3a6e0c04 Options -> AppState 2018-03-17 23:10:44 +01:00
Ethan Buchman 683663f680 fixes post rebase 2018-03-17 23:09:04 +01:00
Fabian Weber 5ea06639f9 fix tests and refactored 2018-03-17 22:17:56 +01:00
Matt Bell fa78893f40 Fixed LCD tests 2018-03-17 22:17:56 +01:00
Fabian Weber 947262f649 checking for expected sycning response + setting uint32 2018-03-17 22:17:56 +01:00
Fabian Weber cbbb3be0d4 fixed tests + removed indexed txs 2018-03-17 22:17:56 +01:00
Fabian Weber cf6f04978c adjusted sending + tx tests 2018-03-17 22:17:56 +01:00
Fabian Weber 1cd6ec1084 most tests working 2018-03-17 22:14:19 +01:00
Fabian Weber 579bd56127 fixed some tests 2018-03-17 22:14:19 +01:00
Ethan Buchman 39c8e4eb7f client/lcd: fix up some tests. print statements abound 2018-03-17 22:14:19 +01:00
rigelrozanski 1778a27082 more of the go-bash stuff for REST 2018-03-17 22:14:19 +01:00
rigelrozanski fdb9d5f580 moved actual go commands 2018-03-17 22:14:19 +01:00
Fabian b3532e2d2b using actual running servers + http calls to test REST 2018-03-17 22:14:19 +01:00
rigelrozanski 8858371c43 ... 2018-03-17 22:14:19 +01:00
Fabian Weber 5cc0acf274 improved send coins test 2018-03-17 22:14:19 +01:00
Fabian Weber 8cd9e05fc2 remove keys.db 2018-03-17 22:14:19 +01:00
Fabian e8e1e2899b removed /latest endpoints and checks 2018-03-17 22:14:19 +01:00
Fabian abfa409d37 fixed merge 2018-03-17 22:14:19 +01:00
Fabian Weber 1b78752311 removed clutter 2018-03-17 22:14:19 +01:00
Fabian Weber ef88f34d57 added regexp for version returned 2018-03-17 22:14:19 +01:00
Fabian 0121c98a1e add /accounts endpoints but failing 2018-03-17 22:14:19 +01:00
Fabian 0d423ae066 ignore generated keys.db from tests 2018-03-17 22:14:19 +01:00
Fabian 4ef129d9e6 require seed for account creation 2018-03-17 22:14:19 +01:00
Fabian f1cdf57a48 add request test helper 2018-03-17 22:14:19 +01:00
Fabian 8aec254333 add add key test 2018-03-17 22:14:19 +01:00
rigelrozanski 11fdd831ee refactoring server new non-deterministic error :( 2018-03-17 22:14:19 +01:00
Fabian Weber 189ce0d73f added version test 2018-03-17 22:14:19 +01:00
Fabian Weber 134d909cf6 added failing tests for blocks and validators 2018-03-17 22:14:19 +01:00
Fabian Weber b6c094f1ad improved node status tests 2018-03-17 22:14:19 +01:00
Fabian 2f470baf19 refactored route registering 2018-03-17 22:14:19 +01:00
Fabian Weber afea775748 improved test output 2018-03-17 22:14:19 +01:00
rigelrozanski a28f53721d rebase fixes
...
2018-03-17 22:14:19 +01:00
rigelrozanski c7589cc67c lcd tests to assert 2018-03-17 22:14:19 +01:00
Fabian Weber cdba13c531 added node info tests 2018-03-17 22:14:19 +01:00
Fabian 37bbde837b added node syncing endpoint 2018-03-17 22:14:19 +01:00
Fabian Weber 7d36d953f2 added tests for /keys 2018-03-17 22:14:19 +01:00
Ethan Buchman ad705fdea1 bump version
added rest server and status endpoint

added get block endpoint

added latest block endpoint

add 404 if height is out of bounds

add version endpoint

add validators endpoint

export GetBlockHeight

add keys endpoints

add txs endpoints

added verb limiters to ednpoints

only output node info + json structure improvement

fixed wrong body parsing

github PR template

crypto.Address -> sdk.Address

revert to old go-wire

update glide

remove print statement and update glide

fix #554

add .DS_Store to .gitignore

Massive consolidation: queue, data storage struct, store, logic, ...

Small fixes
2018-03-17 22:14:19 +01:00
Ethan Buchman 3babf8c2d9 fix and clean fees and x/auth 2018-03-17 19:54:18 +01:00
rigelrozanski 5965df1613 move signmsg into common sign and build functionality 2018-03-17 16:49:47 +01:00
Ethan Buchman 2336a20f5a fix cli to sign StdSignDoc. fixes #620 2018-03-14 13:11:19 +01:00
Ethan Buchman 032a0b4539
Merge pull request #552 from cosmos/rigel/basecoin-upgrade
Basecoin Upgrade + tiny bit client refactor
2018-03-11 00:12:02 +01:00
Ethan Buchman 9dc3690a0c change deps to master. remove tmwire dep 2018-03-08 19:48:17 +00:00
rigelrozanski fb199e293e fixes, add to changelog 2018-03-04 17:21:37 +00:00
rigelrozanski b6347db664 refactor client 2018-03-04 17:21:37 +00:00
Ethan Buchman 630a5fe579 revert to old go-wire 2018-03-02 04:24:07 -05:00
rigelrozanski 0469358286 rebase fixes 2018-03-01 03:17:48 +00:00
rigelrozanski 3be46395cf restructure to remove deps on example 2018-03-01 02:36:57 +00:00
rigelrozanski 65f27f2daa basecli refactor 2018-03-01 02:36:57 +00:00
Ethan Frey 94948746a0 rpc cli output uses wire.MarshalJSON 2018-03-01 02:36:57 +00:00
Ethan Frey bb74e84b29 Clean up keys/keybase and comments 2018-03-01 02:36:57 +00:00
Ethan Frey 03dc660797 Cleanup client/input.go per buckys request 2018-03-01 02:36:57 +00:00
Ethan Frey 05f5141734 Cleanup from rige's review 2018-03-01 02:36:57 +00:00
Ethan Frey 8392cf93ac Implement RPC subcommands
Turned out the tendermint rpc was broken in the refactor and
had to fix that first...
2018-03-01 02:36:57 +00:00
Ethan Frey c083678cae cleaned up basecli tx so it really works 2018-03-01 02:36:57 +00:00
Ethan Frey 734b1073ba Added tx subcommands and automate manual testing 2018-03-01 02:36:57 +00:00
Ethan Frey bae7cec3fa Move all subcommands out of main into proper folders 2018-03-01 02:36:57 +00:00
Ethan Frey c7ca6ec038 Fixed import 2018-03-01 02:36:57 +00:00
Ethan Frey 356baf61c1 Move sendtx and query account commands into x/bank 2018-03-01 02:36:57 +00:00
Ethan Frey 00304dd094 Prompt for password on sendtx 2018-03-01 02:36:57 +00:00
Ethan Frey 8c93a6455b Implement query account without proofs 2018-03-01 02:36:57 +00:00
Ethan Frey b0c65f8045 All keys logic works with new basecli 2018-03-01 02:36:57 +00:00
Ethan Frey 7361269eb6 Updated keys add 2018-03-01 02:36:57 +00:00
Ethan Frey ee31db3263 Very rough import of old keys logic 2018-03-01 02:36:57 +00:00
Ethan Buchman e45ad068fb move things to _attic 2018-01-06 15:35:22 -05:00
Jae Kwon 1d207a2a5e Fixing store/* bugs... 2017-12-04 00:23:10 -08:00
Ethan Frey 850796bad5 eyes example compiles - but doesnt work 2017-10-25 19:56:48 +02:00
Ethan Frey 2cc53beca7 CLI supports creating ledger keys 2017-10-25 19:54:57 +02:00
Ethan Frey 6f87b0a42f Rename seeds command to commits 2017-10-25 19:35:36 +02:00
Ethan Frey 9442e7e04a Cleaned up naming of seed->commit 2017-10-25 19:35:36 +02:00
Ethan Frey 1c446f4b49 fix client tests 2017-10-25 19:35:36 +02:00
Ethan Frey 1b7bec230d make install works 2017-10-25 19:35:36 +02:00
Ethan Frey 624133ad92 Fix lot more lightclient imports 2017-10-25 19:35:36 +02:00
Ethan Frey 1f897cabde Fix light-client imports 2017-10-25 19:35:36 +02:00
Ethan Frey 7fad21d800 Use own ErrNoData, not from light-client 2017-10-25 19:35:36 +02:00
Ethan Frey c4ead8b8a3 Expose height flag in all queries 2017-10-25 19:14:28 +02:00
Ethan Frey 422e67b382 Update deps: tendermint/abci/iavl, fix code 2017-10-25 19:14:28 +02:00
Ethan Frey f65215ad92 Big cleanup of app dir
StoreApp just the queries, BaseApp with handler/ticker
Ticker now defined top level, as an interface, with context
Name for info taken as parameter, start cmd uses commandline name
Cleaner compisition of apps.
2017-10-20 13:42:03 +02:00
Ethan Frey c1d36eeb21 Fixed all tests 2017-10-20 13:42:03 +02:00
Ethan Frey 6c667b8398 Use tendermint version format for basecoin version 2017-10-20 13:05:59 +02:00
Ethan Frey 5238448a46 Make sure height in store increments every block, even if empty 2017-10-10 15:03:39 +02:00
Ethan Frey 9092b4d7f1 Fix TestTxProofs 2017-10-10 14:27:38 +02:00
Ethan Frey 8fbf923c25 Update binaries to use our key commands, not the ones from go-crypto 2017-09-08 20:47:46 +02:00
Ethan Frey ed690b8aa3 Move keys command from go-crypto here 2017-09-08 20:47:46 +02:00
Ethan Frey 2ac564fead Clean up seed input/output code 2017-09-08 20:47:46 +02:00
Ethan Frey 46d10db990 fix unit tests 2017-09-08 20:47:46 +02:00
Ethan Frey 2951763660 Moved merkleeyes->iavl and updated references 2017-09-08 20:47:46 +02:00
Ethan Frey f2ff547a8f Removed proxy from client/rest as now in client 2017-09-08 20:47:46 +02:00
Ethan Frey 38b6173066 Pull out proxy server away from viper 2017-09-08 20:47:46 +02:00
Ethan Frey e0ddecc229 Move proof logic away from viper 2017-09-08 20:47:46 +02:00
Ethan Frey 521503026e Separate common commands from viper 2017-09-08 20:47:46 +02:00
Ethan Frey 041943c441 Rename all packages and imports to cosmos-sdk 2017-08-21 22:15:15 +01:00
Emmanuel Odeke 71bacacc21 Fix query test - Alexis please check better 2017-08-18 23:03:58 +01:00
Ethan Frey a908c24235 Use linker flags to set git commit in version command 2017-08-18 22:04:50 +01:00
Alexis Sellier d3cdce3850 Use more specific assertion functions 2017-08-16 16:55:25 +02:00
Alexis Sellier b69df980d1 Check proofs with latest commit 2017-08-11 14:10:06 +02:00
Alexis Sellier 6a642e33b8 Check returned height 2017-08-11 13:57:38 +02:00
Alexis Sellier 3f0c0ad8f5 Refactor function for readability 2017-08-11 13:34:39 +02:00
Alexis Sellier eec4b10067 This doesn't need to be public 2017-08-10 15:10:21 +02:00
Alexis Sellier 77207a19db Fix some comments 2017-08-10 15:10:15 +02:00
Alexis Sellier f9c3fce5b4 Write tx proof tests 2017-08-10 14:51:56 +02:00
Alexis Sellier 388f0eece7 Wrap error for good measure 2017-08-10 14:51:56 +02:00
Alexis Sellier 668eea8628 Fix return value when nothing is found 2017-08-09 13:13:16 +02:00
Alexis Sellier d1b49da825 Use new Certifier type from light-client 2017-08-08 18:52:28 +02:00
Alexis Sellier 1882376a34 Cleanup tests a bit 2017-08-08 18:06:14 +02:00
Alexis Sellier 80ef09f1ee Fix bogus height check 2017-08-08 16:32:01 +02:00
Ethan Frey 7857f25649 No sleep, just wait for one block to exist 2017-08-08 16:32:01 +02:00
Ethan Frey f7d4b7f721 Add tests that the proofs verify 2017-08-08 12:27:40 +02:00
Alexis Sellier 225f0e7dbe Rename function 2017-08-08 12:20:21 +02:00
Alexis Sellier 2b735d8968 Support non-existence proof 2017-08-08 11:51:15 +02:00
Alexis Sellier 538824d736 Change module import etc -> eyes 2017-08-07 19:24:58 +02:00
Alexis Sellier 15d2e2525f Start working on proof tests 2017-08-07 19:23:44 +02:00
Ethan Frey 3db48b8d9a Add helper function to parse a command flag 2017-08-06 22:51:29 +02:00
Ethan Frey d6d6b75736 Renamed client/commands/proofs to client/commands/query 2017-08-04 20:50:36 +02:00
Ethan Frey 6dae258767 Lots of cleanup 2017-08-04 20:36:50 +02:00
Alexis Sellier 831c9ae3ec Use Get/GetParsed everywhere 2017-08-04 19:21:40 +02:00
Alexis Sellier 391380bef2 Refactor app state query code 2017-08-04 19:21:40 +02:00
Ethan Frey 4df20df62a Fix meaning of --trust-node, pass tests 2017-08-04 18:51:16 +02:00
Ethan Frey 8d3576f0f7 Try to rip out tx stuff 2017-08-04 17:27:54 +02:00
Emmanuel Odeke ee5d22010a
cmd/baseserver, */rest: allow baseserver to choose which handlers to use
Make handlers easily configurable to use in cmd/baseserver/main.go.
This way client users can trivially change what functionality they'd
like.
It involves moving ServeCmd out of client/rest to */main.go
and lets client/rest become a bazaar for available mux.Router
registrars.

Updates #200
2017-08-03 11:41:51 -06:00
Emmanuel Odeke 1a45755027 client/rest, modules/coin/rest: moved code around
After offline emails and a video call with @ethanfrey,
a goal was decided to move things around i.e:
- [X] Move /build/send and /query/account to modules/coin/rest

Due to that move, there is a lot of overlap between needed
code and utils so extracted common code to make
https://github.com/tendermint/tmlibs/pull/33
so make sure to pull in that commit into your tmlibs tree.

After code review feedback:
client/rest, modules/coin/rest: FoutputProof, PrepareSendTx helper

* Extract OutputProof to FoutputProof helper that can
be used in modules/coin/rest/handlers.go as proofs.FoutputProof
* Revert r.HandleFunc("/tx", doPostTx).Methods("POST") which
was erraneously deleted
* Use function signatures from "tendermint/tmblibs/common"
2017-08-02 12:57:29 -06:00
Ethan Frey 75181a78c3 Hide trust flag 2017-07-29 17:41:13 -04:00
Ethan Frey 4652779a3d Fix up flag handling 2017-07-29 17:23:21 -04:00
Ethan Frey 8dd2371cc5 Don't require init when --trust-node is given 2017-07-29 17:23:21 -04:00
Ethan Frey b98bfc01ae Add --trust-node flag to cli to skip proofs on queries 2017-07-29 17:23:21 -04:00
Ethan Frey f0e2227ada Use password as key, allow 3 letter names 2017-07-29 17:16:24 -04:00
Emmanuel Odeke 7c28374c38 Merge branch 'rest-server-query' into rest-server 2017-07-29 13:25:29 -06:00
Emmanuel Odeke c0743af51c
client/rest: implement /query/account/{signature}
Allows us to query account balance from the blockchain
for example:
/query/account/sigs:BDADF167E6CF2CDF2D621E590FF1FED2787A40E0
2017-07-29 13:20:51 -06:00
Ethan Frey de82c03804 Fixed up business logic in build/send 2017-07-29 09:28:45 -04:00
Emmanuel Odeke d4ab79ece0
client/rest, cmd/baseserver: started a basecoin REST client
```shell
$ go get -u -v github.com/tendermint/basecoin/cmd/baseserver
$ baseserver init
$ baseserver serve
```
A server that can be ran by default on port 8998
otherwise one can specify the port using flag `--port` like this:
```shell
$ baseserver serve --port 9999
```
to serve it on port 9999, accessible at http://localhost:9999

Implemented:
- [X] /keys POST -- generate a new key
- [X] /keys GET  -- list all keys
- [X] /keys/{name}  DELETE-- delete a named key
- [X] /keys/{name}  GET -- get a named key
- [X] /keys/{name}  POST, PUT -- update a named key
- [X] /sign POST -- sign a transaction
- [X] /build/send POST -- send money from one actor to another. However,
  still needs testing and verification of output
- [X] /tx POST -- post a transaction to the blockchain. However, still
  needs testing and verification of output

This base code to get the handlers starters was adapted from:
* https://github.com/tendermint/go-crypto/blob/master/keys/server
* https://github.com/tendermint/basecoin/blob/unstable/client/commands/proxy/root.go

Updates #186
2017-07-29 04:12:24 -06:00
Ethan Frey eae1883f3d Add sign and post helper functions 2017-07-28 10:35:39 -04:00
Ethan Frey f32e6c9b7d Updated light-client 2017-07-27 16:41:36 -04:00
Ethan Frey e90d6db516 Update seed to a given height 2017-07-27 16:41:13 -04:00
Ethan Frey 95b16b3830 Code cleanup from emmanuels comment 2017-07-27 16:41:12 -04:00
Ethan Frey fd10387eb5 Tested register and update ibc via cli 2017-07-27 16:30:20 -04:00
Ethan Frey e242f30aeb Add --no-sign flag 2017-07-27 15:42:09 -04:00
Ethan Frey 63fc25e74e Add roles cli test, coin query supports multiple apps in actor 2017-07-19 16:14:26 +02:00
Ethan Frey 911dd1423e Add roles wrapper/tx/query command to basecoin 2017-07-19 14:26:40 +02:00
Ethan Frey e7da4c2d3a Add support for --prepare to store tx for multisig 2017-07-19 13:22:53 +02:00
rigel rozanski ac1ecc10c4 new library orders 2017-07-19 04:51:36 -04:00
Ethan Frey 942506c21a basecli tx handles json input 2017-07-18 22:40:04 +02:00
Ethan Frey 100522069d Moved cmd/basecli/commands into client/commands 2017-07-18 22:21:57 +02:00
Ethan Frey eb495e081b Move commands to client/commands 2017-07-18 21:57:37 +02:00