debug(ci): keep only Row-Level Security onwards in test_all.nim

This commit is contained in:
2026-05-13 13:46:54 +03:00
parent baf2b1a504
commit 92af288d06
-84
View File
@@ -55,90 +55,6 @@ import barabadb/protocol/scram
import barabadb/protocol/ratelimit import barabadb/protocol/ratelimit
import barabadb/schema/schema as schema import barabadb/schema/schema as schema
suite "TLS/SSL":
test "Create TLS config":
let config = newTLSConfig("cert.pem", "key.pem", "ca.pem", verifyPeer = true)
check config.certFile == "cert.pem"
check config.verifyPeer == true
test "Validate cert — missing file":
let errors = validateCert("nonexistent.pem")
check errors.len > 0
test "Certificate info parsing":
# Write a dummy PEM cert
let testCert = "/tmp/baradb_test_cert.pem"
writeFile(testCert, "Subject: CN=localhost\nIssuer: CN=localhost\n")
let info = parseCertInfo(testCert)
check info.subject.len > 0
check info.isSelfSigned # subject == issuer
test "TLS context creation with missing cert raises":
var raised = false
try:
discard newTLSContext(newTLSConfig("nonexistent.pem", "nonexistent.key"))
except IOError:
raised = true
check raised
test "Generate self-signed cert":
let (certPath, keyPath) = generateSelfSignedCert("/tmp/baradb_test_tls", "test.local")
# May fail if openssl not installed
if certPath.len > 0:
check fileExists(certPath)
check fileExists(keyPath)
# Should be able to create TLS context from generated cert
let ctx = newTLSContext(newTLSConfig(certPath, keyPath))
check ctx != nil
test "Server with TLS config":
var cfg = defaultConfig()
cfg.tlsEnabled = true
let (certPath, keyPath) = generateSelfSignedCert("/tmp/baradb_test_tls2", "test.local")
if certPath.len > 0:
cfg.certFile = certPath
cfg.keyFile = keyPath
var srv = newServer(cfg)
check srv != nil
check srv.tls != nil
suite "Triggers":
test "Parse CREATE TRIGGER":
let ast = parse("CREATE TRIGGER log_insert BEFORE INSERT ON users AS INSERT INTO audit_log VALUES ('insert', 'users')")
check ast.stmts.len == 1
check ast.stmts[0].kind == nkCreateTrigger
check ast.stmts[0].trigName == "log_insert"
check ast.stmts[0].trigTable == "users"
check ast.stmts[0].trigTiming == "before"
check ast.stmts[0].trigEvent == "INSERT"
check ast.stmts[0].trigAction.strVal.contains("INSERT")
check ast.stmts[0].trigAction.strVal.contains("audit_log")
test "Parse CREATE TRIGGER AFTER UPDATE":
let ast = parse("CREATE TRIGGER audit_update AFTER UPDATE ON orders AS INSERT INTO audit VALUES ('updated')")
check ast.stmts[0].kind == nkCreateTrigger
check ast.stmts[0].trigTiming == "after"
check ast.stmts[0].trigEvent == "UPDATE"
test "Parse CREATE TRIGGER INSTEAD OF DELETE":
let ast = parse("CREATE TRIGGER soft_delete INSTEAD OF DELETE ON users AS UPDATE users SET deleted = true WHERE id = OLD.id")
check ast.stmts[0].kind == nkCreateTrigger
check ast.stmts[0].trigTiming == "instead of"
check ast.stmts[0].trigEvent == "DELETE"
test "Parse DROP TRIGGER":
let ast = parse("DROP TRIGGER log_insert")
check ast.stmts.len == 1
check ast.stmts[0].kind == nkDropTrigger
check ast.stmts[0].trigDropName == "log_insert"
check ast.stmts[0].trigDropIfExists == false
test "Parse DROP TRIGGER IF EXISTS":
let ast = parse("DROP TRIGGER IF EXISTS old_trigger")
check ast.stmts[0].kind == nkDropTrigger
check ast.stmts[0].trigDropName == "old_trigger"
check ast.stmts[0].trigDropIfExists == true
suite "Row-Level Security": suite "Row-Level Security":
test "Parse CREATE USER": test "Parse CREATE USER":
let ast = parse("CREATE USER admin WITH PASSWORD 'secret' SUPERUSER") let ast = parse("CREATE USER admin WITH PASSWORD 'secret' SUPERUSER")