X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=tests%2Flanguage%2Fexpressions%2Fevaluate.at;h=28a4dd5ef865fdd05cb633278531d1d17f46dde8;hb=173d1687aea88e0e5e1b1d8615ed68ebefb15d08;hp=d16bac5df7a6f2c0ae07cebabb5435d73ad2b718;hpb=4277d80790ded2c83d81a34ed536abe95c925d45;p=pspp diff --git a/tests/language/expressions/evaluate.at b/tests/language/expressions/evaluate.at index d16bac5df7..28a4dd5ef8 100644 --- a/tests/language/expressions/evaluate.at +++ b/tests/language/expressions/evaluate.at @@ -38,11 +38,11 @@ CHECK_EXPR_EVAL([coercion to/from Boolean], [[1 OR $false], [true]], [[1 OR $sysmis], [true]], [[2 OR $sysmis], [sysmis], - [error: DEBUG EVALUATE: An operand of the logical disjunction ("OR") operator was found to have a value other than 0 (false), 1 (true), or the system-missing value. The result was forced to 0.]], + [error: DEBUG EVALUATE: An operand of the logical disjunction (`OR') operator was found to have a value other than 0 (false), 1 (true), or the system-missing value. The result was forced to 0.]], [[2 AND $sysmis], [false], - [error: DEBUG EVALUATE: An operand of the logical conjunction ("AND") operator was found to have a value other than 0 (false), 1 (true), or the system-missing value. The result was forced to 0.]], + [error: DEBUG EVALUATE: An operand of the logical conjunction (`AND') operator was found to have a value other than 0 (false), 1 (true), or the system-missing value. The result was forced to 0.]], [['string' AND $sysmis], [error], - [error: DEBUG EVALUATE: Type mismatch while applying logical conjunction ("AND") operator: cannot convert string to boolean.]], + [error: DEBUG EVALUATE: Type mismatch while applying logical conjunction (`AND') operator: cannot convert string to boolean.]], [[0 AND $sysmis], [false]], [[(1>2) + 1], [1.00]], [[$true + $false], [1.00]]) @@ -53,19 +53,19 @@ CHECK_EXPR_EVAL([addition and subtraction], [[$sysmis + 1], [sysmis]], [[7676 + $sysmis], [sysmis]], [[('foo') + 5], [error], - [error: DEBUG EVALUATE: Type mismatch while applying addition ("+") operator: cannot convert string to number.]], + [error: DEBUG EVALUATE: Type mismatch while applying addition (`+') operator: cannot convert string to number.]], dnl Arithmetic concatenation requires CONCAT: [[('foo') + ('bar')], [error], - [error: DEBUG EVALUATE: Type mismatch while applying addition ("+") operator: cannot convert string to number.]], + [error: DEBUG EVALUATE: Type mismatch while applying addition (`+') operator: cannot convert string to number.]], dnl Lexical concatenation succeeds: [['foo' + 'bar'], ["foobar"]], [[1 +3 - 2 +4 -5], [1.00]], [[1 - $true], [0.00]], [[$true - 4/3], [-0.33]], [['string' - 1e10], [error], - [error: DEBUG EVALUATE: Type mismatch while applying subtraction ("-") operator: cannot convert string to number.]], + [error: DEBUG EVALUATE: Type mismatch while applying subtraction (`-') operator: cannot convert string to number.]], [[9.5 - ''], [error], - [error: DEBUG EVALUATE: Type mismatch while applying subtraction ("-") operator: cannot convert string to number.]], + [error: DEBUG EVALUATE: Type mismatch while applying subtraction (`-') operator: cannot convert string to number.]], [[1 - 2], [-1.00]], [[52 -23], [29.00]]) @@ -85,7 +85,7 @@ CHECK_EXPR_EVAL([exponentiation], [[2**8], [256.00]], [[(2**3)**4], [4096.00]], [[2**3**4], [4096.00], - [warning: DEBUG EVALUATE: The exponentiation operator ("**") is left-associative, even though right-associative semantics are more useful. That is, "a**b**c" equals "(a**b)**c", not as "a**(b**c)". To disable this warning, insert parentheses.]]) + [warning: DEBUG EVALUATE: The exponentiation operator (`**') is left-associative, even though right-associative semantics are more useful. That is, `a**b**c' equals `(a**b)**c', not as `a**(b**c)'. To disable this warning, insert parentheses.]]) CHECK_EXPR_EVAL([unary minus], [[2+-3], [-1.00]], @@ -141,14 +141,14 @@ CHECK_EXPR_EVAL([NOT truth table], [[not $false], [true]], [[not 0], [true]], [[not 2.5], [true], - [error: DEBUG EVALUATE: An operand of the logical negation ("NOT") operator was found to have a value other than 0 (false), 1 (true), or the system-missing value. The result was forced to 0.]], + [error: DEBUG EVALUATE: An operand of the logical negation (`NOT') operator was found to have a value other than 0 (false), 1 (true), or the system-missing value. The result was forced to 0.]], [[not $true], [false]], [[not 1], [false]], [[not $sysmis], [sysmis]], [[~ $false], [true]], [[~ 0], [true]], [[~ 2.5], [true], - [error: DEBUG EVALUATE: An operand of the logical negation ("NOT") operator was found to have a value other than 0 (false), 1 (true), or the system-missing value. The result was forced to 0.]], + [error: DEBUG EVALUATE: An operand of the logical negation (`NOT') operator was found to have a value other than 0 (false), 1 (true), or the system-missing value. The result was forced to 0.]], [[~ $true], [false]], [[~ 1], [false]], [[~ $sysmis], [sysmis]]) @@ -159,13 +159,13 @@ CHECK_EXPR_EVAL([= <= <], [[1 eq 2], [false]], [[2 = 3], [false]], [[1 eq 'foobar'], [error], - [error: DEBUG EVALUATE: Type mismatch while applying numeric equality ("EQ") operator: cannot convert string to number.]], + [error: DEBUG EVALUATE: Type mismatch while applying numeric equality (`EQ') operator: cannot convert string to number.]], [[5 eq 'foobar'], [error], - [error: DEBUG EVALUATE: Type mismatch while applying numeric equality ("EQ") operator: cannot convert string to number.]], + [error: DEBUG EVALUATE: Type mismatch while applying numeric equality (`EQ') operator: cannot convert string to number.]], [['baz' = 10], [error], - [error: DEBUG EVALUATE: Type mismatch while applying string equality ("=") operator: cannot convert number to string.]], + [error: DEBUG EVALUATE: Type mismatch while applying string equality (`=') operator: cannot convert number to string.]], [['quux' = 5.55], [error], - [error: DEBUG EVALUATE: Type mismatch while applying string equality ("=") operator: cannot convert number to string.]], + [error: DEBUG EVALUATE: Type mismatch while applying string equality (`=') operator: cannot convert number to string.]], [['foobar' = 'foobar'], [true]], [['quux' = 'bar'], [false]], [['bar ' = 'bar'], [true]], @@ -174,12 +174,12 @@ CHECK_EXPR_EVAL([= <= <], dnl Check precedence: [[1 + 2 = 3], [true]], [[1 >= 2 = 2 ge 3], [false], - [warning: DEBUG EVALUATE: Chaining relational operators (e.g. "a < b < c") will not produce the mathematically expected result. Use the AND logical operator to fix the problem (e.g. "a < b AND b < c"). If chaining is really intended, parentheses will disable this warning (e.g. "(a < b) < c".)]], + [warning: DEBUG EVALUATE: Chaining relational operators (e.g. `a < b < c') will not produce the mathematically expected result. Use the AND logical operator to fix the problem (e.g. `a < b AND b < c'). If chaining is really intended, parentheses will disable this warning (e.g. `(a < b) < c'.)]], dnl Mathematically true: [[3 ne 2 ~= 1], [false], - [warning: DEBUG EVALUATE: Chaining relational operators (e.g. "a < b < c") will not produce the mathematically expected result. Use the AND logical operator to fix the problem (e.g. "a < b AND b < c"). If chaining is really intended, parentheses will disable this warning (e.g. "(a < b) < c".)]], + [warning: DEBUG EVALUATE: Chaining relational operators (e.g. `a < b < c') will not produce the mathematically expected result. Use the AND logical operator to fix the problem (e.g. `a < b AND b < c'). If chaining is really intended, parentheses will disable this warning (e.g. `(a < b) < c'.)]], [[3 > 2 > 1], [false], - [warning: DEBUG EVALUATE: Chaining relational operators (e.g. "a < b < c") will not produce the mathematically expected result. Use the AND logical operator to fix the problem (e.g. "a < b AND b < c"). If chaining is really intended, parentheses will disable this warning (e.g. "(a < b) < c".)]], + [warning: DEBUG EVALUATE: Chaining relational operators (e.g. `a < b < c') will not produce the mathematically expected result. Use the AND logical operator to fix the problem (e.g. `a < b AND b < c'). If chaining is really intended, parentheses will disable this warning (e.g. `(a < b) < c'.)]], [[1 <= 2], [true]], [[2.5 <= 1.5], [false]], @@ -190,13 +190,13 @@ dnl Make sure <= token can't be split: [[2 < = 2], [error], [error: DEBUG EVALUATE: Syntax error in expression at `='.]], [[1 <= 'foobar'], [error], - [error: DEBUG EVALUATE: Type mismatch while applying numeric less-than-or-equal-to ("<=") operator: cannot convert string to number.]], + [error: DEBUG EVALUATE: Type mismatch while applying numeric less-than-or-equal-to (`<=') operator: cannot convert string to number.]], [[5 <= 'foobar'], [error], - [error: DEBUG EVALUATE: Type mismatch while applying numeric less-than-or-equal-to ("<=") operator: cannot convert string to number.]], + [error: DEBUG EVALUATE: Type mismatch while applying numeric less-than-or-equal-to (`<=') operator: cannot convert string to number.]], [['baz' <= 10], [error], - [error: DEBUG EVALUATE: Type mismatch while applying string less-than-or-equal-to ("<=") operator: cannot convert number to string.]], + [error: DEBUG EVALUATE: Type mismatch while applying string less-than-or-equal-to (`<=') operator: cannot convert number to string.]], [['quux' <= 5.55], [error], - [error: DEBUG EVALUATE: Type mismatch while applying string less-than-or-equal-to ("<=") operator: cannot convert number to string.]], + [error: DEBUG EVALUATE: Type mismatch while applying string less-than-or-equal-to (`<=') operator: cannot convert number to string.]], [['0123' <= '0123'], [true]], [['0123' <= '0124'], [true]], [['0124' le '0123'], [false]], @@ -208,13 +208,13 @@ dnl Make sure <= token can't be split: [[3.5 lt 4], [true]], [[4 lt 3.5], [false]], [[1 lt 'foobar'], [error], - [error: DEBUG EVALUATE: Type mismatch while applying numeric less than ("<") operator: cannot convert string to number.]], + [error: DEBUG EVALUATE: Type mismatch while applying numeric less than (`<') operator: cannot convert string to number.]], [[5 lt 'foobar'], [error], - [error: DEBUG EVALUATE: Type mismatch while applying numeric less than ("<") operator: cannot convert string to number.]], + [error: DEBUG EVALUATE: Type mismatch while applying numeric less than (`<') operator: cannot convert string to number.]], [['baz' < 10], [error], - [error: DEBUG EVALUATE: Type mismatch while applying string less than ("<") operator: cannot convert number to string.]], + [error: DEBUG EVALUATE: Type mismatch while applying string less than (`<') operator: cannot convert number to string.]], [['quux' < 5.55], [error], - [error: DEBUG EVALUATE: Type mismatch while applying string less than ("<") operator: cannot convert number to string.]], + [error: DEBUG EVALUATE: Type mismatch while applying string less than (`<') operator: cannot convert number to string.]], [['0123' lt '0123'], [false]], [['0123' < '0124'], [true]], [['0124' lt '0123'], [false]], @@ -231,13 +231,13 @@ dnl Make sure >= token can't be split: [[2 > = 2], [error], [error: DEBUG EVALUATE: Syntax error in expression at `='.]], [[1 >= 'foobar'], [error], - [error: DEBUG EVALUATE: Type mismatch while applying numeric greater-than-or-equal-to (">=") operator: cannot convert string to number.]], + [error: DEBUG EVALUATE: Type mismatch while applying numeric greater-than-or-equal-to (`>=') operator: cannot convert string to number.]], [[5 ge 'foobar'], [error], - [error: DEBUG EVALUATE: Type mismatch while applying numeric greater-than-or-equal-to (">=") operator: cannot convert string to number.]], + [error: DEBUG EVALUATE: Type mismatch while applying numeric greater-than-or-equal-to (`>=') operator: cannot convert string to number.]], [['baz' ge 10], [error], - [error: DEBUG EVALUATE: Type mismatch while applying string greater-than-or-equal-to (">=") operator: cannot convert number to string.]], + [error: DEBUG EVALUATE: Type mismatch while applying string greater-than-or-equal-to (`>=') operator: cannot convert number to string.]], [['quux' >= 5.55], [error], - [error: DEBUG EVALUATE: Type mismatch while applying string greater-than-or-equal-to (">=") operator: cannot convert number to string.]], + [error: DEBUG EVALUATE: Type mismatch while applying string greater-than-or-equal-to (`>=') operator: cannot convert number to string.]], [['0123' ge '0123'], [true]], [['0123' >= '0124'], [false]], [['0124' >= '0123'], [true]], @@ -249,13 +249,13 @@ dnl Make sure >= token can't be split: [[3.5 gt 4], [false]], [[4 gt 3.5], [true]], [[1 gt 'foobar'], [error], - [error: DEBUG EVALUATE: Type mismatch while applying numeric greater than (">") operator: cannot convert string to number.]], + [error: DEBUG EVALUATE: Type mismatch while applying numeric greater than (`>') operator: cannot convert string to number.]], [[5 gt 'foobar'], [error], - [error: DEBUG EVALUATE: Type mismatch while applying numeric greater than (">") operator: cannot convert string to number.]], + [error: DEBUG EVALUATE: Type mismatch while applying numeric greater than (`>') operator: cannot convert string to number.]], [['baz' > 10], [error], - [error: DEBUG EVALUATE: Type mismatch while applying string greater than (">") operator: cannot convert number to string.]], + [error: DEBUG EVALUATE: Type mismatch while applying string greater than (`>') operator: cannot convert number to string.]], [['quux' > 5.55], [error], - [error: DEBUG EVALUATE: Type mismatch while applying string greater than (">") operator: cannot convert number to string.]], + [error: DEBUG EVALUATE: Type mismatch while applying string greater than (`>') operator: cannot convert number to string.]], [['0123' gt '0123'], [false]], [['0123' > '0124'], [false]], [['0124' gt '0123'], [true]], @@ -267,13 +267,13 @@ dnl Make sure >= token can't be split: [[1 <> 2], [true]], [[2 ne 3], [true]], [[1 ~= 'foobar'], [error], - [error: DEBUG EVALUATE: Type mismatch while applying numeric inequality ("<>") operator: cannot convert string to number.]], + [error: DEBUG EVALUATE: Type mismatch while applying numeric inequality (`<>') operator: cannot convert string to number.]], [[5 <> 'foobar'], [error], - [error: DEBUG EVALUATE: Type mismatch while applying numeric inequality ("<>") operator: cannot convert string to number.]], + [error: DEBUG EVALUATE: Type mismatch while applying numeric inequality (`<>') operator: cannot convert string to number.]], [['baz' ne 10], [error], - [error: DEBUG EVALUATE: Type mismatch while applying string inequality ("<>") operator: cannot convert number to string.]], + [error: DEBUG EVALUATE: Type mismatch while applying string inequality (`<>') operator: cannot convert number to string.]], [['quux' ~= 5.55], [error], - [error: DEBUG EVALUATE: Type mismatch while applying string inequality ("<>") operator: cannot convert number to string.]], + [error: DEBUG EVALUATE: Type mismatch while applying string inequality (`<>') operator: cannot convert number to string.]], [['foobar' <> 'foobar'], [false]], [['quux' ne 'bar'], [true]], [['bar ' <> 'bar'], [false]],