X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=tests%2Flanguage%2Fexpressions%2Fevaluate.at;h=15641d6073f5ae39e1d7d4b54cdf06d82f34fd1d;hb=b39ac1bb6b18a5fa595c6bcbd4ce67e904d56dc5;hp=703758b3b598d9602ecf0f35ec2bfaa1515dbcd3;hpb=adccf1932c84ccb435f14f60fdb4aaaf9fdc1e30;p=pspp diff --git a/tests/language/expressions/evaluate.at b/tests/language/expressions/evaluate.at index 703758b3b5..15641d6073 100644 --- a/tests/language/expressions/evaluate.at +++ b/tests/language/expressions/evaluate.at @@ -352,8 +352,19 @@ RND(number, number, number).]], [[trunc(1.9)], [1.00]], [[trunc(-1.2)], [-1.00]], [[trunc(-1.9)], [-1.00]], + [[trunc(5.06, .1)], [5.00]], + [[trunc(-5.06, .1)], [-5.00]], + [[trunc(1)], [1.00]], + [[trunc(1 - 2**-53)], [1.00]], + [[trunc(1 - 2**-52)], [1.00]], + [[trunc(1 - 2**-51)], [1.00]], + [[trunc(1 - 2**-45)], [0.00]], + [[trunc(1 - 2**-45, 1, 10)], [1.00]], [[trunc('x')], [error], - [error: DEBUG EVALUATE: Type mismatch invoking TRUNC(number) as trunc(string).]]) + [error: DEBUG EVALUATE: Function invocation trunc(string) does not match any known function. Candidates are: +TRUNC(number) +TRUNC(number, number) +TRUNC(number, number, number).]]) CHECK_EXPR_EVAL([acos arsin artan cos sin tan], [[acos(.5) / 3.14159 * 180], [60.00]], @@ -844,7 +855,7 @@ CHECK_EXPR_EVAL([replace], [[replace('banana', 'ba', '', -1)], ["banana"]], [[replace('banana', 'ba', '', $sysmis)], ["banana"]]) -CHECK_EXPR_EVAL([lpad number ltrim lpad rtrim rpad string substr upcase], +CHECK_EXPR_EVAL([lpad number ltrim lpad rtrim rpad string strunc substr upcase], [[lpad('abc', -1)], [""]], [[lpad('abc', 0)], ["abc"]], [[lpad('abc', 2)], ["abc"]], @@ -1000,6 +1011,29 @@ dnl E has a minimum width of 6 on output: [error: DEBUG EVALUATE: Type mismatch invoking STRING(number, num_output_format) as string(number, format).]], [[string(123, e6.0)], ["1E+002"]], + [[strunc('a c ', 9)], ["a c"]], + [[strunc('a c ', 7)], ["a c"]], + [[strunc('a c ', 6)], ["a c"]], + [[strunc('a c ', 5)], ["a c"]], + [[strunc('a c ', 4)], ["a c"]], + [[strunc('a c ', 3)], ["a c"]], + [[strunc('a c ', 2)], ["a"]], + [[strunc('a c ', 1)], ["a"]], + [[strunc('a c ', 0)], [""]], + [[strunc('a c ', -1)], [""]], + [[strunc('a c ', $sysmis)], [""]], + [[strunc(' abc ', 9)], [" abc"]], + [[strunc(' abc ', 8)], [" abc"]], + [[strunc(' abc ', 7)], [" abc"]], + [[strunc(' abc ', 6)], [" abc"]], + [[strunc(' abc ', 5)], [" abc"]], + [[strunc(' abc ', 4)], [" ab"]], + [[strunc(' abc ', 3)], [" a"]], + [[strunc(' abc ', 2)], [""]], + [[strunc(' abc ', 1)], [""]], + [[strunc(' abc ', -1)], [""]], + [[strunc(' abc ', $sysmis)], [""]], + [[substr('abcdefgh', -5)], [""]], [[substr('abcdefgh', 0)], [""]], [[substr('abcdefgh', 1)], ["abcdefgh"]],