Executes various FalkorDB test suites, including unit, e2e, and language compliance tests for development verification.

Install

mkdir -p .claude/skills/test-falkordb && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/16701" && unzip -o skill.zip -d .claude/skills/test-falkordb && rm skill.zip

Installs to .claude/skills/test-falkordb

Activation

This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.

Run FalkorDB's test suites - Rust unit tests, Python e2e/function/MVCC/concurrency tests, openCypher TCK compliance tests, and flow tests. Use when asked to run, narrow down, or debug a failing test, or to decide which suite covers a change.
241 chars✓ has a “when” trigger
Intermediate

Key capabilities

  • Run Rust unit tests for the graph crate
  • Execute Python e2e and function tests
  • Run Python MVCC and concurrency tests
  • Perform openCypher TCK compliance tests
  • Execute flow tests against a running module instance

How it works

This skill provides commands to run various FalkorDB test suites, including Rust unit tests, Python e2e/function/MVCC/concurrency tests, openCypher TCK compliance tests, and flow tests, ensuring the correct environment setup.

Inputs & outputs

You give it
FalkorDB code changes or test suite selection
You get back
Test results for Rust unit tests, Python e2e/function/MVCC/concurrency tests, TCK compliance tests, or flow tests

When to use test

  • Running rust unit tests
  • Executing python e2e tests
  • Verifying cypher compliance

About this skill

Test

All Python suites require the virtualenv. Locally it's ./venv (create once with python3 -m venv venv && pip install -r tests/requirements.txt); inside the devcontainer/CI it lives at /data/venv. The activation lines below fall back between the two so they work in either environment. The module must be built first (cargo build, see the build skill) for anything that loads libfalkordb.{so,dylib}.

Rust unit tests (default choice for Rust-only changes)

cargo test -p graph

Python e2e / function / MVCC / concurrency tests

source venv/bin/activate 2>/dev/null || source /data/venv/bin/activate
pytest tests/test_e2e.py tests/test_functions.py -vv       # e2e + function tests
pytest tests/test_mvcc.py tests/test_concurrency.py -vv     # MVCC + concurrency tests

Run a single file/suite by narrowing the pytest args, e.g. pytest tests/test_mvcc.py -vv.

TCK tests (openCypher language-compliance suite)

source venv/bin/activate 2>/dev/null || source /data/venv/bin/activate
TCK_DONE=tck_done.txt pytest tests/tck/test_tck.py -s              # all currently-passing scenarios
TCK_INCLUDE=<path> pytest tests/tck/test_tck.py -s                 # only scenarios under <path>
  • tck_done.txt is the checked-in allow-list of scenarios expected to pass; a scenario newly failing there is a regression, one newly passing should be added to the file.
  • Common TCK_INCLUDE paths: tests/tck/features/expressions/list, tests/tck/features/expressions/map, tests/tck/features/clauses/match, tests/tck/features/clauses/return.

Flow tests (query flows against a running module instance)

cargo build        # debug build required first (flow.sh defaults to target/debug)
./flow.sh

flow.sh supports env vars for narrowing/debugging a run:

  • TEST="tests/flow/test_function_calls" ./flow.sh — one file
  • TEST="tests/flow/test_function_calls:testFunctionCallsFlow.test89_JOIN" ./flow.sh — one test
  • FAIL_FAST=1 — stop on first failure, run serially (--parallelism 1)
  • RELEASE=1 — run against target/release instead of target/debug
  • Progress is tracked in flow_tests_done.txt / flow_tests_todo.txt; logs land in tests/flow/logs.

Notes

  • CI (rust-pr.yml) runs all of the above per PR/push, plus fuzzing and coverage — see the fuzz, profile, and coverage skills for those.
  • Some flow tests against the replica (-svc) are known-flaky under ASAN/coverage instrumentation due to a pre-existing concurrency race (atomic_refcell "already mutably borrowed"); if only those fail under those configurations, re-run before treating it as a regression.

If tests fail, analyze the output and help the user understand what went wrong.

When not to use it

  • When fuzzing (use fuzz skill)
  • When profiling (use profile skill)
  • When checking coverage (use coverage skill)

Prerequisites

venv/bin/activate or /data/venv/bin/activatecargo build

Limitations

  • All Python suites require the virtualenv.
  • The module must be built first for anything that loads libfalkordb.{so,dylib}.

How it compares

This approach offers a unified interface for executing FalkorDB's diverse test suites, managing virtual environments and build outputs, unlike running individual test commands manually.

Compared to similar skills

test side by side with the closest alternatives in the catalog.

SkillInstallsUpdatedSafetyDifficulty
test (this skill)01moReviewIntermediate
audit-prep-assistant12moReviewIntermediate
property-based-testing12moNo flagsAdvanced
netalertx-code-standards12moReviewIntermediate

Try saying

Example prompts that trigger this skill in your AI assistant.

You might also like

audit-prep-assistant

trailofbits

Prepares codebases for security review using Trail of Bits' checklist. Helps set review goals, runs static analysis tools, increases test coverage, removes dead code, ensures accessibility, and generates documentation (flowcharts, user stories, inline comments).

15

property-based-testing

trailofbits

Provides guidance for property-based testing across multiple languages and smart contracts. Use when writing tests, reviewing code with serialization/validation/parsing patterns, designing features, or when property-based testing would provide stronger coverage than example-based tests.

14

netalertx-code-standards

netalertx

NetAlertX coding standards and conventions. Use this when writing code, reviewing code, or implementing features.

12

review-implementation

karrioapi

Perform a fresh-context review of completed work against PRD, tests, and conventions.

00

deepwiki-rs

sopaco

AI-powered Rust documentation generation engine for comprehensive codebase analysis, C4 architecture diagrams, and automated technical documentation. Use when Claude needs to analyze source code, understand software architecture, generate technical specs, or create professional documentation from any programming language.

25170

api-test-generator

mikopbx

Генерация полных Python pytest тестов для REST API эндпоинтов с валидацией схемы. Использовать при создании тестов для новых эндпоинтов, добавлении покрытия для CRUD операций или валидации соответствия API с OpenAPI схемами.

16

Search skills

Search the agent skills registry