Pudu programming language
Menu
Package

@chrismichaelps / pudu-lang-mediator

In-process messaging for Pudu: requests, notifications, streams, pipeline behaviors, processors, and exception handling

0.1.0Apache-2.01

InstallClose

TESTING.md

Markdown32 lines2.4 KB

GitHub ↗

Testing


type: architecture tags: [architecture, test] aliases: [Testing]


Every suite is a file under test/, mirroring the module it covers; pudu test test runs them all and each suite names its failed checks on stderr.

LevelSuitesWhat they prove
Domaintest/PuduLangMediator/Domain/**, test/PuduLangMediator/Utils/**ordering picks, census boundaries, erasure isolation under concurrent reads, templates, atomic shared updates
Vocabulary and kindsthe root suite, MessageTest, RequestTest, NotificationTest, StreamTest, ContextTestoutcomes, combination, descriptions, envelopes, answers, typed items, cancellation
PipelineComposeTest, RegistrationTest, CatalogTestthe documented order of every layer, both exception scopes, short-circuits, context hand-off, sink wrapping, counting and collisions
MediatorMediatorTest, SenderTest, PublisherTestbuilding and every refusal, sending, resolving, publishing, streaming, untyped dispatch, test doubles
ConcurrencyPublishingTest, ReaderTest, Utils/ErasureTest, Utils/UtilsTestreal threads: parallel peaks, bounded worker limits, crash containment, back-pressure, closing joins the producer
Integrationstest/PuduLangMediator/Behaviors/**validation violations, log events and levels, retries, timeouts, and cancellation through a resilience pipeline
Packagetest/Package/LayoutTestevery shipped module is the root PuduLangMediator or under it, is named after its path, and agrees with the manifest
Vaulttest/Package/VaultTestthe vault mirrors src/ page for page, every page has a Grill Log, every exported function is in its page's signatures, every link resolves, and every page lists the pages linking to it
Integrationtest/Integration/OrderingScenarioTestone shop wired through validation, logging, parallel publication, a handler publishing through its own mediator, queries, untyped dispatch, and a reader
Examplesexamples/*.pudu, run by CIthe documented programs compile and answer 0
Mutation[[tools/Mutate]]the suites notice single-point changes to the pure layer

The mutation gate runs on pull requests over Domain/ with a threshold of 100: every valid mutant is killed (12 of 12 at the initial package).

Referenced by

[[CHANGELOG]] · [[architecture/_MOC]] · [[handoffs/2026-10-06-initial-package]]