- Lexer.h/cpp:关键字表(大小写不敏感折小写)、(* *) 注释不嵌套、整数/T# 段式字面量、最长匹配符号 - token 带 source_file + 行列(起始位置,修了消费后行列的偏差) - lexer_test:75 断言(line1 三文件 token 流 21/34/27、大小写、符号、注释、行列、5 类负例) - Doc/compiler/词法.md:设计文档 + 执行计划
37 lines
1.1 KiB
CMake
37 lines
1.1 KiB
CMake
# 自动化用例
|
|
add_test(NAME stcompiler_version
|
|
COMMAND STCompiler)
|
|
add_test(NAME bytecode_executor_version
|
|
COMMAND BytecodeExecutor)
|
|
|
|
# isa 合同测试:链接 isa 库,断言覆盖饱和/编解码/disasm/哈希/映像/sidecar
|
|
add_executable(isa_test
|
|
./src/isa_test.cpp)
|
|
|
|
target_link_libraries(isa_test PRIVATE isa)
|
|
|
|
add_test(NAME isa_roundtrip
|
|
COMMAND isa_test)
|
|
|
|
# compiler 库测试:toml schema、文件集合、工程哈希(REPO_ROOT 注入源目录绝对路径)
|
|
add_executable(compiler_test
|
|
./src/compiler_test.cpp)
|
|
|
|
target_link_libraries(compiler_test PRIVATE compiler)
|
|
target_compile_definitions(compiler_test PRIVATE
|
|
REPO_ROOT="${CMAKE_SOURCE_DIR}")
|
|
|
|
add_test(NAME compiler_toml
|
|
COMMAND compiler_test)
|
|
|
|
# 词法测试:token 流 + 负例(REPO_ROOT 注入源目录绝对路径)
|
|
add_executable(lexer_test
|
|
./src/lexer_test.cpp)
|
|
|
|
target_link_libraries(lexer_test PRIVATE compiler)
|
|
target_compile_definitions(lexer_test PRIVATE
|
|
REPO_ROOT="${CMAKE_SOURCE_DIR}")
|
|
|
|
add_test(NAME lexer_tokens
|
|
COMMAND lexer_test)
|