# faux_redis v1.0.2 - Table of Contents

Controllable fake Redis server for integration testing (ejabberd/XMPP-friendly)

## Pages

- [FauxRedis](readme.md)
- [Changelog](changelog.md)

## Modules

- [FauxRedis.Glob](FauxRedis.Glob.md): Redis-style glob pattern matching used by `KEYS` and `SCAN ... MATCH`.

- API
  - [FauxRedis](FauxRedis.md): Public API for starting and controlling dummy Redis servers for integration tests.
  - [FauxRedis.Case](FauxRedis.Case.md): ExUnit case template that spins up an isolated FauxRedis server per test.

- Implementation
  - [FauxRedis.Application](FauxRedis.Application.md): OTP application entry point for `:faux_redis`.
  - [FauxRedis.Command](FauxRedis.Command.md): Representation of a single Redis command invocation.
  - [FauxRedis.Connection](FauxRedis.Connection.md): Per-client connection process.
  - [FauxRedis.MockEngine](FauxRedis.MockEngine.md): Evaluation engine for mock and expectation rules.
  - [FauxRedis.MockRule](FauxRedis.MockRule.md): Definition of a single mock or expectation rule.
  - [FauxRedis.RESP](FauxRedis.RESP.md): Minimal RESP2 encoder/decoder used by `FauxRedis`.
  - [FauxRedis.Server](FauxRedis.Server.md): OTP process that owns the TCP listener, manages connection processes, holds
the in-memory store and mock rules, and implements Redis command semantics.
  - [FauxRedis.Store](FauxRedis.Store.md): In-memory, process-local data store that approximates a subset of Redis
semantics sufficient for most integration tests.

