aboutsummaryrefslogtreecommitdiffstats
path: root/test/forcenum.awk
diff options
context:
space:
mode:
authorArnold D. Robbins <arnold@skeeve.com>2017-10-17 21:41:01 +0300
committerArnold D. Robbins <arnold@skeeve.com>2017-10-17 21:41:01 +0300
commit9842a449bf7612c763790c34be7eef39774f63be (patch)
tree7e10750980602d8c88a74f8da1c71392076e98de /test/forcenum.awk
parent224aa5e7c6c06b99cb7402d7135ee4f926d42acd (diff)
downloadegawk-9842a449bf7612c763790c34be7eef39774f63be.tar.gz
egawk-9842a449bf7612c763790c34be7eef39774f63be.tar.bz2
egawk-9842a449bf7612c763790c34be7eef39774f63be.zip
Adjust forcenum test for better portability.
Diffstat (limited to 'test/forcenum.awk')
-rw-r--r--test/forcenum.awk17
1 files changed, 14 insertions, 3 deletions
diff --git a/test/forcenum.awk b/test/forcenum.awk
index 1a7ddce7..d4ff5d5e 100644
--- a/test/forcenum.awk
+++ b/test/forcenum.awk
@@ -1,6 +1,17 @@
BEGIN {
# make some strnums
- nf = split("|5apple|+NaN| 6|0x1az|011Q|027", f, "|")
- for (i = 1; i <= nf; i++)
- printf "[%s] -> %g (type %s)\n", f[i], f[i], typeof(f[i])
+ nf = split("|5apple|NaN|-NaN|+NaN| 6|0x1az|011Q|027", f, "|")
+
+ for (i = 1; i <= nf; i++) {
+ # NaN values on some systems can come out with
+ # a sign in front of them. So instead of using %g to
+ # convert the strnum to a double, do it manually, and
+ # then remove any leading sign so that the test will
+ # work across systems.
+ val = f[i] + 0
+ val = val ""
+ val = tolower(val)
+ sub(/^[-+]/, "", val)
+ printf "[%s] -> %s (type %s)\n", f[i], val, typeof(f[i])
+ }
}