mirror of
https://github.com/scylladb/scylladb.git
synced 2026-04-27 20:05:10 +00:00
hget and hset commands using hashes internally, thus they are not using the existing write_strings() function. Limitations: - hset only supports 3 params, instead of multiple field/value list that is available in official redis-server. - hset should return 0 when the key and field already exists, but I am not sure it's possible to retrieve this information without doing read-before-write, which would not be atomic. I factorized a bit the query_* functions to reduce duplication, but I am not 100% sure of the naming, it may still be a bit confusing between the schema used (strings, hashes) and the returned format (currently only string but array should come later with hgetall). Signed-off-by: Etienne Adam <etienne.adam@gmail.com> Message-Id: <20200830190128.18534-1-etienne.adam@gmail.com>
Tests for Scylla with Redis API that should also pass, identically, against Redis.
Tests use the redis library for Redis API, and the pytest frameworks (both are available from Linux distributions, or with "pip install").
To run all tests against the local installation of Scylla with Redis API on
localhost:6379, just run pytest.
Some additional pytest options:
- To run all tests in a single file, do
pytest test_strings.py. - To run a single specific test, do
pytest test_strings.py::set. - Additional useful pytest options, especially useful for debugging tests:
- -v: show the names of each individual test running instead of just dots.
- -s: show the full output of running tests (by default, pytest captures the test's output and only displays it if a test fails)