File tree Expand file tree Collapse file tree 1 file changed +10
-3
lines changed Expand file tree Collapse file tree 1 file changed +10
-3
lines changed Original file line number Diff line number Diff line change 20
20
21
21
(declaim (optimize (debug 3 )))
22
22
23
+ (setf rove :*debug-on-error* t )
24
+
23
25
(defmacro def-lexer-test (name str lexems-list
24
26
&key
25
27
exp-comments
46
48
(unless (deep-equal , exp-lex-errors res-lex-errors)
47
49
(fail " Errors not equal" ))))))
48
50
49
- (defmacro def-parser-test (name str parser-exp)
51
+ (defmacro def-parser-test (name str parser-exp &key exp-parser-error )
50
52
` (deftest , name
51
- (let ((parser-res (parser (lexer , str))))
53
+ (multiple-value-bind (parser-res parser-error)
54
+ (parser (lexer , str))
55
+ (when (or , parser-exp parser-res)
52
56
(unless
53
57
(tree-equal
54
58
parser-res
58
62
(lexem (when (typep y ' lexem)
59
63
(equal-lexem? x y)))
60
64
(t (eq x y)))))
61
- (fail " Parser-test failed" )))))
65
+ (fail " Parser-test failed" )))
66
+ (when (or , exp-parser-error parser-error)
67
+ (unless (deep-equal , exp-parser-error parser-error)
68
+ (fail " Errors not equal" ))))))
62
69
63
70
(defmacro def-ast-test (name str obj-tree)
64
71
` (deftest , name
You can’t perform that action at this time.
0 commit comments