aboutsummaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorArnold D. Robbins <arnold@skeeve.com>2016-08-01 22:53:51 +0300
committerArnold D. Robbins <arnold@skeeve.com>2016-08-01 22:53:51 +0300
commit9698fd1ebff2bc3f76efbf498c28ce21aa515b7e (patch)
tree82d4d368ede5133d2eff3c7d535274c1f7eddccf /test
parentde23ab7bfbea6ee03ef7386c6c203a4b2b7b7116 (diff)
parent385636c3da7f36ae020eeb7098485923168ccf4b (diff)
downloadegawk-9698fd1ebff2bc3f76efbf498c28ce21aa515b7e.tar.gz
egawk-9698fd1ebff2bc3f76efbf498c28ce21aa515b7e.tar.bz2
egawk-9698fd1ebff2bc3f76efbf498c28ce21aa515b7e.zip
Merge branch 'gawk-4.1-stable'
Diffstat (limited to 'test')
-rw-r--r--test/ChangeLog18
-rw-r--r--test/Makefile.am15
-rw-r--r--test/Makefile.in22
-rw-r--r--test/Maketests7
-rw-r--r--test/ignrcas3.awk23
-rw-r--r--test/ignrcas3.ok20
-rw-r--r--test/ignrcas4.awk7
-rw-r--r--test/ignrcas4.ok2
-rw-r--r--test/sortfor2.awk11
-rw-r--r--test/sortfor2.in2
-rw-r--r--test/sortfor2.ok2
11 files changed, 115 insertions, 14 deletions
diff --git a/test/ChangeLog b/test/ChangeLog
index f159be72..36fece67 100644
--- a/test/ChangeLog
+++ b/test/ChangeLog
@@ -1,3 +1,19 @@
+2016-08-01 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (sortfor2): New test.
+ * sortfor2.awk, sortfor2.in, sortfor2.ok: New files.
+ Thanks Christian Schneider <software@chschneider.eu>
+ for the report.
+
+ Unrelated:
+
+ * Makefile.am (ignrcas3): New test.
+ * ignrcas3.awk, ignrcas3.ok: New files.
+ Based on test code from Norihiro Tanaka <noritnk@kcn.ne.jp>.
+
+ * Makefile.am (ignrcas4): New test.
+ * ignrcas4.awk, ignrcas4.ok: Andrew Schorr's files, renamed.
+
2016-07-23 Arnold D. Robbins <arnold@skeeve.com>
* Makefile.am (status-close): New test.
@@ -6,7 +22,7 @@
2015-06-17 Arnold D. Robbins <arnold@skeeve.com>
* Makefile.am (ofmtstrnum): New test.
- * ofmtstrnu.awk, ofmtstrnum.ok: New files.
+ * ofmtstrnum.awk, ofmtstrnum.ok: New files.
2016-07-20 Arnold D. Robbins <arnold@skeeve.com>
diff --git a/test/Makefile.am b/test/Makefile.am
index 40636acd..327d25b9 100644
--- a/test/Makefile.am
+++ b/test/Makefile.am
@@ -467,6 +467,8 @@ EXTRA_DIST = \
ignrcas2.ok \
ignrcas3.awk \
ignrcas3.ok \
+ ignrcas4.awk \
+ ignrcas4.ok \
ignrcase.awk \
ignrcase.in \
ignrcase.ok \
@@ -970,6 +972,9 @@ EXTRA_DIST = \
sortfor.awk \
sortfor.in \
sortfor.ok \
+ sortfor2.awk \
+ sortfor2.in \
+ sortfor2.ok \
sortglos.awk \
sortglos.in \
sortglos.ok \
@@ -1194,7 +1199,7 @@ GAWK_EXT_TESTS = \
fieldwdth forcenum fpat1 fpat2 fpat3 fpat4 fpat5 fpatnull fsfwfs funlen \
functab1 functab2 functab3 fwtest fwtest2 fwtest3 \
genpot gensub gensub2 getlndir gnuops2 gnuops3 gnureops gsubind \
- icasefs icasers id igncdym igncfs ignrcas2 ignrcas3 ignrcase \
+ icasefs icasers id igncdym igncfs ignrcas2 ignrcas3 ignrcas4 ignrcase \
incdupe incdupe2 incdupe3 incdupe4 incdupe5 incdupe6 incdupe7 \
include include2 indirectbuiltin indirectcall indirectcall2 intarray \
lint lintexp lintindex lintint lintlength lintold lintset lintwarn \
@@ -1207,7 +1212,7 @@ GAWK_EXT_TESTS = \
profile8 profile9 profile10 pty1 \
rebuf regnul1 regnul2 regx8bit reginttrad reint reint2 rsgetline rsglstdin rsstart1 \
rsstart2 rsstart3 rstest6 shadow shadowbuiltin \
- sortfor sortu split_after_fpat \
+ sortfor sortfor2 sortu split_after_fpat \
splitarg4 strftime \
strtonum strtonum1 switch2 symtab1 symtab2 symtab3 symtab4 symtab5 symtab6 \
symtab7 symtab8 symtab9 symtab10 \
@@ -2321,6 +2326,12 @@ symtab10:
@AWKPATH="$(srcdir)" $(AWK) -D -f $@.awk < "$(srcdir)/$@.in" >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+ignrcas3::
+ @echo $@
+ @GAWKLOCALE=el_GR.iso88597 \
+ AWKPATH="$(srcdir)" $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+
# Targets generated for other tests:
include Maketests
diff --git a/test/Makefile.in b/test/Makefile.in
index beb2af2d..dc23e9b9 100644
--- a/test/Makefile.in
+++ b/test/Makefile.in
@@ -724,6 +724,8 @@ EXTRA_DIST = \
ignrcas2.ok \
ignrcas3.awk \
ignrcas3.ok \
+ ignrcas4.awk \
+ ignrcas4.ok \
ignrcase.awk \
ignrcase.in \
ignrcase.ok \
@@ -1227,6 +1229,9 @@ EXTRA_DIST = \
sortfor.awk \
sortfor.in \
sortfor.ok \
+ sortfor2.awk \
+ sortfor2.in \
+ sortfor2.ok \
sortglos.awk \
sortglos.in \
sortglos.ok \
@@ -1450,7 +1455,7 @@ GAWK_EXT_TESTS = \
fieldwdth forcenum fpat1 fpat2 fpat3 fpat4 fpat5 fpatnull fsfwfs funlen \
functab1 functab2 functab3 fwtest fwtest2 fwtest3 \
genpot gensub gensub2 getlndir gnuops2 gnuops3 gnureops gsubind \
- icasefs icasers id igncdym igncfs ignrcas2 ignrcas3 ignrcase \
+ icasefs icasers id igncdym igncfs ignrcas2 ignrcas3 ignrcas4 ignrcase \
incdupe incdupe2 incdupe3 incdupe4 incdupe5 incdupe6 incdupe7 \
include include2 indirectbuiltin indirectcall indirectcall2 intarray \
lint lintexp lintindex lintint lintlength lintold lintset lintwarn \
@@ -1463,7 +1468,7 @@ GAWK_EXT_TESTS = \
profile8 profile9 profile10 pty1 \
rebuf regnul1 regnul2 regx8bit reginttrad reint reint2 rsgetline rsglstdin rsstart1 \
rsstart2 rsstart3 rstest6 shadow shadowbuiltin \
- sortfor sortu split_after_fpat \
+ sortfor sortfor2 sortu split_after_fpat \
splitarg4 strftime \
strtonum strtonum1 switch2 symtab1 symtab2 symtab3 symtab4 symtab5 symtab6 \
symtab7 symtab8 symtab9 symtab10 \
@@ -2758,6 +2763,12 @@ symtab10:
@echo $@
@AWKPATH="$(srcdir)" $(AWK) -D -f $@.awk < "$(srcdir)/$@.in" >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+
+ignrcas3::
+ @echo $@
+ @GAWKLOCALE=el_GR.iso88597 \
+ AWKPATH="$(srcdir)" $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
Gt-dummy:
# file Maketests, generated from Makefile.am by the Gentests program
addcomma:
@@ -3982,7 +3993,7 @@ igncfs:
@AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
-ignrcas3:
+ignrcas4:
@echo $@
@AWKPATH="$(srcdir)" $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
@@ -4162,6 +4173,11 @@ sortfor:
@AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+sortfor2:
+ @echo $@
+ @AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+
sortu:
@echo $@
@AWKPATH="$(srcdir)" $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
diff --git a/test/Maketests b/test/Maketests
index d9b4fe09..951590ac 100644
--- a/test/Maketests
+++ b/test/Maketests
@@ -1222,7 +1222,7 @@ igncfs:
@AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
-ignrcas3:
+ignrcas4:
@echo $@
@AWKPATH="$(srcdir)" $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
@@ -1402,6 +1402,11 @@ sortfor:
@AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+sortfor2:
+ @echo $@
+ @AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+
sortu:
@echo $@
@AWKPATH="$(srcdir)" $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
diff --git a/test/ignrcas3.awk b/test/ignrcas3.awk
index e74eea64..fd88744d 100644
--- a/test/ignrcas3.awk
+++ b/test/ignrcas3.awk
@@ -1,7 +1,20 @@
BEGIN {
- x = "0"
- print x+0 # trigger NUMCUR
- IGNORECASE = x # should enable ignorecase, since x is a non-null string
- y = "aBc"
- print (y ~ /abc/)
+ dfapat[1] = data[1] = "b\323"
+ dfapat[2] = data[2] = "b\362"
+ dfapat[3] = data[3] = "b\363"
+
+ regexpat[1] = "[a-c]\323"
+ regexpat[2] = "[a-c]\362"
+ regexpat[3] = "[a-c]\363"
+
+ IGNORECASE = 1
+
+ for (i = 1; i <= 3; i++) {
+ for (j = 1; j <= 3; j++) {
+ printf("data[%d] ~ dfa[%d] = %s\n", i, j,
+ data[i] ~ dfapat[j] ? "ok" : "bad")
+ printf("data[%d] ~ regex[%d] = %s\n", i, j,
+ data[i] ~ regexpat[j] ? "ok" : "bad")
+ }
+ }
}
diff --git a/test/ignrcas3.ok b/test/ignrcas3.ok
index 0d66ea1a..0222feb5 100644
--- a/test/ignrcas3.ok
+++ b/test/ignrcas3.ok
@@ -1,2 +1,18 @@
-0
-1
+data[1] ~ dfa[1] = ok
+data[1] ~ regex[1] = ok
+data[1] ~ dfa[2] = ok
+data[1] ~ regex[2] = ok
+data[1] ~ dfa[3] = ok
+data[1] ~ regex[3] = ok
+data[2] ~ dfa[1] = ok
+data[2] ~ regex[1] = ok
+data[2] ~ dfa[2] = ok
+data[2] ~ regex[2] = ok
+data[2] ~ dfa[3] = ok
+data[2] ~ regex[3] = ok
+data[3] ~ dfa[1] = ok
+data[3] ~ regex[1] = ok
+data[3] ~ dfa[2] = ok
+data[3] ~ regex[2] = ok
+data[3] ~ dfa[3] = ok
+data[3] ~ regex[3] = ok
diff --git a/test/ignrcas4.awk b/test/ignrcas4.awk
new file mode 100644
index 00000000..e74eea64
--- /dev/null
+++ b/test/ignrcas4.awk
@@ -0,0 +1,7 @@
+BEGIN {
+ x = "0"
+ print x+0 # trigger NUMCUR
+ IGNORECASE = x # should enable ignorecase, since x is a non-null string
+ y = "aBc"
+ print (y ~ /abc/)
+}
diff --git a/test/ignrcas4.ok b/test/ignrcas4.ok
new file mode 100644
index 00000000..0d66ea1a
--- /dev/null
+++ b/test/ignrcas4.ok
@@ -0,0 +1,2 @@
+0
+1
diff --git a/test/sortfor2.awk b/test/sortfor2.awk
new file mode 100644
index 00000000..1dfca04f
--- /dev/null
+++ b/test/sortfor2.awk
@@ -0,0 +1,11 @@
+BEGIN {
+ PROCINFO["sorted_in"] = "@ind_num_asc"
+ }
+ {
+ A[$1] = 0
+ }
+ END {
+ for (I in A) B[I] = A[I]
+ for (I in B) SCRATCH = A[I]
+ for (I in A) print I
+ }
diff --git a/test/sortfor2.in b/test/sortfor2.in
new file mode 100644
index 00000000..e75357a1
--- /dev/null
+++ b/test/sortfor2.in
@@ -0,0 +1,2 @@
+1.0
+2.0
diff --git a/test/sortfor2.ok b/test/sortfor2.ok
new file mode 100644
index 00000000..e75357a1
--- /dev/null
+++ b/test/sortfor2.ok
@@ -0,0 +1,2 @@
+1.0
+2.0