// EXEC: cjc %import-path %L %l %f testUtils.cj
// EXEC: ./main
// DEPENDENCE: testUtils.cj
import std.unittest.*
import std.unittest.testmacro.*
import std.fs.*
import std.collection.*
import cangjie_tpc::prism4cj.prism.*
import cangjie_tpc::prism4cj.GrammarLocatorGrammarUtils
main(): Int64 {
var test = TestCReadme()
let res = test.asTestSuite().runTests()
let fail = res.failedCount + res.errorCount
if (fail == 0) {
return 0
}
return 1
}
@Test
public class TestCReadme {
@TestCase
public func test01(): Unit {
let fileArr: Collection<FileInfo> = TestUtils.testFiles("c")
var prism: Prism = Prism(GrammarLocatorGrammarUtils())
var c: Case
for (file in fileArr) {
c = TestUtils.readCase(file)
match (prism.grammar("c")) {
case Some(v) => TestUtils.assertCase(c, prism.tokenize(c.input, v))
case None => ()
}
}
}
}