tests: Add test for doubled parentheses.
[pspp] / tests / language / expressions / evaluate.at
index baf2266d98873621e89a466ccb61329d65b65e94..14059b83377a15a2311800aaf6868b1e101bea0f 100644 (file)
@@ -114,6 +114,12 @@ DEBUG EVALUATE /'string' - 1e10.
 DEBUG EVALUATE /9.5 - ''.
 
 DEBUG EVALUATE /F2.0 + 3.
+
+/* Bug #62557.
+DEBUG EVALUATE (y=3)(x=2) /(1 - y) + (1 - x).
+DEBUG EVALUATE (y=3)(x=2) /((1 - y) + (1 - x)).
+DEBUG EVALUATE (y=3)(x=2) /(1-y) + (1-x).
+DEBUG EVALUATE (y=3)(x=2) /( (1-y) + (1-x) ).
 ])
 
 for opt in OPT NOOPT; do
@@ -210,6 +216,14 @@ evaluate.sps:18.24: note: DEBUG EVALUATE: This operand has type 'number'.
       |                        ^
 
 F2.0 + 3 => error
+
+(1 - y) + (1 - x) => -3.00
+
+((1 - y) + (1 - x)) => -3.00
+
+(1-y) + (1-x) => -3.00
+
+( (1-y) + (1-x) ) => -3.00
 ])
 done
 AT_CLEANUP
@@ -3232,8 +3246,8 @@ for opt in OPT NOOPT; do
     AS_BOX([$opt])
     sed "s/opt/$opt/" < evaluate-base.sps > evaluate.sps
     AT_CHECK([pspp --testing-mode evaluate.sps], [1], [dnl
-lower('ABCDEFGHIJKLMNOPQRSTUVWXYZ!@%&*089') => "abcdefghijklmnopqrstuvwxyz!@
-%&*089"
+lower('ABCDEFGHIJKLMNOPQRSTUVWXYZ!@%&*089') => "abcdefghijklmnopqrstuvwxyz!
+@%&*089"
 
 lower('') => ""
 
@@ -4308,8 +4322,8 @@ for opt in OPT NOOPT; do
     AS_BOX([$opt])
     sed "s/opt/$opt/" < evaluate-base.sps > evaluate.sps
     AT_CHECK([pspp --testing-mode evaluate.sps], [1], [dnl
-upcase('abcdefghijklmnopqrstuvwxyz!@%&*089') => "ABCDEFGHIJKLMNOPQRSTUVWXYZ!@
-%&*089"
+upcase('abcdefghijklmnopqrstuvwxyz!@%&*089') => "ABCDEFGHIJKLMNOPQRSTUVWXYZ!
+@%&*089"
 
 upcase('') => ""