Skip to main content
Glama
Rajendertyagi

MCPEvent

MCP Event Server — Test Suite

Funktionsorientierte, schnelle und hängsichere Regressionstests für den MCP event server (server.py, events.py, store.py, runtime.py, sources/).

Aufbau

test/
  run_all.py            # regression driver: isolated subprocess per file, hard 300s/file timeout
  helpers/              # lifecycle, mcp, wait, mock_http, runner — shared test support
  mcp_result.py         # SDK result normalization + safe teardown
  test_*.py             # one feature per file (the units of the suite)
  config.json           # base server config (overwritten per-test, restored after)
TEST_RUNTIME_MAP.md     # per-file server usage, harness behavior, run guidance

Der Produktionsquellcode unter test/ ist eingefroren — bearbeiten Sie server.py, events.py, store.py, runtime.py, errors.py, client.py, config.json, requirements.txt, oder sources/* nicht als Teil der Testarbeit.

Related MCP server: MCP Server & Client Test Environment

Ausführen

# Focused (preferred while debugging one feature):
python test/test_acknowledgement.py
python test/run_all.py --group fast

# Full regression (CI / release only — slow path):
python test/run_all.py
python test/run_all.py --timeout 300

Siehe TEST_RUNTIME_MAP.md für die Server-Nutzungsmatrix, die begrenzte Warte-Strategie und warum Sie während der Entwicklung fokussierte und nicht vollständige Tests ausführen sollten.

Prinzipien

  • Kein Server, es sei denn, der Test benötigt die MCP/HTTP-Grenze. Die Anwendungslogik (Store, Events, Routing, Checkpoint/Ack, Hintergrundaufgaben, Quelllebenszyklus, Deduplizierung) wird direkt gegen die realen Objekte mit einem In-Memory-Stub-Bus getestet.

  • Ein Server pro D-Level-Datei (Ausnahmen: Neustarttests in test_errors.py / test_reconnect.py und test_subscriptions.py, deren Tests unterschiedliche Quellkonfigurationen benötigen).

  • Begrenzte Wartezeiten, keine langen festen Pausen. Bereitschaft/Zählungen werden mit Timeouts abgefragt.

  • Hartes Timeout (300 s/Datei) + vom Parent durchgeführte Bereinigung — der Runner beendet die Prozessgruppe des Kindes, sodass eine hängende Datei schnell fehlschlägt (gemeldet als TIMEOUT) und alle von ihr gestarteten server.py werden mit ihr beendet. Keine Abhängigkeit von atexit des Kindes (das nach einem harten Kill nicht ausgeführt werden kann).

Gelöscht (nicht neu erstellen)

test/test_phase8.py, test/integrate_test.py — ersetzt durch die obigen funktionsspezifischen Dateien.

F
license - not found
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Rajendertyagi/MCPEvent'

If you have feedback or need assistance with the MCP directory API, please join our Discord server