Commit Graph

798 Commits

Author SHA1 Message Date
Kelvin Clement Mwinuka
b48ee54228 Updated test suites to retry connection to tcp server. Use concurrency to setup cluster in Test_Cluster suite. 2024-05-31 18:17:36 +08:00
Kelvin Clement Mwinuka
c7560ce9dd Updated all test suites to include connection and server shutdown on cleanup. 2024-05-31 01:30:18 +08:00
Kelvin Clement Mwinuka
6f8511632e Close client connection on quit command 2024-05-30 20:01:24 +08:00
Kelvin Clement Mwinuka
502e804459 Removed logic to get unexported methods from the echovault package in all tests. 2024-05-30 19:33:01 +08:00
Kelvin Clement Mwinuka
e1d5e8203f Disabled cluster test until a more efficient method is found. 2024-05-29 23:15:27 +08:00
Kelvin Clement Mwinuka
e8840cbc35 Added test for forward command 2024-05-29 19:04:40 +08:00
Kelvin Clement Mwinuka
3202120626 Added client openssl files in order to faciliate MTLS testing. Implemented test of MTLS server. 2024-05-29 15:27:12 +08:00
Kelvin Clement Mwinuka
ae5a675929 Added test for TLS connection 2024-05-29 15:08:41 +08:00
Kelvin Clement Mwinuka
06ce6bfeaf Instead of checking if a value is replicated across the entire cluster, only check if it's present in a cluster quorum. Fixed race conditions in pubsub API by replacing connections map with sync.Map 2024-05-28 20:26:03 +08:00
Kelvin Clement Mwinuka
7691ec432d Added test coverave for sorted set api methods 2024-05-28 16:49:40 +08:00
Kelvin Clement Mwinuka
bb667cf7f7 Added test coverave + fixed some bugs with pubsub api methods. 2024-05-27 18:48:08 +08:00
Kelvin Clement Mwinuka
30b8b205a7 Implemented tests for api_acl.go file 2024-05-27 15:50:25 +08:00
Kelvin Clement Mwinuka
ef04bae730 Deleted raft and memberlist test files as there's no need to test internal raft and memberlist functionality. The cluster behaviour can be tested at the echovault package level. 2024-05-27 13:34:08 +08:00
Kelvin Clement Mwinuka
7807569975 Created MakeCluster function to reuse logic for creating clusters. Created test files in raft and memberlist packages to add them to test coverage statistics. 2024-05-27 13:10:26 +08:00
Kelvin Clement Mwinuka
0108444d69 Replaced fmt.Println statements with log.Println.
Return "empty command" error from handleCommand method if an empty command is passed to the server.
Wait until connection is no longer nil in acl package tests.
2024-05-27 11:45:48 +08:00
Kelvin Clement Mwinuka
9904fcdbb7 Wait for cluster followers to join cluster before proceeding with raft test in echovault package. 2024-05-27 11:12:34 +08:00
Kelvin Clement Mwinuka
93a616c5c1 Updated RAFT layer to use new keyspace methods. Fixed API methods for HSET and SINTERCARD to match new key overwriting behaviour. 2024-05-26 15:49:51 +08:00
Kelvin Clement Mwinuka
98f4ca3a65 Updated CommandHandlerFuncParams docs comment 2024-05-26 15:30:12 +08:00
Kelvin Clement Mwinuka
abee9ea858 Uncommented AddCommand method 2024-05-26 15:26:04 +08:00
Kelvin Clement Mwinuka
e3ecc42454 Updated string commands package to use new keyspace methods and resp connection for tests 2024-05-26 15:04:57 +08:00
Kelvin Clement Mwinuka
edf82886bd Updated sorted_set commands package to use new keyspace methods and its tests to use resp connection instead of calling handler directly 2024-05-26 14:48:13 +08:00
Kelvin Clement Mwinuka
15191dccee Implemented new param methods and testing through resp connection in set commands package 2024-05-26 08:41:29 +08:00
Kelvin Clement Mwinuka
9f371caa4b Deleted debug fmt.Println statements 2024-05-26 02:01:06 +08:00
Kelvin Clement Mwinuka
af8a002ba5 Updated list command tests to use resp connection instead of directly invoking internal method 2024-05-26 01:59:44 +08:00
Kelvin Clement Mwinuka
926a008c23 Updated generic and hash package tests to use tcp connection instead of calling the handler directly 2024-05-24 13:40:40 +08:00
Kelvin Clement Mwinuka
43361cdd42 Updated keyspace methods' signatures and made them all private. Ditched lock-per-key for a store-wide rwmutex. Updated HandlerFuncParams to match new keyspace method signatures. 2024-05-22 22:44:59 +08:00
Kelvin Clement Mwinuka
f894a531b0 Added happy path test case for data replication 2024-05-22 16:11:00 +08:00
Kelvin Clement Mwinuka
7e585dc256 Added supported commands links to README.md 2024-05-20 23:08:29 +08:00
Kelvin Mwinuka
40fc986f2a Merge pull request #42 from EchoVault/chore/fix-minor-issues
Fixed users unlock in ACL LOAD command handler
v0.6.0
2024-05-19 04:34:37 +08:00
Kelvin Clement Mwinuka
a9c11adcd6 Fixed users unlock in ACL LOAD command handler 2024-05-19 04:28:06 +08:00
Kelvin Mwinuka
028f731167 Update README.md 2024-05-18 22:57:57 +08:00
Kelvin Mwinuka
0d57b721dc Update README.md 2024-05-18 22:56:21 +08:00
Kelvin Mwinuka
e8fe6b179e Merge pull request #41 from EchoVault/chore/fix-minor-issues
Chore/fix minor issues
2024-05-18 22:52:58 +08:00
Kelvin Clement Mwinuka
c634b1b20e Return ok boolean instead of OK string in embedded api methods that return ok status. Updated tests to match new return types 2024-05-18 22:49:21 +08:00
Kelvin Clement Mwinuka
7fb236e631 Added HGet to embedded API 2024-05-14 03:30:51 +08:00
Kelvin Clement Mwinuka
aa7b5fa8cc Added ZRemRangeByLex and ZRemRangeByRank to embedded API. 2024-05-14 02:11:10 +08:00
Kelvin Clement Mwinuka
aac4349480 Merge branch 'update/README.md' 2024-05-09 02:24:49 +08:00
Kelvin Clement Mwinuka
26a709a469 Added test case for command handler in modules test in api_admin 2024-05-09 02:24:01 +08:00
Kelvin Mwinuka
3629a4a160 Merge pull request #39 from EchoVault/update/README.md
Added Test Coverage for Admin module
2024-05-09 02:09:37 +08:00
Kelvin Clement Mwinuka
1981fe9d1d Added unit tests for COMMAND COUNT and COMMAND LIST commands in admin module 2024-05-09 02:06:31 +08:00
Kelvin Clement Mwinuka
df51142217 Implemented test for LoadModule, ListModules, and UnloadModule. Added check for existence of module file using os.Stat before attempting to open the file. Added build-module-tests step in makefile to simplify building modules for unit and race tests 2024-05-09 01:36:52 +08:00
Kelvin Mwinuka
6ed59ef6de Merge pull request #38 from EchoVault/update/README.md
Updated README.md in preparation for new docs site && Added tests for admin module commands
2024-05-09 00:14:24 +08:00
Kelvin Clement Mwinuka
270c5ef002 Use make scripts to run tests in build workflow 2024-05-09 00:11:07 +08:00
Kelvin Clement Mwinuka
cf38d17221 Disabled MODULE LIST command test 2024-05-09 00:07:51 +08:00
Kelvin Clement Mwinuka
cfa8e35997 Use path.Join instead of hardcoded path to load mdules in admin tests. 2024-05-09 00:05:01 +08:00
Kelvin Clement Mwinuka
ba48a517e4 Re-enabled cleanup of testdata folder after completing Test_AdminCommand suite 2024-05-08 23:54:31 +08:00
Kelvin Clement Mwinuka
c5c1487799 Fixed race condition in admin module commands tests by passing --race flag to build command for modules 2024-05-08 23:53:12 +08:00
Kelvin Clement Mwinuka
b3ceecf80f Removed unnecessary fmt.Println statement 2024-05-08 23:21:35 +08:00
Kelvin Clement Mwinuka
63524c0996 Fixed type in admin module test file 2024-05-08 23:20:23 +08:00
Kelvin Clement Mwinuka
d28bda98bb Added makefile command to build modules for admins module tests.
Implemented more sensible logic for testing the COMMANDS command instead of just printing each returned command.
Implemented tests for MODULE LOAD, MODULE UNLOAD, and MODULE LIST commands.
Implemented testdata folder cleanup after finishing admin command tests.
2024-05-08 23:17:45 +08:00