aboutsummaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorArnold D. Robbins <arnold@skeeve.com>2018-08-02 20:43:56 +0300
committerArnold D. Robbins <arnold@skeeve.com>2018-08-02 20:43:56 +0300
commitb32c67e0f99672ad4104cee4695b5eb040df16f4 (patch)
treef59c2329e2183fb12e4496306bb7893620bb966c /test
parentb98257919b20bdfc14f363761cc6215c1ad8bcee (diff)
parent3998ed059bbcfc189cd0d6c5762913fbd4ff4e77 (diff)
downloadegawk-b32c67e0f99672ad4104cee4695b5eb040df16f4.tar.gz
egawk-b32c67e0f99672ad4104cee4695b5eb040df16f4.tar.bz2
egawk-b32c67e0f99672ad4104cee4695b5eb040df16f4.zip
Merge branch 'gawk-4.2-stable' into feature/gnulib-regex
Diffstat (limited to 'test')
-rw-r--r--test/ChangeLog15
-rw-r--r--test/Makefile.am9
-rw-r--r--test/Makefile.in19
-rw-r--r--test/Maketests10
-rw-r--r--test/arraysort2.awk34
-rw-r--r--test/arraysort2.ok26
-rw-r--r--test/assignnumfield.awk1
-rw-r--r--test/assignnumfield.in5
-rw-r--r--test/assignnumfield.ok5
-rw-r--r--test/back89.ok1
-rw-r--r--test/funstack.ok10
-rw-r--r--test/gsubtst5.ok4
-rw-r--r--test/lintwarn.awk5
-rw-r--r--test/lintwarn.ok1
14 files changed, 141 insertions, 4 deletions
diff --git a/test/ChangeLog b/test/ChangeLog
index 2d85c9a9..2af89e66 100644
--- a/test/ChangeLog
+++ b/test/ChangeLog
@@ -1,3 +1,18 @@
+2018-07-31 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (EXTRA_DIST): Add assignnumfield files.
+ * assignnumfield.awk, assignnumfield.in, assignnumfield.ok: New files.
+
+2018-07-31 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (EXTRA_DIST): Add arraysort2 files.
+ * arraysort2.awk, arraysort2.ok: New files.
+
+2018-07-27 Arnold D. Robbins <arnold@skeeve.com>
+
+ * back89.ok, funstack.ok, gsubtst5.ok: Update after code changes.
+ * lintwarn.ok: Ditto.
+
2018-07-13 Arnold D. Robbins <arnold@skeeve.com>
* fmtspcl.awk, fmtspcl.tok, numrange.ok: Revised after code changes
diff --git a/test/Makefile.am b/test/Makefile.am
index 4ab96409..774424f7 100644
--- a/test/Makefile.am
+++ b/test/Makefile.am
@@ -74,6 +74,8 @@ EXTRA_DIST = \
arrayref.ok \
arraysort.awk \
arraysort.ok \
+ arraysort2.awk \
+ arraysort2.ok \
arrdbg.awk \
arrymem1.awk \
arrymem1.ok \
@@ -119,6 +121,9 @@ EXTRA_DIST = \
asort.ok \
asorti.awk \
asorti.ok \
+ assignnumfield.awk \
+ assignnumfield.in \
+ assignnumfield.ok \
awkpath.ok \
back89.awk \
back89.in \
@@ -1233,7 +1238,7 @@ BASIC_TESTS = \
addcomma anchgsub anchor argarray arrayind1 arrayind2 arrayind3 arrayparm \
arrayprm2 arrayprm3 arrayref arrymem1 arryref2 arryref3 arryref4 arryref5 \
arynasty arynocls aryprm1 aryprm2 aryprm3 aryprm4 aryprm5 aryprm6 aryprm7 \
- aryprm8 aryprm9 arysubnm aryunasgn asgext awkpath \
+ aryprm8 aryprm9 arysubnm aryunasgn asgext awkpath assignnumfield \
back89 backgsub badassign1 badbuild \
callparam childin clobber closebad clsflnam compare compare2 \
concat1 concat2 concat3 concat4 concat5 convfmt \
@@ -1275,7 +1280,7 @@ UNIX_TESTS = \
space strftlng
GAWK_EXT_TESTS = \
- aadelete1 aadelete2 aarray1 aasort aasorti argtest arraysort \
+ aadelete1 aadelete2 aarray1 aasort aasorti argtest arraysort arraysort2 \
backw badargs beginfile1 beginfile2 binmode1 \
charasbytes colonwarn clos1way clos1way2 clos1way3 clos1way4 clos1way5 \
clos1way6 crlf \
diff --git a/test/Makefile.in b/test/Makefile.in
index 5b34a5ad..69b86d07 100644
--- a/test/Makefile.in
+++ b/test/Makefile.in
@@ -332,6 +332,8 @@ EXTRA_DIST = \
arrayref.ok \
arraysort.awk \
arraysort.ok \
+ arraysort2.awk \
+ arraysort2.ok \
arrdbg.awk \
arrymem1.awk \
arrymem1.ok \
@@ -377,6 +379,9 @@ EXTRA_DIST = \
asort.ok \
asorti.awk \
asorti.ok \
+ assignnumfield.awk \
+ assignnumfield.in \
+ assignnumfield.ok \
awkpath.ok \
back89.awk \
back89.in \
@@ -1491,7 +1496,7 @@ BASIC_TESTS = \
addcomma anchgsub anchor argarray arrayind1 arrayind2 arrayind3 arrayparm \
arrayprm2 arrayprm3 arrayref arrymem1 arryref2 arryref3 arryref4 arryref5 \
arynasty arynocls aryprm1 aryprm2 aryprm3 aryprm4 aryprm5 aryprm6 aryprm7 \
- aryprm8 aryprm9 arysubnm aryunasgn asgext awkpath \
+ aryprm8 aryprm9 arysubnm aryunasgn asgext awkpath assignnumfield \
back89 backgsub badassign1 badbuild \
callparam childin clobber closebad clsflnam compare compare2 \
concat1 concat2 concat3 concat4 concat5 convfmt \
@@ -1533,7 +1538,7 @@ UNIX_TESTS = \
space strftlng
GAWK_EXT_TESTS = \
- aadelete1 aadelete2 aarray1 aasort aasorti argtest arraysort \
+ aadelete1 aadelete2 aarray1 aasort aasorti argtest arraysort arraysort2 \
backw badargs beginfile1 beginfile2 binmode1 \
charasbytes colonwarn clos1way clos1way2 clos1way3 clos1way4 clos1way5 \
clos1way6 crlf \
@@ -2785,6 +2790,11 @@ asgext:
@AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+assignnumfield:
+ @echo $@
+ @AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+
back89:
@echo $@
@AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -3904,6 +3914,11 @@ arraysort:
@AWKPATH="$(srcdir)" $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+arraysort2:
+ @echo $@
+ @AWKPATH="$(srcdir)" $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+
backw:
@echo $@
@AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
diff --git a/test/Maketests b/test/Maketests
index 5e5fa5ee..eb7c4651 100644
--- a/test/Maketests
+++ b/test/Maketests
@@ -140,6 +140,11 @@ asgext:
@AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+assignnumfield:
+ @echo $@
+ @AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+
back89:
@echo $@
@AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -1259,6 +1264,11 @@ arraysort:
@AWKPATH="$(srcdir)" $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+arraysort2:
+ @echo $@
+ @AWKPATH="$(srcdir)" $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+
backw:
@echo $@
@AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
diff --git a/test/arraysort2.awk b/test/arraysort2.awk
new file mode 100644
index 00000000..e52d2a7c
--- /dev/null
+++ b/test/arraysort2.awk
@@ -0,0 +1,34 @@
+# This should no longer core dump ... 7/31/2018
+function init(b, a, i)
+{
+ a[1] = "aardvark"
+ a[2] = "animal"
+ a[3] = "zebra"
+ a[4] = "zoo"
+ a[5] = "Iguana"
+ a[6] = "Alligator"
+ a[7] =a[8] = "people"
+ for (i in a)
+ b[IGNORECASE][i] = a[i]
+}
+
+BEGIN {
+
+ for (IGNORECASE = 0; IGNORECASE < 2; IGNORECASE++) {
+ init(b)
+
+ n = asort(b[IGNORECASE])
+
+ for (i = 1; i <= n; i++)
+ printf("b[%d][%d] = \"%s\"\n", IGNORECASE, i, b[IGi])
+
+ print "===="
+ }
+
+ IGNORECASE = 1
+ init(b)
+ b[2][1] = ""
+ n = asort(b[1], b[2])
+ for (i = 1; i <= n; i++)
+ printf("b[2][%d] = \"%s\"\n", i, b[2][i])
+}
diff --git a/test/arraysort2.ok b/test/arraysort2.ok
new file mode 100644
index 00000000..8fda0bfd
--- /dev/null
+++ b/test/arraysort2.ok
@@ -0,0 +1,26 @@
+b[0][1] = ""
+b[0][2] = ""
+b[0][3] = ""
+b[0][4] = ""
+b[0][5] = ""
+b[0][6] = ""
+b[0][7] = ""
+b[0][8] = ""
+====
+b[1][1] = ""
+b[1][2] = ""
+b[1][3] = ""
+b[1][4] = ""
+b[1][5] = ""
+b[1][6] = ""
+b[1][7] = ""
+b[1][8] = ""
+====
+b[2][1] = "aardvark"
+b[2][2] = "Alligator"
+b[2][3] = "animal"
+b[2][4] = "Iguana"
+b[2][5] = "people"
+b[2][6] = "people"
+b[2][7] = "zebra"
+b[2][8] = "zoo"
diff --git a/test/assignnumfield.awk b/test/assignnumfield.awk
new file mode 100644
index 00000000..3a056cb0
--- /dev/null
+++ b/test/assignnumfield.awk
@@ -0,0 +1 @@
+{$0 = ++i} 1
diff --git a/test/assignnumfield.in b/test/assignnumfield.in
new file mode 100644
index 00000000..b82c4b2d
--- /dev/null
+++ b/test/assignnumfield.in
@@ -0,0 +1,5 @@
+a b c
+a b c
+a b c
+a b c
+a b c
diff --git a/test/assignnumfield.ok b/test/assignnumfield.ok
new file mode 100644
index 00000000..8a1218a1
--- /dev/null
+++ b/test/assignnumfield.ok
@@ -0,0 +1,5 @@
+1
+2
+3
+4
+5
diff --git a/test/back89.ok b/test/back89.ok
index e9ea4d5f..8eebce47 100644
--- a/test/back89.ok
+++ b/test/back89.ok
@@ -1 +1,2 @@
+gawk: back89.awk:1: warning: regexp escape sequence `\8' treated as plain `8'
a8b
diff --git a/test/funstack.ok b/test/funstack.ok
index e69de29b..04030d3b 100644
--- a/test/funstack.ok
+++ b/test/funstack.ok
@@ -0,0 +1,10 @@
+gawk: funstack.awk:129: warning: regexp escape sequence `\"' is not a known regexp operator
+gawk: funstack.awk:381: warning: regexp escape sequence `\e' is not a known regexp operator
+gawk: funstack.awk:386: warning: regexp escape sequence `\i' is not a known regexp operator
+gawk: funstack.awk:395: warning: regexp escape sequence `\o' is not a known regexp operator
+gawk: funstack.awk:402: warning: regexp escape sequence `\u' is not a known regexp operator
+gawk: funstack.awk:412: warning: regexp escape sequence `\A' is not a known regexp operator
+gawk: funstack.awk:427: warning: regexp escape sequence `\I' is not a known regexp operator
+gawk: funstack.awk:436: warning: regexp escape sequence `\O' is not a known regexp operator
+gawk: funstack.awk:443: warning: regexp escape sequence `\U' is not a known regexp operator
+gawk: funstack.awk:952: warning: regexp escape sequence `\&' is not a known regexp operator
diff --git a/test/gsubtst5.ok b/test/gsubtst5.ok
index b038c8af..66488fd1 100644
--- a/test/gsubtst5.ok
+++ b/test/gsubtst5.ok
@@ -1 +1,5 @@
+gawk: gsubtst5.awk:95: warning: regexp escape sequence `\ ' is not a known regexp operator
+gawk: gsubtst5.awk:95: warning: regexp escape sequence `\"' is not a known regexp operator
+gawk: gsubtst5.awk:95: warning: regexp escape sequence `\@' is not a known regexp operator
+gawk: gsubtst5.awk:95: warning: regexp escape sequence `\,' is not a known regexp operator
ThisIsaTitleMyTitle
diff --git a/test/lintwarn.awk b/test/lintwarn.awk
index cea76bbc..d430a2b4 100644
--- a/test/lintwarn.awk
+++ b/test/lintwarn.awk
@@ -36,3 +36,8 @@ function zz(aa, aa)
return aa
}
@include ""
+BEGIN {
+ print "foo" > "foo" 1 # should warn
+ print "foo" > ("foo" 1) # should not warn
+ system("rm -f foo1 foo2")
+}
diff --git a/test/lintwarn.ok b/test/lintwarn.ok
index bc5226e6..d0993ea7 100644
--- a/test/lintwarn.ok
+++ b/test/lintwarn.ok
@@ -33,6 +33,7 @@ gawk: lintwarn.awk:32: warning: non-redirected `getline' undefined inside END ac
gawk: lintwarn.awk:34: error: function `zz': parameter #2, `aa', duplicates parameter #1
gawk: lintwarn.awk:38: warning: `include' is a gawk extension
gawk: lintwarn.awk:38: warning: empty filename after @include
+gawk: lintwarn.awk:41: warning: concatenation as I/O `>' redirection target is ambiguous
gawk: warning: function `f' called but never defined
gawk: warning: function `zz' defined but never called directly
EXIT CODE: 1