- Add PostgreSQL client functionality for database interactions. - Add Redis client functionality for cache and data store operations. - Extend Rhai scripting with PostgreSQL and Redis client modules. - Add documentation and test cases for both clients.
60 lines
1.7 KiB
Plaintext
60 lines
1.7 KiB
Plaintext
// 03_redis_authentication.rhai
|
|
// Tests for Redis client authentication (placeholder for future implementation)
|
|
|
|
// Custom assert function
|
|
fn assert_true(condition, message) {
|
|
if !condition {
|
|
print(`ASSERTION FAILED: ${message}`);
|
|
throw message;
|
|
}
|
|
}
|
|
|
|
// Helper function to check if Redis is available
|
|
fn is_redis_available() {
|
|
try {
|
|
// Try to execute a simple ping
|
|
let ping_result = redis_ping();
|
|
return ping_result == "PONG";
|
|
} catch(err) {
|
|
print(`Redis connection error: ${err}`);
|
|
return false;
|
|
}
|
|
}
|
|
|
|
print("=== Testing Redis Client Authentication ===");
|
|
|
|
// Check if Redis is available
|
|
let redis_available = is_redis_available();
|
|
if !redis_available {
|
|
print("Redis server is not available. Skipping Redis authentication tests.");
|
|
// Exit gracefully without error
|
|
return;
|
|
}
|
|
|
|
print("✓ Redis server is available");
|
|
|
|
print("Authentication support will be implemented in a future update.");
|
|
print("The backend implementation is ready, but the Rhai bindings are still in development.");
|
|
|
|
// For now, just test basic Redis functionality
|
|
print("\nTesting basic Redis functionality...");
|
|
|
|
// Test a simple operation
|
|
let test_key = "auth_test_key";
|
|
let test_value = "auth_test_value";
|
|
|
|
let set_result = redis_set(test_key, test_value);
|
|
assert_true(set_result, "Should be able to set a key");
|
|
print("✓ Set key");
|
|
|
|
let get_result = redis_get(test_key);
|
|
assert_true(get_result == test_value, "Should be able to get the key");
|
|
print("✓ Got key");
|
|
|
|
// Clean up
|
|
let del_result = redis_del(test_key);
|
|
assert_true(del_result, "Should be able to delete the key");
|
|
print("✓ Deleted test key");
|
|
|
|
print("All Redis tests completed successfully!");
|