summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorArnold D. Robbins <arnold@skeeve.com>2023-02-12 21:15:04 +0200
committerArnold D. Robbins <arnold@skeeve.com>2023-02-12 21:15:04 +0200
commite7720935594d7442f92eecbe08eb69857aab8c4e (patch)
treed447e23f4eb8152ae7acaa94cc458e4c71a508e4 /test
parent0928a907b0c8a5f98f771dcd0ad2aaf0e32dffbe (diff)
parent0ada00ce0b21241cf81181cd93d3fbaa58fa4a98 (diff)
downloadgawk-e7720935594d7442f92eecbe08eb69857aab8c4e.tar.gz
Merge branch 'master' into feature/backslash-u
Diffstat (limited to 'test')
-rw-r--r--test/ChangeLog20
-rw-r--r--test/Makefile.am12
-rw-r--r--test/Makefile.in22
-rw-r--r--test/Maketests10
-rw-r--r--test/badargs.ok3
-rw-r--r--test/elemnew1.awk8
-rw-r--r--test/elemnew1.ok0
-rw-r--r--test/fieldassign.awk1
-rw-r--r--test/fieldassign.in2
-rw-r--r--test/fieldassign.ok2
-rw-r--r--test/makepmafile.c4
-rw-r--r--test/time.awk30
-rw-r--r--test/time.ok2
13 files changed, 94 insertions, 22 deletions
diff --git a/test/ChangeLog b/test/ChangeLog
index 8ea42359..b2e58d36 100644
--- a/test/ChangeLog
+++ b/test/ChangeLog
@@ -1,3 +1,22 @@
+2023-02-09 Arnold D. Robbins <arnold@skeeve.com>
+
+ * badargs.ok: Update after code changes.
+
+2023-01-31 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (EXTRA_DIST): New test: elemnew1.
+ * elemnew1.awk, elemnew1.ok: New files.
+ Also, update the copyright year.
+
+ * Makefile.am (EXTRA_DIST): New test: fieldassign.
+ * fieldassign.awk, fieldassign.in, fieldassign.ok: New files.
+
+2023-01-22 Arnold D. Robbins <arnold@skeeve.com>
+
+ * makepmafile.c (main): Make the file mode 0600.
+ Update copyright year.
+ * time.awk, time.ok: Add test for strptime().
+
2022-11-25 Arnold D. Robbins <arnold@skeeve.com>
* Makefile.am: Use `grep -E' instead of egrep in some of the test
@@ -10,7 +29,6 @@
2022-11-03 Eli Zaretskii <eliz@gnu.org>
- * Makefile.in (EXPECTED_FAIL_MINGW):
* Makefile.am (EXPECTED_FAIL_MINGW): Add dbugeval4.
2022-10-23 Arnold D. Robbins <arnold@skeeve.com>
diff --git a/test/Makefile.am b/test/Makefile.am
index 12046956..4c98b10f 100644
--- a/test/Makefile.am
+++ b/test/Makefile.am
@@ -1,7 +1,7 @@
#
# test/Makefile.am --- automake input file for gawk
#
-# Copyright (C) 1988-2022 the Free Software Foundation, Inc.
+# Copyright (C) 1988-2023 the Free Software Foundation, Inc.
#
# This file is part of GAWK, the GNU implementation of the
# AWK Programming Language.
@@ -290,6 +290,8 @@ EXTRA_DIST = \
dumpvars.ok \
dynlj.awk \
dynlj.ok \
+ elemnew1.awk \
+ elemnew1.ok \
escapebrace.awk \
escapebrace.in \
escapebrace.ok \
@@ -319,6 +321,9 @@ EXTRA_DIST = \
fcall_exit2.ok \
fflush.ok \
fflush.sh \
+ fieldassign.awk \
+ fieldassign.in \
+ fieldassign.ok \
fieldwdth.awk \
fieldwdth.in \
fieldwdth.ok \
@@ -1460,7 +1465,8 @@ BASIC_TESTS = \
delarprm delfunc dfacheck2 dfamb1 dfastress divzero divzero2 \
dynlj eofsplit \
eofsrc1 escapebrace exit2 exitval1 exitval2 exitval3 fcall_exit \
- fcall_exit2 fldchg fldchgnf fldterm fnamedat fnarray fnarray2 \
+ fcall_exit2 \
+ fieldassign fldchg fldchgnf fldterm fnamedat fnarray fnarray2 \
fnaryscl fnasgnm fnmisc fordel forref forsimp fsbs fscaret fsnul1 \
fsrs fsspcoln fstabplus funsemnl funsmnam funstack getline \
getline2 getline3 getline4 getline5 getlnbuf getlnfa getnr2tb \
@@ -1499,7 +1505,7 @@ GAWK_EXT_TESTS = \
clos1way5 clos1way6 colonwarn commas crlf csv1 dbugeval dbugeval2 \
dbugeval3 dbugeval4 dbugtypedre1 dbugtypedre2 delsub \
devfd devfd1 devfd2 dfacheck1 dumpvars \
- errno exit fieldwdth forcenum fpat1 fpat2 \
+ elemnew1 errno exit fieldwdth forcenum fpat1 fpat2 \
fpat3 fpat4 fpat5 fpat6 fpat7 fpat8 fpat9 fpatnull fsfwfs functab1 \
functab2 functab3 functab6 funlen fwtest fwtest2 fwtest3 fwtest4 \
fwtest5 fwtest6 fwtest7 fwtest8 genpot gensub gensub2 gensub3 \
diff --git a/test/Makefile.in b/test/Makefile.in
index 11f8bee7..bea9c6d3 100644
--- a/test/Makefile.in
+++ b/test/Makefile.in
@@ -17,7 +17,7 @@
#
# test/Makefile.am --- automake input file for gawk
#
-# Copyright (C) 1988-2022 the Free Software Foundation, Inc.
+# Copyright (C) 1988-2023 the Free Software Foundation, Inc.
#
# This file is part of GAWK, the GNU implementation of the
# AWK Programming Language.
@@ -554,6 +554,8 @@ EXTRA_DIST = \
dumpvars.ok \
dynlj.awk \
dynlj.ok \
+ elemnew1.awk \
+ elemnew1.ok \
escapebrace.awk \
escapebrace.in \
escapebrace.ok \
@@ -583,6 +585,9 @@ EXTRA_DIST = \
fcall_exit2.ok \
fflush.ok \
fflush.sh \
+ fieldassign.awk \
+ fieldassign.in \
+ fieldassign.ok \
fieldwdth.awk \
fieldwdth.in \
fieldwdth.ok \
@@ -1724,7 +1729,8 @@ BASIC_TESTS = \
delarprm delfunc dfacheck2 dfamb1 dfastress divzero divzero2 \
dynlj eofsplit \
eofsrc1 escapebrace exit2 exitval1 exitval2 exitval3 fcall_exit \
- fcall_exit2 fldchg fldchgnf fldterm fnamedat fnarray fnarray2 \
+ fcall_exit2 \
+ fieldassign fldchg fldchgnf fldterm fnamedat fnarray fnarray2 \
fnaryscl fnasgnm fnmisc fordel forref forsimp fsbs fscaret fsnul1 \
fsrs fsspcoln fstabplus funsemnl funsmnam funstack getline \
getline2 getline3 getline4 getline5 getlnbuf getlnfa getnr2tb \
@@ -1763,7 +1769,7 @@ GAWK_EXT_TESTS = \
clos1way5 clos1way6 colonwarn commas crlf csv1 dbugeval dbugeval2 \
dbugeval3 dbugeval4 dbugtypedre1 dbugtypedre2 delsub \
devfd devfd1 devfd2 dfacheck1 dumpvars \
- errno exit fieldwdth forcenum fpat1 fpat2 \
+ elemnew1 errno exit fieldwdth forcenum fpat1 fpat2 \
fpat3 fpat4 fpat5 fpat6 fpat7 fpat8 fpat9 fpatnull fsfwfs functab1 \
functab2 functab3 functab6 funlen fwtest fwtest2 fwtest3 fwtest4 \
fwtest5 fwtest6 fwtest7 fwtest8 genpot gensub gensub2 gensub3 \
@@ -3387,6 +3393,11 @@ fcall_exit2:
@-AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+fieldassign:
+ @echo $@
+ @-AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+
fldchg:
@echo $@
@-AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -4507,6 +4518,11 @@ dfacheck1:
@-AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+elemnew1:
+ @echo $@
+ @-AWKPATH="$(srcdir)" $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+
exit:
@echo $@
@-$(LOCALES) AWK="$(AWKPROG)" "$(srcdir)"/$@.sh > _$@ 2>&1 || echo EXIT CODE: $$? >>_$@
diff --git a/test/Maketests b/test/Maketests
index 16ea147c..31d5f1a0 100644
--- a/test/Maketests
+++ b/test/Maketests
@@ -327,6 +327,11 @@ fcall_exit2:
@-AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+fieldassign:
+ @echo $@
+ @-AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+
fldchg:
@echo $@
@-AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@@ -1447,6 +1452,11 @@ dfacheck1:
@-AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+elemnew1:
+ @echo $@
+ @-AWKPATH="$(srcdir)" $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+
exit:
@echo $@
@-$(LOCALES) AWK="$(AWKPROG)" "$(srcdir)"/$@.sh > _$@ 2>&1 || echo EXIT CODE: $$? >>_$@
diff --git a/test/badargs.ok b/test/badargs.ok
index ea022461..d2c67cac 100644
--- a/test/badargs.ok
+++ b/test/badargs.ok
@@ -40,6 +40,9 @@ https://www.gnu.org/software/gawk/manual/html_node/Bugs.html.
PLEASE do NOT try to report bugs by posting in comp.lang.awk,
or by using a web forum such as Stack Overflow.
+Source code for gawk may be obtained from
+https://www.skeeve.com/gawk/gawk-5.2.60.tar.gz
+
gawk is a pattern scanning and processing language.
By default it reads standard input and writes standard output.
diff --git a/test/elemnew1.awk b/test/elemnew1.awk
new file mode 100644
index 00000000..36d3de16
--- /dev/null
+++ b/test/elemnew1.awk
@@ -0,0 +1,8 @@
+ function tailmatch(string) {
+ length(string)
+ }
+
+ BEGIN {
+ tailmatch(defanchors["test"])
+ defanchors["test"] = defanchors["test"]
+ }
diff --git a/test/elemnew1.ok b/test/elemnew1.ok
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/test/elemnew1.ok
diff --git a/test/fieldassign.awk b/test/fieldassign.awk
new file mode 100644
index 00000000..631775b1
--- /dev/null
+++ b/test/fieldassign.awk
@@ -0,0 +1 @@
+gsub(/./, "@") && $0 = $1
diff --git a/test/fieldassign.in b/test/fieldassign.in
new file mode 100644
index 00000000..5f5521fa
--- /dev/null
+++ b/test/fieldassign.in
@@ -0,0 +1,2 @@
+abc
+def
diff --git a/test/fieldassign.ok b/test/fieldassign.ok
new file mode 100644
index 00000000..11e9cfd5
--- /dev/null
+++ b/test/fieldassign.ok
@@ -0,0 +1,2 @@
+@@@
+@@@
diff --git a/test/makepmafile.c b/test/makepmafile.c
index c6df717d..8f7d2257 100644
--- a/test/makepmafile.c
+++ b/test/makepmafile.c
@@ -3,7 +3,7 @@
*/
/*
- * Copyright (C) 2022,
+ * Copyright (C) 2022, 2023,
* the Free Software Foundation, Inc.
*
* This file is part of GAWK, the GNU implementation of the
@@ -38,7 +38,7 @@ main(int argc, char **argv)
{
size_t four_meg = 1024 * 1024 * 4;
char c = 0;
- int fd = creat("test.pma", 0666);
+ int fd = creat("test.pma", 0600);
if (fd < 0) {
fprintf(stderr, "%s: could not create test.pma: %s\n",
diff --git a/test/time.awk b/test/time.awk
index 517377e2..377aba45 100644
--- a/test/time.awk
+++ b/test/time.awk
@@ -4,19 +4,25 @@
# gettimeofday() before systime() to make sure the subtraction gives 0
# without risk of rolling over to the next second.
function timecheck(st,res) {
- res = gettimeofday()
- st = systime()
- printf "gettimeofday - systime = %d\n", res-st
- return res
+ res = gettimeofday()
+ st = systime()
+ printf "gettimeofday - systime = %d\n", res-st
+ return res
}
BEGIN {
- delta = 1.3
- t0 = timecheck()
- printf "sleep(%s) = %s\n",delta,sleep(delta)
- t1 = timecheck()
- slept = t1-t0
- if ((slept < 0.9*delta) || (slept > 1.3*delta))
- printf "Warning: tried to sleep %.2f secs, but slept for %.2f secs\n",
- delta,slept
+ delta = 1.3
+ t0 = timecheck()
+ printf "sleep(%s) = %s\n",delta,sleep(delta)
+ t1 = timecheck()
+ slept = t1-t0
+ if ((slept < 0.9*delta) || (slept > 1.3*delta))
+ printf "Warning: tried to sleep %.2f secs, but slept for %.2f secs\n",
+ delta,slept
+
+ format = "%b %d %H:%M:%S %Y"
+ the_date = "Feb 11 13:12:11 1990"
+ then = strptime(the_date, format)
+ when = strftime(format, then)
+ print "<" the_date ">", "<<" when ">>"
}
diff --git a/test/time.ok b/test/time.ok
index ffd21696..b781f212 100644
--- a/test/time.ok
+++ b/test/time.ok
@@ -1,4 +1,4 @@
-gawk: time.awk:2: warning: The time extension is obsolete. Use the timex extension from gawkextlib instead.
gettimeofday - systime = 0
sleep(1.3) = 0
gettimeofday - systime = 0
+<Feb 11 13:12:11 1990> <<Feb 11 13:12:11 1990>>