diff options
Diffstat (limited to 'test')
-rw-r--r-- | test/ChangeLog | 15 | ||||
-rw-r--r-- | test/Makefile.am | 9 | ||||
-rw-r--r-- | test/Makefile.in | 19 | ||||
-rw-r--r-- | test/Maketests | 10 | ||||
-rw-r--r-- | test/arraysort2.awk | 34 | ||||
-rw-r--r-- | test/arraysort2.ok | 26 | ||||
-rw-r--r-- | test/assignnumfield.awk | 1 | ||||
-rw-r--r-- | test/assignnumfield.in | 5 | ||||
-rw-r--r-- | test/assignnumfield.ok | 5 | ||||
-rw-r--r-- | test/back89.ok | 1 | ||||
-rw-r--r-- | test/funstack.ok | 10 | ||||
-rw-r--r-- | test/gsubtst5.ok | 4 | ||||
-rw-r--r-- | test/lintwarn.awk | 5 | ||||
-rw-r--r-- | test/lintwarn.ok | 1 |
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 |