dragonfly/tests/fakeredis/test
Roman Gershman 6d1c22b64c
chore: GlobMatcher uses now reflex::Matcher regex engine (#4528)
Also consolidate benchmarking low level routines undeer dfly_core_test

```
BM_ParseFastFloat                   707 ns          707 ns      4005656
BM_ParseDoubleAbsl                 1460 ns         1460 ns      1927158
BM_MatchGlob/1000                   121 ns          121 ns     23701780
BM_MatchGlob/10000                  512 ns          512 ns      5481405
BM_MatchFindSubstr/1000             123 ns          123 ns     31114255
BM_MatchFindSubstr/10000           1126 ns         1126 ns      2522019
BM_MatchReflexFind/1000             118 ns          118 ns     22442417
BM_MatchReflexFind/10000            512 ns          512 ns      5414329
BM_MatchReflexFindStar/1000         106 ns          106 ns     26276727
BM_MatchReflexFindStar/10000        717 ns          717 ns      3719605
BM_MatchStd/1000                  19782 ns        19779 ns       128020
BM_MatchStd/10000                199809 ns       199781 ns        13837
BM_MatchRedisGlob/1000             1601 ns         1601 ns      1754635
BM_MatchRedisGlob/10000           16494 ns        16493 ns       171585
BM_MatchRe2/1000                   1039 ns         1039 ns      2709486
BM_MatchRe2/10000                 10041 ns        10040 ns       281296
```

What's curious is that now matching `*foobar*` on string is faster than
searching for 'foobar` using string::find() (BM_MatchGlob vs BM_MatchFindSubstr)

Improvement vs Redis is 10-30 times faster (BM_MatchRedisGlob vs BM_MatchGlob).

Signed-off-by: Roman Gershman <roman@dragonflydb.io>
2025-02-05 10:29:51 +02:00
..
test_hypothesis Fix test hypothesis (#4380) 2025-01-17 07:59:44 +02:00
test_json chore(fakeredis): Enable JSON tests in the Fakeredis tests (#3773) 2024-10-23 08:53:14 +02:00
test_mixins chore: GlobMatcher uses now reflex::Matcher regex engine (#4528) 2025-02-05 10:29:51 +02:00
test_stack fix: stop using openssl for container healthchecks (#4181) 2024-11-25 17:41:17 +02:00
__init__.py test: tests using fakeredis to check compatibility (#3534) 2024-08-22 22:30:42 +03:00
conftest.py chore:update fakeredis, remove irrelevant tests (#4014) 2024-11-17 20:24:46 +02:00
test_asyncredis.py chore:update fakeredis, remove irrelevant tests (#4014) 2024-11-17 20:24:46 +02:00
test_issues.py Fix test hypothesis (#4380) 2025-01-17 07:59:44 +02:00
test_transactions.py test: tests using fakeredis to check compatibility (#3534) 2024-08-22 22:30:42 +03:00
testtools.py test: tests using fakeredis to check compatibility (#3534) 2024-08-22 22:30:42 +03:00