DEFINE: New command.
[pspp] / tests / language / lexer / scan.at
index 6df0caae9e3f99d029e0fed43868cbe5d62b967e..146b891e1c728150e7b1d188e93a5d238fff710e 100644 (file)
@@ -49,7 +49,7 @@ MACRO_ID "!abcd"
 SKIP
 ID "#.#"
 SKIP
-UNEXPECTED_DOT
+MACRO_PUNCT "."
 ID "x"
 SKIP
 MACRO_PUNCT "_"
@@ -604,18 +604,9 @@ STOP
 PSPP_CHECK_SCAN([-i])
 AT_CLEANUP
 \f
-AT_SETUP([TITLE, SUBTITLE, FILE LABEL commands])
+AT_SETUP([FILE LABEL commands])
 AT_KEYWORDS([scan])
 AT_DATA([input], [dnl
-title/**/'Quoted string title'.
-tit /*
-"Quoted string on second line".
-sub "Quoted string subtitle"
- .
-
-TITL /* Not a */ quoted string title.
-SUBT Not a quoted string /* subtitle
-
 FIL label isn't quoted.
 FILE
   lab 'is quoted'.
@@ -624,38 +615,6 @@ FILE /*
 
 ])
 AT_DATA([expout-base], [dnl
-ID "title"
-SKIP
-STRING "Quoted string title"
-ENDCMD
-SKIP
-ID "tit"
-SKIP
-SKIP
-SKIP
-STRING "Quoted string on second line"
-ENDCMD
-SKIP
-ID "sub"
-SKIP
-STRING "Quoted string subtitle"
-SKIP
-SKIP
-ENDCMD
-SKIP
-ENDCMD
-SKIP
-ID "TITL"
-SKIP
-STRING "/* Not a */ quoted string title"
-ENDCMD
-SKIP
-ID "SUBT"
-SKIP
-STRING "Not a quoted string /* subtitle"
-SKIP
-ENDCMD
-SKIP
 ID "FIL"
 SKIP
 ID "label"
@@ -895,8 +854,74 @@ MACRO_ID "!macro1"
 LPAREN
 RPAREN
 SKIP
+SKIP
+STRING "var1 var2 var3"
+SKIP
+MACRO_ID "!enddefine"
+ENDCMD
+-SKIP
+STOP
+])
+PSPP_CHECK_SCAN([-i])
+AT_CLEANUP
+\f
+AT_SETUP([DEFINE command - no newline after parentheses])
+AT_KEYWORDS([scan])
+AT_DATA([input], [dnl
+define !macro1() var1 var2 var3
+!enddefine.
+])
+AT_DATA([expout-base], [dnl
+ID "define"
+SKIP
+MACRO_ID "!macro1"
+LPAREN
+RPAREN
+STRING " var1 var2 var3"
+SKIP
+MACRO_ID "!enddefine"
+ENDCMD
+-SKIP
+STOP
+])
+PSPP_CHECK_SCAN([-i])
+AT_CLEANUP
+\f
+AT_SETUP([DEFINE command - no newline before !ENDDEFINE])
+AT_KEYWORDS([scan ENDDEFINE])
+AT_DATA([input], [dnl
+define !macro1()
+var1 var2 var3!enddefine.
+])
+AT_DATA([expout-base], [dnl
+ID "define"
+SKIP
+MACRO_ID "!macro1"
+LPAREN
+RPAREN
+SKIP
+SKIP
 STRING "var1 var2 var3"
+MACRO_ID "!enddefine"
+ENDCMD
+-SKIP
+STOP
+])
+PSPP_CHECK_SCAN([-i])
+AT_CLEANUP
+\f
+AT_SETUP([DEFINE command - all on one line])
+AT_KEYWORDS([scan])
+AT_DATA([input], [dnl
+define !macro1()var1 var2 var3!enddefine.
+])
+AT_DATA([expout-base], [dnl
+ID "define"
 SKIP
+MACRO_ID "!macro1"
+LPAREN
+RPAREN
+STRING "var1 var2 var3"
 MACRO_ID "!enddefine"
 ENDCMD
 -SKIP
@@ -918,6 +943,35 @@ MACRO_ID "!macro1"
 LPAREN
 RPAREN
 SKIP
+SKIP
+MACRO_ID "!enddefine"
+ENDCMD
+-SKIP
+STOP
+])
+PSPP_CHECK_SCAN([-i])
+AT_CLEANUP
+\f
+AT_SETUP([DEFINE command - blank lines])
+AT_KEYWORDS([scan])
+AT_DATA([input], [dnl
+define !macro1()
+
+
+!enddefine.
+])
+AT_DATA([expout-base], [dnl
+ID "define"
+SKIP
+MACRO_ID "!macro1"
+LPAREN
+RPAREN
+SKIP
+SKIP
+STRING ""
+SKIP
+STRING ""
+SKIP
 MACRO_ID "!enddefine"
 ENDCMD
 -SKIP
@@ -952,6 +1006,7 @@ LPAREN
 RPAREN
 RPAREN
 SKIP
+SKIP
 MACRO_ID "!enddefine"
 ENDCMD
 -SKIP
@@ -996,6 +1051,7 @@ RPAREN
 SKIP
 RPAREN
 SKIP
+SKIP
 MACRO_ID "!enddefine"
 ENDCMD
 -SKIP
@@ -1028,6 +1084,7 @@ ID "z"
 SKIP
 RPAREN
 SKIP
+SKIP
 STRING "content 1"
 SKIP
 STRING "content 2"
@@ -1172,6 +1229,7 @@ MACRO_ID "!macro1"
 LPAREN
 RPAREN
 SKIP
+SKIP
 STRING "content line 1"
 SKIP
 STRING "content line 2"