110 Commits

Author SHA1 Message Date
troymc
6930f93d4c Added test for case when tx is in backlog and an invalid block 2016-11-06 10:13:29 +01:00
troymc
e81283fee9 test_read_transaction_invalid_block didn't need to write tx to backlog 2016-11-05 17:30:48 +01:00
Sylvain Bellemare
ea9dfaf1e5 Replace bigchaindb_common pkg by bigchaindb.common 2016-10-24 17:01:43 +02:00
vrde
15fb27f327
Remove conn property from core API 2016-10-18 17:32:32 +02:00
Rodolphe Marques
7275e6f44b Added support for cryptoconditions 0.5.0
Fixed tests.
2016-10-14 17:48:45 +02:00
Rodolphe Marques
7d3c6ee5ce Addressed comments to import tests.
Fixed some pep8 violations
2016-10-13 13:53:08 +02:00
Rodolphe Marques
abf1c98d7c Merge remote-tracking branch 'origin/master' into rebase/feat/564/implement-digital-asset-template 2016-10-12 16:56:49 +02:00
Rodolphe Marques
80c9cdcb09 Finished integration of digital asset.
Fixed tests
2016-10-12 10:29:25 +02:00
Ryan Henderson
81e70951d4 check if fulfillments are in a valid block (#629)
* check if fulfillments are in a valid block

* documentation

* fix almost all tests where tx validity is checked before writing to block

* move import
2016-10-10 09:41:49 +02:00
Rodolphe Marques
0652348bf0 initial integration of asset 2016-10-07 15:46:21 +02:00
Rodolphe Marques
148e30a84b Remove unnecessart database queries in get_asset_id 2016-10-04 16:23:36 +02:00
Rodolphe Marques
0189ede72e Renamed asset to asset_data. Added digital asset validation to
validate_transaction

Created and fixed tests.
2016-10-04 16:18:04 +02:00
Rodolphe Marques
1377ce2389 Fixed tests after renaming payload to metadata 2016-10-04 16:15:06 +02:00
Sylvain Bellemare
50b0b3cef2 Rebase/feat/586/integrate tx model (#641)
* Adjust imports to bigchaindb_common

* Adjust get_spent function signature

* Adjust block serialization

* Fix BigchainApi Test

* Fix TestTransactionValidation tests

* Fix TestBlockValidation tests

* WIP: TestMultipleInputs

* Adjust tests to tx-model interface changes

- Fix old tests
- Fix tests in TestMultipleInputs class

* Remove fulfillment message tests

* Fix TransactionMalleability tests

* Remove Cryptoconditions tests

* Remove create_transaction

* Remove signing logic

* Remove consensus plugin

* Fix block_creation pipeline

* Fix election pipeline

* Replace some util functions with bdb_common ones

- timestamp ==> gen_timestamp
- serialize.

* Implement Block model

* Simplify function signatures for vote functions

Change parameter interface for the following functions:

- has_previous_vote
- verify_vote_signature
- block_election_status

so that they take a block's id and voters instead of a fake block.

* Integrate Block and Transaction model

* Fix leftover tests and cleanup conftest

* Add bigchaindb-common to install_requires

* Delete transactions after block is written (#609)

* delete transactions after block is written

* cleanup transaction_exists

* check for duplicate transactions

* delete invalid tx from backlog

* test duplicate transaction

* Remove dead code

* Test processes.py

* Test invalid tx in on server

* Fix tests for core.py

* Fix models tests

* Test commands main fn

* Add final coverage to vote pipeline

* Add more tests to voting pipeline

* Remove consensus plugin docs and misc

* Post rebase fixes

* Fix rebase mess

* Remove extra blank line

* Improve docstring

* Remove comment

handled in bigchaindb/cryptoconditions#27;
see https://github.com/bigchaindb/cryptoconditions/issues/27

* Fix block serialization in block creation

* Add signed_ prefix to transfer_tx

* Improve docs

* Add library documentation page on pipelines

* PR feedback for models.py

* Impr. readability of get_last_voted_block

* Use dict comprehension

* Add docker-compose file to build and serve docs

locally for development purposes

* Change private_key for signing_key

* Improve docstrings

* Remove consensus docs

* Document new consensus module

* Create different transactions for the block

* Cleanup variable names in block.py

* Create different transactions for the block

* Cleanup variable names in block.py
2016-09-29 10:29:41 +02:00
vrde
c59bda653c
Remove extra fields from get_transaction 2016-09-28 15:10:21 +02:00
Ryan Henderson
92981e003d Core/198/handle stale transactions (#359)
* add timestamp to transaction assignment

* add reassignment delay to configuration

* refactor to multipipes

* # This is a combination of 7 commits.
# The first commit's message is:
stale transaction monitor and tests

# The 2nd commit message will be skipped:

#	simplify logic

# The 3rd commit message will be skipped:

#	node will assign to self

# The 4th commit message will be skipped:

#	block listens for insert and update

# The 5th commit message will be skipped:

#	more test coverage

# The 6th commit message will be skipped:

#	test coverage

# The 7th commit message will be skipped:

#	test coverage

* stale transaction monitor and tests

* update operation only returns new value
2016-09-07 16:26:41 +02:00
tim
dda16059ee Fix tests 2016-08-29 17:44:58 +02:00
diminator
827e58bc75
PR review @r-marques 2016-08-22 18:18:10 +02:00
diminator
1fbb0ed4ba Merge remote-tracking branch 'remotes/origin/master' into core/557/improve-get-transaction 2016-08-22 15:52:01 +02:00
diminator
d8df478925
optional tuple response instead of altering DB object 2016-08-22 12:19:06 +02:00
Sylvain Bellemare
6f159d3930 Closes #348 (#578) 2016-08-19 16:00:18 +02:00
ryan
1a174b54dc add tests 2016-08-18 16:58:41 +02:00
vrde
702fbe693f
Merge branch 'master' into refactor-multiprocessing-for-vote 2016-08-15 16:25:06 +02:00
ryan
6e279da9d4 remove block delete reverter 2016-08-12 11:21:03 +02:00
Elad-PC\elad
2e1abc3d6a fixed another test 2016-08-03 08:55:37 +02:00
Elad-PC\elad
f35d5a708e fixed tests to deal with new location of 'version' 2016-08-03 08:31:55 +02:00
vrde
074cae4484
Add last tests 2016-08-02 15:39:08 +02:00
vrde
74a5412cd9
WIP 2016-07-29 14:49:26 +02:00
vrde
ecf67d1e28
Add block pipeline 2016-07-25 13:30:31 +02:00
vrde
873ea891d6
Refactor method signature 2016-07-21 13:50:19 +02:00
vrde
0b1ce4ff4c
Remove duplicated tests 2016-07-19 17:51:42 +02:00
vrde
6b2d87b53f
Merge branch 'remove-block-number' 2016-07-18 16:50:14 +02:00
vrde
553148c5e4
Add CyclicBlockchainError exception, fix tests 2016-07-18 13:49:42 +02:00
ryan
7ce79c51ea correct type for spoofed timestamps
correct type for spoofed timestamps
2016-07-15 15:29:21 +02:00
vrde
8ac50bf0cc
Make sure we retrieve the last block in case timestamps collide 2016-07-14 17:10:55 +02:00
vrde
e0d0ab21d3
Add more blocks in inputs fixture 2016-07-14 15:03:16 +02:00
Ryan Henderson
7de9b1711f Fix non deterministic test (#441) 2016-07-14 10:33:35 +02:00
Ryan Henderson
47e1b3cf4e treat genesis block as valid (#433) 2016-07-14 10:31:10 +02:00
vrde
73d6add36f
Remove block_number [pair prog w/ @rhsimplex] 2016-07-13 17:30:13 +02:00
Ryan Henderson
073dcdaa79 Votes table (#379)
* create votes table and indexes

* initial db call rewrite

* setup votes table in tests

* rewrite election status

* update api tests

* update tests

* bigchaindb set-shards should change 'votes' table too

* Forgot to add change to bigchain.py in last commit

* update test

* move exceptions

* collapse line

* revise test

* remove obsolete test

* remove votelist from blocks

* sharding and replication

* documentation changes

* language change

* more readable assertions

* fix exception

* test exceptions

* remove parameter

* remove loop
2016-07-13 09:40:07 +02:00
Shaun Stanworth
181c8af2e7 Commit block to the DB 2016-07-01 12:31:07 +01:00
Shaun Stanworth
9d1bb889c4 Add tests for get_tx_by_payload_uuid 2016-07-01 11:32:57 +01:00
Sylvain Bellemare
7bd6d485bc Test Bigchain.get_blocks_status_containing_tx() (#399)
* Test Bigchain.get_blocks_status_containing_tx()

exception case

* Test Bigchaindb.has_previous_vote()

* Add missing blank lines (pep 8)

* Group imports

* Move ImproperVoteError into .exceptions.py

* Simplify logic

* Simplify formatting

* Imrpove the docstrings a bit

* Move GenesisBlockAlreadyExistsError

into .exceptions.py

* Remove unused import

* Add missing blank line

* Remove extra blank line

* Group imports from same module together

* Add test for Bigchain.transaction_exists()
2016-06-28 14:19:22 +02:00
troymc
cd7070722f Renamed Bigchain.federation_nodes as Bigchain.nodes_except_me 2016-06-16 16:58:01 +02:00
Rodolphe Marques
6d41f6971d UUID is added even if payload is None
Prevent the creation of empty blocks
Created and updated tests
2016-06-15 12:07:53 +02:00
Rodolphe Marques
a694efd9dc Round timestamp and add uuid to payload.
Timestamp is now returned in UTC with second precision.
Payload hash is replaced by an uuid4. This allows us to distinguish
between duplicated payloads.
Removed a deprecated test related to the payload hash.
Renamded secondary index payload_hash -> payload_uuid
2016-06-15 09:55:30 +02:00
tim
13e98f4316 Update cc API usage 2016-06-10 14:07:53 +02:00
diminator
aa53f20661 Merge remote-tracking branch 'remotes/origin/master' into feat/inverted-threshold-condition 2016-06-10 14:01:46 +02:00
Ryan Henderson
0f13da59bf Core/197/revert bigchain deletes (#330)
* naive revert

* skip voting if already voted

* typo

* poison pill

* tests

* reversions

* block reverter is separate process

* factor out previous vote checking

* add tests
2016-06-02 14:46:32 +02:00
diminator
de17f56ac2
fixed tests 2016-06-01 14:07:03 +02:00