33 Commits

Author SHA1 Message Date
Rodolphe Marques
b523ba3fe5 Rename unspent -> spent in outputs endpoint
- If spent=None return all outputs
- If spent=True return only spent outputs
- If spent=False return only unspent outputs
- Updated documentation
- Add the ability to return only spent outputs in core
- Added and update tests
2017-06-16 10:31:46 +02:00
Krish
f35f01f1cb Add SSL support for MongoDB connections (#1510)
* Add SSL support for MongoDB connections

* Tests for TLS connectivity and other fixes

* Add test for ssl parameters

* Add test for AuthenticationError

* Cleanup branch

* Split env vars as per @r-marques suggestion

* Remove SSL_ENABLED and use BIGCHAINDB_DATABASE_SSL instead

* Changes as per comments from @r-marques

* Remove redundant tests

* Test for ConfigurationError
2017-06-13 12:04:34 +02:00
libscott
32fc9244e6 Benchmark for CREATE transactions (#1511)
* benchmark code, throughput stats collection with graphite

* benchmarks readme

* benchmark readme update with results

* Update README.md

* add comment on why 10000 backlog size in benchmark
2017-06-10 10:01:28 +02:00
Sylvain Bellemare
c12f08a92c Add test to reproduce false double spend
see issue #1271
2017-03-16 17:04:50 +01:00
Scott Sadler
dc58466de3 Merge branch 'master' into voting-class-integration 2017-03-13 13:35:03 +01:00
Scott Sadler
e011f50bc7 remove stray test 2017-03-08 17:33:35 +01:00
Scott Sadler
ffccf86c91 Merge remote-tracking branch 'origin/master' into voting-class-integration 2017-03-08 12:54:33 +01:00
vrde
c5b496b006
Merge branch 'master' into unify-mongodb-and-rethinkdb-connection 2017-03-03 13:52:56 +01:00
Scott Sadler
ff7e4d11d1 remove test from test_core.py which is just wrong 2017-02-23 21:53:12 +01:00
vrde
c11808ecc5
Move common stuff to generic Connection class 2017-02-23 17:20:21 +01:00
Scott Sadler
6e7534d3c2 cleanup; remove transaction_exists and has_transaction 2017-02-22 13:55:29 +01:00
Rodolphe Marques
e7ffcf5705 Added replicaset name to bigchaindb config (#1063)
* Added replicaset name to bigchaindb config

* changed travis replSet to match bigchaindb default

* Updated initialize_replica_set

It now initializes the replica set with the name provided by the
bigchaindb config file.


* initialize_replica_set is now called when creating a mongodb connection.

This way we are sure that a replica set exists when we return a
connection.

* Moved the initialize replica set logic to the connection.

* update the config documentation
2017-01-20 14:05:28 +01:00
Brett Sun
8fa3245309 Rename any *util.py to *utils.py (#991) 2016-12-22 17:39:39 +01:00
Brett Sun
2882bee48e Small flake8 fixes for tests (#987) 2016-12-22 11:57:13 +01:00
Sylvain Bellemare
fa79fe6783 Add session scope test setup for config and db
resolves #966
2016-12-20 20:37:28 +01:00
vrde
95b353459d Add pytest option to switch backend in tests 2016-12-12 15:53:56 +01:00
vrde
3c3c1ce880 Improve tests for class initialization 2016-12-12 15:53:56 +01:00
Brett Sun
af243907dd Fix wrong argument order for python 3.4 2016-12-12 15:53:56 +01:00
Brett Sun
2657226573 Fix Bigchain class tests due to changes to internal attributes 2016-12-12 15:48:48 +01:00
Brett Sun
108b5cba30 Fix tests broken by adding a 'backend' key to the config 2016-12-12 15:48:48 +01:00
Brett Sun
941b47d1ac Fix misc tests affected by changes related to database abstraction 2016-12-12 15:48:48 +01:00
vrde
40ba9d8c6a
Fix test_transaction_exists 2016-10-27 16:50:30 +02:00
vrde
815b4318ba
Move calls to DB to specific backend module 2016-10-26 17:48:53 +02:00
vrde
15fb27f327
Remove conn property from core API 2016-10-18 17:32:32 +02:00
tim
6346dc1f74 Remove unnecessary test
Checking whether or not write_transaction modifies a dict is not
relevant anymore, as no dict is passed.
2016-10-17 13:48:53 +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
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
2269e1380b Remove reference from signed tx 2016-08-29 17:21:07 +02: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
Matt Smith
ad535c7895 Tests for loading consensus plugins 2016-03-14 13:27:17 -07:00
vrde
3a714a7f8e Add config to blueprint and fix tests madness
There was a problem related to the import of the module
`bigchaindb.web.views`.
The module, when imported, inizialises a new `Bigchain` instance, and
this is wrong for testing and because it's a bad practice.

I spent more or less 2h finding out the problem.
2016-03-03 01:40:40 +01:00
Sylvain Bellemare
5b8a31a341 Re-worked tests such that #27 is covered 2016-02-15 16:30:37 +01:00