diff --git a/TestPlanning.md b/TestPlanning.md index f0a4483..3ca70ef 100644 --- a/TestPlanning.md +++ b/TestPlanning.md @@ -53,3 +53,9 @@ Many executions should be run in order to get a large sample of times. Ideally, there should be tests run in multiple different environments, such as different hardware (Different ranges of PCs, mobile devices, consoles, etc.) and execution backends (.NET, Mono, il2cpp, etc.) Performing sensible benchmarks requires the codebase to be near done, and require data of what users program, so these are best performed in the Verify phase. + +# Scaffolding + +The program consists of mostly pure functions, which do not require scaffolding for testing. Larger subsystems may require it, as the software runs in layers (passes). +For example, providing a scaffold lexer should be used to create parser tests that are lexer independent. +Likewise, ensuring ASTs can be geenrated without a parser is required for testing code evaluation without invoking the lexer or parser.