awk.tests: add test for recent large integer fix

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
Denys Vlasenko 2013-07-22 11:49:06 +02:00
parent b0e9b72915
commit b855460adc

View File

@ -24,7 +24,7 @@ testing "awk if operator < " "awk 'BEGIN{if(2 < 13) print \"foo\"}'" "foo\n" "
testing "awk if string == " "awk 'BEGIN{if(\"a\"==\"ab\") print \"bar\"}'" "" "" "" testing "awk if string == " "awk 'BEGIN{if(\"a\"==\"ab\") print \"bar\"}'" "" "" ""
# 4294967295 = 0xffffffff # 4294967295 = 0xffffffff
testing "awk bitwise op" "awk '{ print or(4294967295,1) }'" "4.29497e+09\n" "" "\n" testing "awk bitwise op" "awk '{ print or(4294967295,1) }'" "4294967295\n" "" "\n"
# we were testing for a non-empty body when deciding if a function was # we were testing for a non-empty body when deciding if a function was
# defined or not. The testcase below caused: # defined or not. The testcase below caused:
@ -45,8 +45,8 @@ testing "awk handles empty function f(arg){}" \
"" "" "" ""
optional DESKTOP optional DESKTOP
testing "awk hex const 1" "awk '{ print or(0xffffffff,1) }'" "4.29497e+09\n" "" "\n" testing "awk hex const 1" "awk '{ print or(0xffffffff,1) }'" "4294967295\n" "" "\n"
testing "awk hex const 2" "awk '{ print or(0x80000000,1) }'" "2.14748e+09\n" "" "\n" testing "awk hex const 2" "awk '{ print or(0x80000000,1) }'" "2147483649\n" "" "\n"
testing "awk oct const" "awk '{ print or(01234,1) }'" "669\n" "" "\n" testing "awk oct const" "awk '{ print or(01234,1) }'" "669\n" "" "\n"
SKIP= SKIP=
@ -241,6 +241,11 @@ testing "awk FS assignment" "awk '{FS=\":\"; print \$1}'" \
"" \ "" \
"a:b c:d\ne:f g:h" "a:b c:d\ne:f g:h"
testing "awk large integer" \
"awk 'BEGIN{n=(2^31)-1; print n, int(n), n%1, ++n, int(n), n%1}'" \
"2147483647 2147483647 0 2147483648 2147483648 0\n" \
"" ""
# testing "description" "command" "result" "infile" "stdin" # testing "description" "command" "result" "infile" "stdin"
exit $FAILCOUNT exit $FAILCOUNT