60 Commits

Author SHA1 Message Date
Scott Sadler
6fbefd5230 Merge remote-tracking branch 'origin/master' into federation-tests 2017-04-24 15:16:48 +02:00
libscott
4b057ad948 Merge pull request #1286 from bigchaindb/tx-amount-string
transaction.outputs.amount as string
2017-04-24 14:28:06 +02:00
Scott Sadler
1e866a1207 signature payload is serialized transaction 2017-04-24 13:37:50 +02:00
Scott Sadler
2c6370f42e Merge branch 'master' into sign-tx-body 2017-04-24 13:28:02 +02:00
Scott Sadler
483425e803 Merge branch 'master' into tx-amount-string 2017-04-24 12:22:36 +02:00
Scott Sadler
3bf1f9fa17 add additional test of negative amount to fix codecov 2017-04-12 12:16:42 +02:00
Scott Sadler
a6ba13dc3e Merge remote-tracking branch 'origin/master' into federation-tests 2017-04-11 11:21:02 +02:00
Rodolphe Marques
4aa6ed1067 fixed pep8 error 2017-03-16 14:18:57 +01:00
Rodolphe Marques
f00f68e03f _sign_threshold now signs all subconditions for a public key.
Created test.
2017-03-16 14:10:04 +01:00
Scott Sadler
25650597b1 test invalid string amount case 2017-03-15 11:27:35 +01:00
Scott Sadler
f23bfa52d1 Output.from_dict accepts string 2017-03-15 10:00:00 +01:00
Scott Sadler
47c6a722ad move tests to validate transaction ID 2017-03-14 18:35:53 +01:00
Scott Sadler
66830fc1d9 move version validation to transaction structure test module 2017-03-14 17:12:10 +01:00
Scott Sadler
7c461e47d7 remove structural and schematic validations from Transaction.validate which is validating the spend 2017-03-14 12:39:57 +01:00
Scott Sadler
b997057962 fix tests 2017-03-13 14:25:36 +01:00
Scott Sadler
4050389df7 move test_create_tx_no_asset_id 2017-03-13 14:01:29 +01:00
Scott Sadler
e8ee2ec0a6 fix tests 2017-03-13 13:47:37 +01:00
Scott Sadler
8077956b95 test serialization hash function 2017-03-13 13:47:37 +01:00
Scott Sadler
bae05e80a0 sign whole transaction body instead of partial transaction 2017-02-28 11:27:55 +01:00
Scott Sadler
adb579ac0a Revert "duplicate asset ID" and apply "get_txids_filtered" interface. 2017-01-26 13:52:09 +01:00
libscott
cd7d65b63e Merge pull request #1066 from bigchaindb/1021/http_outputs_endpoint
1021/http outputs endpoint
2017-01-25 13:24:10 +01:00
Scott Sadler
4bb64fa0b8 generalise get_owned_ids to get_outputs and get_owned_ids 2017-01-23 16:10:21 +01:00
Scott Sadler
ccdbb91c1c short form 0.9, 0.10 etc tx version with no '.dev' suffix 2017-01-23 15:16:15 +01:00
Scott Sadler
d7126169f4 duplicate asset id / fix flake8 errors 2017-01-16 15:41:26 +01:00
Scott Sadler
003519b0a8 duplicate tx.id into tx.asset.id in CREATE transactions 2017-01-16 15:03:54 +01:00
libscott
e08bf52fa7 Merge pull request #1018 from bigchaindb/change-tx-version
Change version in tx model to 0.9
2017-01-13 12:07:23 +01:00
Sylvain Bellemare
1cfd3de60e Fix flake8 errors in tests 2017-01-11 05:13:27 -05:00
libscott
0b0dadd6fa Update test_transaction.py 2017-01-09 17:44:02 +01:00
Scott Sadler
48b90407bd change version in tx model to 0.9. The idea is that we will go with the server version until we hit 1.0 where we should be stable, then re-evaluate. 2017-01-04 15:10:15 +01:00
Brett Sun
8fa3245309 Rename any *util.py to *utils.py (#991) 2016-12-22 17:39:39 +01:00
Scott Sadler
04a78aacec Merge remote-tracking branch 'origin/master' into inputs-outputs 2016-12-22 13:45:02 +01:00
Brett Sun
9319583ab4 Remove Asset and AssetLink (#982)
* Remove asset.validate_asset and move its validation checks to other areas

* Move Asset.get_asset_id to Transaction

* Remove Asset and AssetLink models

* Add test against creating TRANSFER transactions with bad asset
2016-12-22 10:19:21 +01:00
libscott
7e33f2bd52 Tx ID as Asset ID (#926)
* Allow AssetLinks to be used in place of Assets in the Transaction Model and enforce `Transaction.transfer()` to only take an AssetLink

* Remove AssetLink's inheritance from Asset

* Remove id from the Asset model

* Fix get_txids_by_asset_id query for rethinkdb after removing asset's uuid

Because `CREATE` transactions don't have an asset that contains an id
anymore, one way to find all the transactions related to an asset is to
query the database twice: once for the `CREATE` transaction and another
for the `TRANSFER` transactions.

* Add TODO notice for vote test utils to be fixtures

* Update asset model documentation to reflect usage of transaction id

* Fix outdated asset description in transaction schema
2016-12-20 17:28:15 +01:00
Scott Sadler
92fee24395 fix forgotten test inputs-outputs 2016-12-19 13:44:20 +01:00
Scott Sadler
4e17fe5c3d change fulfills.idx to fulfills.output 2016-12-19 12:29:29 +01:00
Scott Sadler
b20a770b02 restore accidentally deleted tests 2016-12-19 12:29:29 +01:00
Brett Sun
2f4da6a32f Extra renames and small fixes for inputs-outputs (#952)
* Fix typos pointed out in review by @ttmc

* Reword description of an input in the transaction schema

* Re-add removed comment in transaction model

* Fix small typos in some comments in the transaction model

* Add trailling commas to a multiline dict in the transaction model tests

* Fix small things with server docs changes

* Add description of public keys' association with conditions in transaction concept docs

* Reword description of Transaction.create's  and  args

* Rename output_uri to output_condition_uri

* Fix hardcoded class name vs. self.__class__

* Rename instances of 'out' with 'output'

* Rename instances of  and  with  to avoid name clash with built-in

* Remove unnecessary renaming of cryptoconditions.Fulfillment import in transaction model

* Remove instances of  in transaction model

* Remove usages of fulfillment in cases where input makes more sense

* Reword docstrings for init methods in transaction models

* Rename usages of condition where output is now a better fit

* Add descriptions to TransactionLink's txid and idx in schema

* Minor correction to output idx description in transaction yaml
2016-12-19 12:29:29 +01:00
Scott Sadler
4b235f1f72 rename condition and fulfillment to output in test names where neccesary 2016-12-19 12:29:29 +01:00
Scott Sadler
ed55b3984e s/fulfillments/inputs/g && s/conditions/outputs/g (code changes) 2016-12-19 12:29:29 +01:00
Scott Sadler
d2827dfae8 remove asset keywords 2016-12-16 13:50:23 +01:00
tim
f78c90ada8 Add to_uri for TransactionLink 2016-12-15 17:17:18 +01:00
Scott Sadler
fc88c36ee5 Merge remote-tracking branch 'origin/master' into remove-cid-fid 2016-12-09 10:42:32 +01:00
Scott Sadler
8d4677f456 flatten transaction - code changes 2016-12-01 14:31:31 +01:00
Scott Sadler
18d018519f remove Condition.cid and Fulfillment.fid in favour of dereferencing conditions and fulfillments by their location in their respective arrays 2016-11-29 09:59:43 +01:00
Scott Sadler
71dcee019f Remove metadata uuid 2016-11-28 17:34:46 +01:00
Scott Sadler
7dc9f52fe0 remove transaction timestamp 2016-11-22 13:03:30 +01:00
libscott
8343bab89f Schema definition (#798)
Commit messages for posterity:

* wip transaction schema definition
* test for SchemaObject
* test SchemaObject definions meta property
* schema documentation updates
* test for basic validation
* commit before change to .json file definiton + rst generation
* move to straight .json schema, test for additionalProperties on each object
* add asset to transaction definiton
* remove outdated tx validation
* make all tests pass
* create own exception for validation error and start validating transactions
* more tx validation fixes
* move to yaml file for schema
* automatic schema documentation generator
* remove redundant section
* use YAML safe loading
* change current_owners to owners_before in tx schema
* re-run tests and make correct yaml schema
* fix some broken tests
* update Release_Process.md
* move tx validation into it's own method
* add jsonschema dependency
* perform schema validation after ID validation on Transaction
* Release_Process.md, markdown auto numbering
* remove old transaction.json
* resolve remaining TODOs in schema docuementation
* add `id` and `$schema` to transaction.yaml
* add transaction.yaml to setup.py so it gets copied
* address some concernes in PR for transaction.yaml
* address more PR concerns in transaction.yaml
* refactor validtion exceptions and move transaction schema validation into it's own function in bigchaindb.common.schema.__init__
* add note to generated schema.rst indicating when and how it's generated
* move tx schema validation back above ID validation in Transaction.validate_structure, test that structurally invalid transaction gets caught and 400 returned in TX POST handler
* remove timestamp from transaction schema index
* Add README.md to bigchaindb.common.schema for introduction to JSON Schema and reasons for YAML
* Use constant for schema definitions' base prefix
* Move import of ValidationError exception into only the tests that require it
* Move validate transaction test helper to tests/common/util.py
* move ordered transaction schema load to generate_schema_documentation.py where it's needed
* use double backticks to render terms in schema docs
* change more backticks and change transaction version description in transaction schema
* make details a mandatory property of condition
* Many more documentation fixes
* rename schema.rst to schema/transaction.rst
* Fix documentation for Metadata
* Add more links to documentation
* Various other documentation fixes
* Rename section titles in rendered documentation
* use  to manage file handle
* fix extrenuous comma in test_tx_serialization_with_incorrect_hash args
* 'a' * 64
* remove schema validation until we can analyze properly impact on downstream consumers
* fix flake8 error
* use `with` always
2016-11-22 11:17:06 +01:00
Rodolphe Marques
eead7dbdda Merge remote-tracking branch 'origin/master' into feat/746/new-naming-convention-for-keys 2016-11-17 11:41:23 +01:00
Brett Sun
eb362fd6e9 Fix equality check for AssetLinks (#825) 2016-11-16 11:21:25 +01:00
Rodolphe Marques
c068f04a82 Replaced VerifyingKey with PublicKey
Replaced SigningKey with PrivateKey
Replaced all occurences of signing key with private key
Replaced all occurences of verifying key with public key
2016-11-10 17:01:06 +01:00