summaryrefslogtreecommitdiff
path: root/testing
AgeCommit message (Collapse)Author
2017-06-24[test] adapt tests to new python packagedrebs
2017-05-31[tests] use pysqlcipher workaround here tooKali Kaneko
2017-05-12[refactor] make blobs resource backend configurableVictor Shyba
- Resolves: #8804
2017-05-12[tests] fix flaky blobs manager tests due id reuseVictor Shyba
2017-05-10[bug] fix docker image generationMicah Anderson
The image location needs to be changed to the new location and the docker.io package needs to be available in the image to build it
2017-05-10[feat] Build/push docker (see leap/platform#8755).Micah Anderson
When the testing/docker directory is changed, the `build_docker_image` CI job is triggered to build the docker image and push it to the soledad container registry. This is part of an effort to move all the docker images into their own project's container registry, and to build/provide them automatically (see leap/platform#8755). This is accomplished by the following: added the necessary overlay DOCKER_DRIVER variable to .gitlab-ci.yml added a build_docker_image job with docker:dind service enabled enabled container registry in soledad project added LEAP_CODE_O_MATIC_PRIVATE_TOKEN to project moved docker image from scripts:docker/soledad to soledad:testing/docker docker push gitlab-buildpackage:soledad to soledad container registry removed gitlab-buildpackage:soledad image and scripts/docker/soledad changed image in .gitlab-ci.yml to use new location Note: until https://gitlab.com/gitlab-org/gitlab-ce/issues/19813 is resolved, we have to use this method.
2017-05-09[refactor] move interfaces outKali Kaneko
- rename add_tag method - reorder blob interface methods for clarity - use mkdir_p from leap.common
2017-05-08[refactor] _database -> _dbVictor Shyba
2017-05-04[refactor] improve readability on _documentVictor Shyba
2017-05-04[tests] improve readabilityVictor Shyba
2017-05-02[feature] add and integrate DELETE to blobs serverVictor Shyba
Add a DELETE method for blobs server and integrate it into client's BlobManager. - Resolves: #8846
2017-05-01[feature] delete method on blob sqlcipher backendVictor Shyba
- Related: #8846
2017-05-01[refactor] unify path validationVictor Shyba
2017-05-01[refactor] merge refactor from drebsVictor Shyba
2017-05-01[refactor] create client _database moduledrebs
2017-05-01[feat] add attachments apidrebs
2017-05-01[feature] blobs path validationVictor Shyba
Check if user and blob_id are valid strings, then check if the resulting path is a subdirectory of blobs configured path. - Related: #8800
2017-05-01[test] missing inlineCallbackVictor Shyba
- Related: #8812
2017-05-01[test] add tests for sqlcipher client backendVictor Shyba
BlobManager tests covers them indirectly, but testing them directly may help locating source of bugs. - Related: #8812
2017-05-01[test] rename file to match test case nameVictor Shyba
- Related: #8812
2017-05-01[test] rename and add comments for clarityVictor Shyba
- Related: #8812
2017-05-01[bug] fail locally if blob existsVictor Shyba
We can't let the local DB try an isertion before making sure doc isn't already there. - Resolves: #8845
2017-04-27[test] monitor cpu/mem for all benchmarksdrebs
2017-04-27[test] add memory measurementdrebs
2017-04-27[test] measure cpu percentage during benchmarkdrebs
2017-04-26[feature] sanitize resource argumentsVictor Shyba
_validate will check if user_id and blob_id are letter, numbers, dashes and underscores. It is called on render_GET and render_POST, validating incoming arguments before handling on backend. - Resolves: #8832
2017-04-26[feature] use Twisted getProcessOutput on backendVictor Shyba
This makes process communication async during quota measurement, as specified on #8832 - Related: #8832
2017-04-25[test] ensure rev system works in shared dbdrebs
During a meeting with pixelated we were asked to ensure that the u1db revision system was working for the shared database. This commit adds a test to make sure that documents in the shared database can be updated successfully if the include the correct revision, but will fail if the include the incorrect revision. Resolves: #8842.
2017-04-19[test] avoid running sqlcipher synchonous tests when benchmarkingdrebs
SQLCipher synchronous benchmark tests were introduced when we started developing benchmark tests to compare synchronous and asynchronous code. Synchronous access to sqlcipher database is not used in soledad, and those tests are much slower than asynchronous tests (more than 10 times using ssd drive), so we want to avoid running them on ci. This commit introduces a "synchronous" marker and avoid running tests markes as such in ci environment.
2017-04-19[test] use latest pysqlcipher-benchmark for benchmarksdrebs
There were some changes needed in pytest-benchmark so we could successfully use it for soledad benchmarks graphing: https://github.com/ionelmc/pytest-benchmark/pull/73 https://github.com/ionelmc/pytest-benchmark/pull/74 https://github.com/ionelmc/pytest-benchmark/pull/75 The contributions were accepted but not released yet, so this commit uses the code from upstream git repository's master branch.
2017-04-19[tests] dont mock local db on local testsVictor Shyba
2017-04-19[tests] set pool to None during testsVictor Shyba
2017-04-19[test] change assert for self.assertXVictor Shyba
2017-04-19[feature] fetch new blobs from serverVictor Shyba
Check what server has, what we have, compare, fetch missing. - Related: #8808
2017-04-19[test] change assert for self.assertXVictor Shyba
2017-04-19[feature] add send_missing to send pending uploadsVictor Shyba
This method will gather a list of local docs and a list of remote docs, compare them and send docs which server doesn't have. - Related: #8807
2017-04-15[test] enforce bundled pysqlcipher in benchmark testsdrebs
The debian package for libsqlcipher does not enable the use of usleep(), and that might cause timeouts when doing concurrent access to sqlcipher databases. See: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=859685 In benchmark tests we use twisted's asynchronous dbapi for creating thousands of documents, and if usleep() is not enabled this operation is very likelly to fail with a "db is locked" error. This commit adds a workaround for benchmark tests by reinstalling pysqlcipher with the "--bundled" option, what causes libsqlcipher to be built and bundled in the python package, with usleep() enabled. Resolves: #8835
2017-04-10[refactor] use fixed rev and remove doc_id (blobs)Victor Shyba
doc_id wasn't being stored, loaded or used anywhere except for authentication. This commit removes it and uses a fixed value for rev since blobs is supposed to be immutable. - Resolves: #8813
2017-04-04[feat] add the host hostname to benchmark machine infodrebs
2017-04-04[test] change assert for self.assertXVictor Shyba
2017-04-04[docs] improve docstrings and comments from reviewVictor Shyba
2017-04-04[style] naming improvementsVictor Shyba
2017-04-04[refactor] list is remote_list, avoiding confusionVictor Shyba
2017-04-04[feature] add listing to local blob dbVictor Shyba
2017-04-04[feature] add blobs listingVictor Shyba
2017-04-04[refactor] adds a PreamblePipe for preamble downloadVictor Shyba
Downloading until there is a space then splitting the content was a mess. Extracted this behaviour out of DecrypterBuffer into a new component so it eases testing by introducing a single responsibility class.
2017-04-04[refactor] extracts tail logic into TruncatedTailPipeVictor Shyba
2017-04-04[feature] use 409 status code for existing blob idVictor Shyba
Raising was generating 500, which is a generic status code for server side errors. This commit adds proper status code of 409 while handling the error on client side by translating the code into a proper exception class.
2017-04-04[test] fix treq -> _client changeVictor Shyba
2017-04-04[bug] cache pip instead of toxVictor Shyba
Caching .tox breaks when installing new dependencies. Caching pip instead and asking tox to always recreate will ensure newer dependencies are installed while getting existing ones from cache.