aboutsummaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorArnold D. Robbins <arnold@skeeve.com>2017-05-23 05:41:20 +0300
committerArnold D. Robbins <arnold@skeeve.com>2017-05-23 05:41:20 +0300
commitd3d50a55367f84182d21420121b504f898cda459 (patch)
tree1598874896a49ab995b49d2066c947243882a140 /test
parent394c705100366ecea5518ce9cfa0330d495f41b3 (diff)
downloadegawk-d3d50a55367f84182d21420121b504f898cda459.tar.gz
egawk-d3d50a55367f84182d21420121b504f898cda459.tar.bz2
egawk-d3d50a55367f84182d21420121b504f898cda459.zip
Greatly improve FIELDWIDTHS behavior, doc, and tests.
Diffstat (limited to 'test')
-rw-r--r--test/ChangeLog6
-rw-r--r--test/Makefile.am12
-rw-r--r--test/Makefile.in27
-rw-r--r--test/Maketests15
-rw-r--r--test/fwtest5.awk2
-rw-r--r--test/fwtest5.in4
-rw-r--r--test/fwtest5.ok4
-rw-r--r--test/fwtest6.awk4
-rw-r--r--test/fwtest6.in1
-rw-r--r--test/fwtest6.ok3
-rw-r--r--test/fwtest7.awk2
-rw-r--r--test/fwtest7.in1
-rw-r--r--test/fwtest7.ok1
13 files changed, 80 insertions, 2 deletions
diff --git a/test/ChangeLog b/test/ChangeLog
index 2942f7be..4b929c61 100644
--- a/test/ChangeLog
+++ b/test/ChangeLog
@@ -1,3 +1,9 @@
+2017-05-23 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (fwtest5, fwtest6): New tests.
+ * fwtest5.awk, fwtest5.in, fwtest5.ok, fwtest6.awk, fwtest6.in,
+ fwtest6.ok, fwtest7.awk, fwtest7.in, fwtest7.ok: New files.
+
2017-05-20 Arnold D. Robbins <arnold@skeeve.com>
* noeffect.awk, noeffect.ok: Updated after code change.
diff --git a/test/Makefile.am b/test/Makefile.am
index 29de0b18..dd5f2369 100644
--- a/test/Makefile.am
+++ b/test/Makefile.am
@@ -393,6 +393,15 @@ EXTRA_DIST = \
fwtest4.awk \
fwtest4.in \
fwtest4.ok \
+ fwtest5.awk \
+ fwtest5.in \
+ fwtest5.ok \
+ fwtest6.awk \
+ fwtest6.in \
+ fwtest6.ok \
+ fwtest7.awk \
+ fwtest7.in \
+ fwtest7.ok \
genpot.awk \
genpot.ok \
gensub.awk \
@@ -1232,7 +1241,8 @@ GAWK_EXT_TESTS = \
crlf dbugeval dbugeval2 dbugtypedre1 dbugtypedre2 delsub \
devfd devfd1 devfd2 dumpvars errno exit \
fieldwdth forcenum fpat1 fpat2 fpat3 fpat4 fpat5 fpat6 fpatnull \
- fsfwfs funlen functab1 functab2 functab3 fwtest fwtest2 fwtest3 fwtest4 \
+ fsfwfs funlen functab1 functab2 functab3 \
+ fwtest fwtest2 fwtest3 fwtest4 fwtest5 fwtest6 fwtest7 \
genpot gensub gensub2 gensub3 getlndir gnuops2 gnuops3 gnureops gsubind \
icasefs icasers id igncdym igncfs ignrcas2 ignrcas4 ignrcase \
incdupe incdupe2 incdupe3 incdupe4 incdupe5 incdupe6 incdupe7 \
diff --git a/test/Makefile.in b/test/Makefile.in
index 91fb8d8e..9d27170a 100644
--- a/test/Makefile.in
+++ b/test/Makefile.in
@@ -651,6 +651,15 @@ EXTRA_DIST = \
fwtest4.awk \
fwtest4.in \
fwtest4.ok \
+ fwtest5.awk \
+ fwtest5.in \
+ fwtest5.ok \
+ fwtest6.awk \
+ fwtest6.in \
+ fwtest6.ok \
+ fwtest7.awk \
+ fwtest7.in \
+ fwtest7.ok \
genpot.awk \
genpot.ok \
gensub.awk \
@@ -1489,7 +1498,8 @@ GAWK_EXT_TESTS = \
crlf dbugeval dbugeval2 dbugtypedre1 dbugtypedre2 delsub \
devfd devfd1 devfd2 dumpvars errno exit \
fieldwdth forcenum fpat1 fpat2 fpat3 fpat4 fpat5 fpat6 fpatnull \
- fsfwfs funlen functab1 functab2 functab3 fwtest fwtest2 fwtest3 fwtest4 \
+ fsfwfs funlen functab1 functab2 functab3 \
+ fwtest fwtest2 fwtest3 fwtest4 fwtest5 fwtest6 fwtest7 \
genpot gensub gensub2 gensub3 getlndir gnuops2 gnuops3 gnureops gsubind \
icasefs icasers id igncdym igncfs ignrcas2 ignrcas4 ignrcase \
incdupe incdupe2 incdupe3 incdupe4 incdupe5 incdupe6 incdupe7 \
@@ -4025,6 +4035,21 @@ fwtest4:
@AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+fwtest5:
+ @echo $@
+ @AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+
+fwtest6:
+ @echo $@
+ @AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+
+fwtest7:
+ @echo $@
+ @AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+
gensub:
@echo $@
@AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
diff --git a/test/Maketests b/test/Maketests
index 0c77f98a..20b659ef 100644
--- a/test/Maketests
+++ b/test/Maketests
@@ -1192,6 +1192,21 @@ fwtest4:
@AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+fwtest5:
+ @echo $@
+ @AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+
+fwtest6:
+ @echo $@
+ @AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+
+fwtest7:
+ @echo $@
+ @AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+
gensub:
@echo $@
@AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
diff --git a/test/fwtest5.awk b/test/fwtest5.awk
new file mode 100644
index 00000000..be030eab
--- /dev/null
+++ b/test/fwtest5.awk
@@ -0,0 +1,2 @@
+BEGIN { FIELDWIDTHS = "2 3 4" }
+{ print NF }
diff --git a/test/fwtest5.in b/test/fwtest5.in
new file mode 100644
index 00000000..c24c70ed
--- /dev/null
+++ b/test/fwtest5.in
@@ -0,0 +1,4 @@
+12
+12345
+123456789
+123456789abcd
diff --git a/test/fwtest5.ok b/test/fwtest5.ok
new file mode 100644
index 00000000..7d8164bf
--- /dev/null
+++ b/test/fwtest5.ok
@@ -0,0 +1,4 @@
+1
+2
+3
+3
diff --git a/test/fwtest6.awk b/test/fwtest6.awk
new file mode 100644
index 00000000..b36d75a2
--- /dev/null
+++ b/test/fwtest6.awk
@@ -0,0 +1,4 @@
+# BEGIN { FIELDWIDTHS = "2 2 *" }
+BEGIN { FIELDWIDTHS = "2 2 * " }
+{ print NF, $1, $2, $3 }
+END { FIELDWIDTHS = "2 * 2" }
diff --git a/test/fwtest6.in b/test/fwtest6.in
new file mode 100644
index 00000000..fea8d647
--- /dev/null
+++ b/test/fwtest6.in
@@ -0,0 +1 @@
+1234abcdefghi
diff --git a/test/fwtest6.ok b/test/fwtest6.ok
new file mode 100644
index 00000000..9ba87f2a
--- /dev/null
+++ b/test/fwtest6.ok
@@ -0,0 +1,3 @@
+3 12 34 abcdefghi
+gawk: fwtest6.awk:4: (FILENAME=- FNR=1) fatal: `*' must be the last designator in FIELDWIDTHS
+EXIT CODE: 2
diff --git a/test/fwtest7.awk b/test/fwtest7.awk
new file mode 100644
index 00000000..af424d94
--- /dev/null
+++ b/test/fwtest7.awk
@@ -0,0 +1,2 @@
+BEGIN { FIELDWIDTHS = "2 1:*" }
+{ print $1, $2 }
diff --git a/test/fwtest7.in b/test/fwtest7.in
new file mode 100644
index 00000000..1accfe88
--- /dev/null
+++ b/test/fwtest7.in
@@ -0,0 +1 @@
+abcdefghijklmn
diff --git a/test/fwtest7.ok b/test/fwtest7.ok
new file mode 100644
index 00000000..c321c19c
--- /dev/null
+++ b/test/fwtest7.ok
@@ -0,0 +1 @@
+ab defghijklmn