Slide 10
Slide 10 text
虎の穴 虎の穴 虎の穴 虎の穴 虎の穴
虎の穴
Copyright © 2019 Toranoana Inc. All Rights Reserved.
字句解析(テスト)
10
describe("tokenizeを呼んだ時") {
it("文字列が入力された場合文字列のリストが生成される") {
assertEquals(listOf("(", "+", "1", "1", ")"), tokenize("(+ 1 1)"))
}
it("入れ子のカッコの場合") {
assertEquals(listOf("(", "+", "1", "(", "*", "3", "10", ")", ")"), tokenize("(+ 1 (* 3 10))"))
}
context("S式として不正な場合でもトークン化は正常に終わること") {
it("左括弧が無い") {
assertEquals(listOf("+", "1", "1", ")"), tokenize("+ 1 1)"))
}
it("右括弧が無い") {
assertEquals(listOf("(", "+", "1", "1"), tokenize("(+ 1 1"))
}
it("カッコの対応が不正") {
assertEquals(listOf("(", "+", "1", "*", "3", "10", ")", ")"), tokenize("(+ 1 * 3 10))"))
}
}
}