GitHub user chewbranca opened a pull request:
https://github.com/apache/couchdb-couch/pull/3
1963 eunit bigcouch
This brings in the relevant tests for `couchdb-couch` from
https://github.com/apache/couchdb/pull/253 and updates them to work with the
BigCouch merge. The actual running of eunit tests will be added later in
another PR to the `couchdb` repo.
There are three items in particular I would like feedback on before this PR
gets merged. I've added a `test_util` module that includes functions for
starting/stopping CouchDB and similarly starting/stopping the `config`
application. It would be great to get some feedback on whether the approach
taken for starting those applications could be improved upon. The relevant
commits are 66ee5e3 and 634c475.
I also added the `test_util` module into the `src` dir of `couchdb-couch`
so that it's readily available to all the other test suites that need a running
CouchDB for testing, but there could be a better approach there.
The other question I have is on getting absolute paths for eunit. Currently
I'm using an environment variable passed from make to get access to the build
dir in `couch_eunit.hrl`. This is a bit of a hack, so alternative suggestions
are welcome. Also along these lines, I need to rework the paths in the
`?CONFIG_CHAIN` macro of `couch_eunit.hrl` to match whatever paths we end up
using for the generated eunit ini files.
There are a number of problematic tests that I've disabled for the time
being in 0efdc71. I think it's better to get a running test suite in place and
come back to those tests individually when we can.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/apache/couchdb-couch 1963-eunit-bigcouch
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/couchdb-couch/pull/3.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #3
----
commit 158ba77e137a83013843b8ff24f43eeafeffeafc
Author: Alexander Shorin <[email protected]>
Date: 2014-05-16T00:45:38Z
Port 001-load.t etap test suite to eunit
commit 709011ec8bc52d56ad71bb0578ab1a45d5097b87
Author: Alexander Shorin <[email protected]>
Date: 2014-05-16T01:19:05Z
Port 002-icu-driver.t etap test suite to eunit
See setup/0 comment for specific info about loading
couch_icu_driver with eunit.
commit 8e76f7dd3f83ade2762f3b3d0756361a8e720fcc
Author: Alexander Shorin <[email protected]>
Date: 2014-05-16T14:38:56Z
Port 010-file-basics.t and 011-file-headers.t etap test suites to eunit
Both merged into single suite since they tests single target and shares
common bits.
commit ed49779f507ca2635b7f171aaa8ae65bff84a2a8
Author: Alexander Shorin <[email protected]>
Date: 2014-05-16T23:28:14Z
Port 020-btree-basics.t and 021-btree-reductions.t etap suites to eunit
Both merged into single suite since they tests single target and shares
common bits.
commit 83a1c12f5fea90e32fb0d340137ccb1b8b1b8e71
Author: Alexander Shorin <[email protected]>
Date: 2014-05-16T23:42:01Z
Port 030-doc-from-json.t and 031-doc-to-json.t etap suites to eunit
Both merged into single suite since they tests single target and shares
common bits.
commit 6352b7f13ed912b5c61313acda8b325e9892fa68
Author: Alexander Shorin <[email protected]>
Date: 2014-05-17T00:16:38Z
Port 040-util.t etap test suite to eunit
commit bf86b7da92ef67bba2920a2b73bf17683b784696
Author: Alexander Shorin <[email protected]>
Date: 2014-05-17T00:23:25Z
Port 041-uuid.t etap test suite to eunit
Config files are removed in favor of using couch_config API instead.
commit 423173fb337c385c1dc8ca4a12f2d1455eb4230b
Author: Alexander Shorin <[email protected]>
Date: 2014-05-18T10:04:08Z
Port 042-work-queue.t etap test suite to eunit
Etap tests were made in flow style, testing the same things multiple
times without real need. For eunit they are split into small test cases
to focus on testing goals.
Timeout on receive is decreased from 3000 to 100.
commit d5f48793c7bf360797585e5c1cb864b92b390afb
Author: Alexander Shorin <[email protected]>
Date: 2014-05-18T10:35:58Z
Port 043-find-in-binary.t etap test suite to eunit
It been merged into couch_util_tests suite.
commit 0110ad28169f58b52ee08dd8fc22e35f5c0a5b1d
Author: Alexander Shorin <[email protected]>
Date: 2014-05-18T10:45:05Z
Port 050-stream.t etap test suite to eunit
commit fcec86cbdd8c1a6c935ed667c8515e9602f51b99
Author: Alexander Shorin <[email protected]>
Date: 2014-05-18T10:53:03Z
Port 06[0-5]-kt-*.t etap test suites to eunit
All merged into single suite since they're test the same module.
commit 16fc202ba2ba93bc340dfd66c6e3e71e510913a7
Author: Alexander Shorin <[email protected]>
Date: 2014-05-19T01:36:06Z
Port 070-couch-db.t etap test suite to eunit
Fix ERL_LIB environment variable setting. Add ?tempdb macros for
unique temporary database name generation.
commit 4bc3ab3aa0282c7502bb43523fec1c97762a91df
Author: Alexander Shorin <[email protected]>
Date: 2014-05-20T03:16:41Z
Port 072-cleanup.t etap test suite to eunit
requests functions from test_util were moved to test_request module
with nicer and simpler API.
commit 66f09010fe6a5077f41b6a9c10e990cc06e6dd60
Author: Alexander Shorin <[email protected]>
Date: 2014-05-20T03:19:22Z
Port 073-changes.t etap test suite to eunit
For heartbeats test they don't being counted anymore since their
amount is heavy depends from the overall system performance and some
assertions may fail or not because of that. Instead of this, we just
ensure that their amount is going to increase over the time.
commit b98731e2ba545d0376f4bb23a69d056654751fa3
Author: Alexander Shorin <[email protected]>
Date: 2014-05-21T14:58:12Z
Port 074-doc-update-conflicts.t etap test suite to eunit
Timeout decreased, added 10K clients case
commit ca20e5a005c30820273b530e43e34be2c7358596
Author: Alexander Shorin <[email protected]>
Date: 2014-05-22T09:07:24Z
Port 075-auth-cache.t etap test suite to eunit
Timeouts are removed.
commit 7cb4255f08d24601d2a184425afc129e287b0924
Author: Alexander Shorin <[email protected]>
Date: 2014-05-22T16:17:47Z
Port 076-file-compression.t etap test suite to eunit
The original test suite was decoupled into compaction and comparison
cases.
commit b61772a135dff288e36b0baffb04551522c4dc18
Author: Alexander Shorin <[email protected]>
Date: 2014-05-22T16:31:09Z
Port 077-couch-db-fast-db-delete-create.t etap test suite to eunit
Merged into couch_db_tests suite.
commit f98955dbea86817407cb6f0ee100d66707ddbb7e
Author: Alexander Shorin <[email protected]>
Date: 2014-05-26T16:23:41Z
Port 090-task-status.t etap test suite to eunit
Split huge test case into multiple ones. Fix issue with get_task_prop
when Acc may be reset if searched task isn't last in the list.
commit 5e87d42c9900b2340b7a4d71e03d0f1f4b87302a
Author: Alexander Shorin <[email protected]>
Date: 2014-05-26T16:59:45Z
Port 100-ref-counter.t etap test suite to eunit
commit 4653aed0e6221afa6e889f804e95a2b66c398e92
Author: Alexander Shorin <[email protected]>
Date: 2014-05-26T19:57:38Z
Port 120-stats-collect.t etap test suite to eunit
commit a3e5ade348faebfebcbde31564a0ced3c6e2a35e
Author: Alexander Shorin <[email protected]>
Date: 2014-05-27T14:27:53Z
Port 121-stats-aggregates.t etap test suite to eunit
Merged into couch_stats_tests suite.
commit 31fe00f814badaf80948da17b9bbe247df74f91b
Author: Alexander Shorin <[email protected]>
Date: 2014-05-28T01:32:11Z
Port 130-attachments-md5.t etap test suite to eunit
Add random document id generator macros.
Have to use handmade http client instead of ibrowse since it makes too
complicated sending chunked requests.
commit b886c0e831407b3ce921f1a3fdaab2d70be074c1
Author: Alexander Shorin <[email protected]>
Date: 2014-06-02T21:51:46Z
Port 140-attachments-comp.t etap test suite to eunit
- Merge into couchdb_attachments_tests suite;
- Add PUT requests to test_request util;
- Remove dependency from files outside fixtures directory;
- Group test cases to reduce amount of duplicate code;
- Fix hidden issue with gzip encoding: for encoding_length stub info
check using zlib:gzip on 2KiB+ files leads to mismatch by 2-4 bytes
and this difference grows with file size. Using gzip fun code from
couch_stream solves the issue.
commit f0d0f389f21562a2cbb3d7c301933cd454b35ee2
Author: Alexander Shorin <[email protected]>
Date: 2014-06-03T04:49:32Z
Port 150-invalid-view-seq.t etap test suite to eunit
Merged into couchdb_views_tests suite.
commit 14f8f4ac686218064b4b1ce1dcc49a28bc7f3e2f
Author: Alexander Shorin <[email protected]>
Date: 2014-06-03T06:58:58Z
Port 160-vhosts.t etap test suite to eunit
Split Rewrite and OAuth tests.
commit 20b2cdaa64978f6378111fc5e570bb9ed14cd138
Author: Alexander Shorin <[email protected]>
Date: 2014-06-03T08:32:02Z
Port 170-os-daemons.t etap test suite to eunit
commit cf9a4ad9eff7e10110dfc411783fc2c6e6ac4268
Author: Alexander Shorin <[email protected]>
Date: 2014-06-03T10:10:25Z
Port 171-os-daemons-config.t etap test suite to eunit
Merged into couchdb_os_daemons_tests suite.
commit 90da55395b7e61d5ef5aa1f60dbe4dad82db1a2c
Author: Alexander Shorin <[email protected]>
Date: 2014-06-03T11:54:33Z
Port 172-os-daemons-errors.t etap test suite to eunit
Merged into couchdb_os_daemons_tests suite.
Removed errors redirection to /dev/null to explicitly signal that
permissions are set correctly.
commit fc1740d9812e801f21bd09fb8b5b846d4d7973fb
Author: Alexander Shorin <[email protected]>
Date: 2014-06-04T08:54:44Z
Port 180-http-proxy.t etap test suite to eunit
----
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---