aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorSergey Poznyakoff <gray@gnu.org.ua>2009-02-16 16:17:03 +0200
committerSergey Poznyakoff <gray@gnu.org.ua>2009-02-16 16:23:53 +0200
commit6cfe6f8fe1b7506e772403fecc9d7298fc52dc74 (patch)
tree64e579d8895bfecfadceb9914f9f795d75e4ccbb /tests
parent98ca4bb1bc96cc95bdd141cb653b17029957de38 (diff)
downloadwydawca-6cfe6f8fe1b7506e772403fecc9d7298fc52dc74.tar.gz
wydawca-6cfe6f8fe1b7506e772403fecc9d7298fc52dc74.tar.bz2
Improve keyword (meta) expansion, add testsuite framework
* src/meta.c: New file. * src/Makefile.am (wydawca_SOURCES): Add meta.c. * Makefile.am (SUBDIRS): Add tests. * configure.ac: Initialize testsuite. * src/cmdline.opt: Add preprocessor-related options: --[no-]preprocessor, -E * src/mail.c, src/triplet.c, src/verify.c, src/wydawca.c, src/wydawca.h: Use new expansion functions. * src/update-2.0.awk: Replace % markup with $. * etc/wydawca.rc: Switch to new meta-variable syntax. * gnulib.modules: Add c-ctype. * doc/Makefile.am (check-options): Rewrite. * doc/wydawca.texi: Mark unrevised/obsolete material. * tests/: New directory
Diffstat (limited to 'tests')
-rw-r--r--tests/.gitignore6
-rw-r--r--tests/Makefile.am67
-rw-r--r--tests/atlocal.in9
-rw-r--r--tests/etc/.gitignore2
-rw-r--r--tests/etc/Makefile.am27
-rw-r--r--tests/etc/pubring.asc30
-rw-r--r--tests/etc/secring.asc31
-rw-r--r--tests/testsuite.at25
-rw-r--r--tests/version.at34
9 files changed, 231 insertions, 0 deletions
diff --git a/tests/.gitignore b/tests/.gitignore
new file mode 100644
index 0000000..93f8f46
--- /dev/null
+++ b/tests/.gitignore
@@ -0,0 +1,6 @@
+atconfig
+atlocal
+package.m4
+testsuite
+testsuite.dir
+testsuite.log
diff --git a/tests/Makefile.am b/tests/Makefile.am
new file mode 100644
index 0000000..dff0097
--- /dev/null
+++ b/tests/Makefile.am
@@ -0,0 +1,67 @@
+# This file is part of Wydawca
+# Copyright (C) 2009 Sergey Poznyakoff
+#
+# Wydawca is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3, or (at your option)
+# any later version.
+#
+# Wydawca is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Wydawca. If not, see <http://www.gnu.org/licenses/>.
+
+EXTRA_DIST = $(TESTSUITE_AT) testsuite package.m4
+DISTCLEANFILES = atconfig $(check_SCRIPTS)
+MAINTAINERCLEANFILES = Makefile.in $(TESTSUITE)
+SUBDIRS = etc
+
+## ------------ ##
+## package.m4. ##
+## ------------ ##
+
+$(srcdir)/package.m4: $(top_srcdir)/configure.ac
+ { \
+ echo '# Signature of the current package.'; \
+ echo 'm4_define([AT_PACKAGE_NAME], [@PACKAGE_NAME@])'; \
+ echo 'm4_define([AT_PACKAGE_TARNAME], [@PACKAGE_TARNAME@])'; \
+ echo 'm4_define([AT_PACKAGE_VERSION], [@PACKAGE_VERSION@])'; \
+ echo 'm4_define([AT_PACKAGE_STRING], [@PACKAGE_STRING@])'; \
+ echo 'm4_define([AT_PACKAGE_BUGREPORT], [@PACKAGE_BUGREPORT@])'; \
+ } >$(srcdir)/package.m4
+
+#
+
+## ------------ ##
+## Test suite. ##
+## ------------ ##
+
+TESTSUITE_AT = \
+ testsuite.at\
+ version.at
+
+TESTSUITE = $(srcdir)/testsuite
+M4=m4
+
+AUTOTEST = $(AUTOM4TE) --language=autotest
+$(TESTSUITE): package.m4 $(TESTSUITE_AT)
+ $(AUTOTEST) -I $(srcdir) testsuite.at -o $@.tmp
+ mv $@.tmp $@
+
+atconfig: $(top_builddir)/config.status
+ cd $(top_builddir) && ./config.status tests/$@
+
+clean-local:
+ test ! -f $(TESTSUITE) || $(SHELL) $(TESTSUITE) --clean
+
+check-local: atconfig atlocal $(TESTSUITE)
+ $(SHELL) $(TESTSUITE)
+
+# Run the test suite on the *installed* tree.
+#installcheck-local:
+# $(SHELL) $(TESTSUITE) AUTOTEST_PATH=$(exec_prefix)/bin
+
+
diff --git a/tests/atlocal.in b/tests/atlocal.in
new file mode 100644
index 0000000..898005b
--- /dev/null
+++ b/tests/atlocal.in
@@ -0,0 +1,9 @@
+# @configure_input@ -*- shell-script -*-
+# Configurable variable values for Wydawca test suite.
+# Copyright (C) 2009 Sergey Poznyakoff
+
+PATH=@abs_builddir@:@abs_top_builddir@/src:@abs_top_srcdir@/build-aux:$top_srcdir:$srcdir:$PATH
+
+XFAILFILE=$abs_builddir/.badversion
+
+trap "cleanup; test -r $XFAILFILE && cat $XFAILFILE; exit $?" 1 2 13 15
diff --git a/tests/etc/.gitignore b/tests/etc/.gitignore
new file mode 100644
index 0000000..8f61f97
--- /dev/null
+++ b/tests/etc/.gitignore
@@ -0,0 +1,2 @@
+*.gpg
+random_seed
diff --git a/tests/etc/Makefile.am b/tests/etc/Makefile.am
new file mode 100644
index 0000000..af7b28e
--- /dev/null
+++ b/tests/etc/Makefile.am
@@ -0,0 +1,27 @@
+# This file is part of Wydawca
+# Copyright (C) 2009 Sergey Poznyakoff
+#
+# Wydawca is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3, or (at your option)
+# any later version.
+#
+# Wydawca is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Wydawca. If not, see <http://www.gnu.org/licenses/>.
+
+GPGFILES = secring.gpg pubring.gpg
+noinst_DATA = @WYDAWCA_GPGFILES@
+
+EXTRA_DIST = pubring.asc secring.asc
+
+GPG_FLAGS = --quiet --no-permission-warning --homedir .
+pubring.gpg secring.gpg: $(srcdir)/pubring.asc $(srcdir)/secring.asc
+ $(GPG) $(GPG_FLAGS) --import < $(srcdir)/pubring.asc
+ $(GPG) $(GPG_FLAGS) --allow-secret-key-import --import < $(srcdir)/secring.asc
+
+DISTCLEANFILES = *.gpg *.gpg~
diff --git a/tests/etc/pubring.asc b/tests/etc/pubring.asc
new file mode 100644
index 0000000..ba1f166
--- /dev/null
+++ b/tests/etc/pubring.asc
@@ -0,0 +1,30 @@
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+Version: GnuPG v1.4.7 (GNU/Linux)
+
+mQGhBEmZcTERBAD9sD9d3xhVHURwbLcHUHIK6LGSHAlFzKv4MSOk+6nJhdvbQfIV
+YAe6VZ8fTX8EX7f0Vw53or1mlBOZpMNeEHp/IejFwnT3pAF3xiHTwbmwJg+0RuKo
+dwfN0vO9xECj3/ZsBvSYbYty8Vmy2e8osrNdXAXd+8Z3xJ3reAWOujGj9wCg1qg5
+1LJgEIbPdZm0Iv43Pvdzbi8EAMlW6oZuBFuQXf0e2NceZKrZvGjFDWLgIgHvLmXb
+0d+7kmLgCwJ2J7byOAnKQ8eu/1+V3WYvYd6Scut3809J8Cx5KhEbwuZLx/V4yUUW
+S2SjFV4i+5qqvPwrgGezd5Cus5qxkOabXitG8EccQe0k8lhiRKLgt6zBftC+MgDX
+o4NwA/UZqm58F4jLuVDHbnz9Jv5/jfyduzg6UwGgU+IdE9eBpmzmVGdgVQixGFRW
+hIiDdCo6y4yvljBy6jaZVuwDc8jrVQDo8bo3EWkkcajXT+BVCpkSJAPLfDnKXJW0
+jXM9X/zNiZBNoEyx/qRUEvHO1irSffSZ1kiJMMGRaNN7T7jMtCxXeWRhd2NhIChU
+ZXN0c3VpdGUpIDxidWctd3lkYXdjYUBnbnUub3JnLnVhPohgBBMRAgAgBQJJmXEx
+AhsDBgsJCAcDAgQVAggDBBYCAwECHgECF4AACgkQCZA3/2YT9iMLKQCgwpamuefh
+VAluEw4g+ym1sVi5nxsAn3X1MBePRzYgkJX7vloEwKql63FfuQINBEmZcTEQCACI
+jtyYxEdnXUHwLdQwkvlP7lBsTNn+ofO6Kyf7qMF+dY4PeE/IyO9orcj04iUZ038V
+8WpP1dWkiqXhxN/MQdPNKDcXGbOqtGz8FmsoHlS8lqRO0Tgz44K6hejHHx2gduZe
+uiKCbKjy12lpL5QmRO98Dk9h5M3uRQ8SoKVLzd93TFStDHrlFmialzWFLRidS9fB
+SXmlGQleNS3+WIL8YXr5t4oHIOL9Lq8ZOES4QtZ/vf0DSgJX9eR2vgCeevFlJmAt
++8psU+cFCzxNb4gHsHcOTqR4H/aXnQp2g+q3pJaev41/V3oVc0ANKQbUV/0SLTK8
+2Ns7Z1+kV/tzsfA1vVmDAAMGB/49jdR1WSY1dX2aA3Ez3jd9EZL3qgYtsjPt2ZgY
+ySFI0gDSniKYayUoDTC7dQ3GYiKhhupiFeIgEbGkKyGZIWbZCFwkqJOzdPWgPRNg
+JXB9hKRGwViZVbvAhcHec83IqGjrndt3oQnlfMrLNR12KWsOpQRYJ8F4CMSNSsQx
+JsjkjStgy/A1zbzkVlgf50lY5sltcWuOYU66lqq63QlK+uwNt1bqIS62fvDNeQK6
+P2O3QX5lg75nEzdUmHyP+yTlSjHTPf7qaRx9UPpnf7r9t/IcjkXAMu6Y2LMgfbTA
+qVoOxiH7h8CeNXaVg8QF2cHGdwGLDvZ3X+Vtck/LjjdmHxiiiEkEGBECAAkFAkmZ
+cTECGwwACgkQCZA3/2YT9iOTCwCeNckYjNiatFHHlOqph3N5hYmix6MAnRPeCkG4
+BBXnlxcgH/vqaSpx7Fgr
+=gYgX
+-----END PGP PUBLIC KEY BLOCK-----
diff --git a/tests/etc/secring.asc b/tests/etc/secring.asc
new file mode 100644
index 0000000..28dd1d1
--- /dev/null
+++ b/tests/etc/secring.asc
@@ -0,0 +1,31 @@
+-----BEGIN PGP PRIVATE KEY BLOCK-----
+Version: GnuPG v1.4.7 (GNU/Linux)
+
+lQG6BEmZcTERBAD9sD9d3xhVHURwbLcHUHIK6LGSHAlFzKv4MSOk+6nJhdvbQfIV
+YAe6VZ8fTX8EX7f0Vw53or1mlBOZpMNeEHp/IejFwnT3pAF3xiHTwbmwJg+0RuKo
+dwfN0vO9xECj3/ZsBvSYbYty8Vmy2e8osrNdXAXd+8Z3xJ3reAWOujGj9wCg1qg5
+1LJgEIbPdZm0Iv43Pvdzbi8EAMlW6oZuBFuQXf0e2NceZKrZvGjFDWLgIgHvLmXb
+0d+7kmLgCwJ2J7byOAnKQ8eu/1+V3WYvYd6Scut3809J8Cx5KhEbwuZLx/V4yUUW
+S2SjFV4i+5qqvPwrgGezd5Cus5qxkOabXitG8EccQe0k8lhiRKLgt6zBftC+MgDX
+o4NwA/UZqm58F4jLuVDHbnz9Jv5/jfyduzg6UwGgU+IdE9eBpmzmVGdgVQixGFRW
+hIiDdCo6y4yvljBy6jaZVuwDc8jrVQDo8bo3EWkkcajXT+BVCpkSJAPLfDnKXJW0
+jXM9X/zNiZBNoEyx/qRUEvHO1irSffSZ1kiJMMGRaNN7T7jMAACgyZlnaO3GvmSE
+ZrBEZDY5MBZJyGgKFrQsV3lkYXdjYSAoVGVzdHN1aXRlKSA8YnVnLXd5ZGF3Y2FA
+Z251Lm9yZy51YT6IYAQTEQIAIAUCSZlxMQIbAwYLCQgHAwIEFQIIAwQWAgMBAh4B
+AheAAAoJEAmQN/9mE/YjCykAoMKWprnn4VQJbhMOIPsptbFYuZ8bAJ919TAXj0c2
+IJCV+75aBMCqpetxX50CPQRJmXExEAgAiI7cmMRHZ11B8C3UMJL5T+5QbEzZ/qHz
+uisn+6jBfnWOD3hPyMjvaK3I9OIlGdN/FfFqT9XVpIql4cTfzEHTzSg3FxmzqrRs
+/BZrKB5UvJakTtE4M+OCuoXoxx8doHbmXroigmyo8tdpaS+UJkTvfA5PYeTN7kUP
+EqClS83fd0xUrQx65RZompc1hS0YnUvXwUl5pRkJXjUt/liC/GF6+beKByDi/S6v
+GThEuELWf739A0oCV/Xkdr4AnnrxZSZgLfvKbFPnBQs8TW+IB7B3Dk6keB/2l50K
+doPqt6SWnr+Nf1d6FXNADSkG1Ff9Ei0yvNjbO2dfpFf7c7HwNb1ZgwADBgf+PY3U
+dVkmNXV9mgNxM943fRGS96oGLbIz7dmYGMkhSNIA0p4imGslKA0wu3UNxmIioYbq
+YhXiIBGxpCshmSFm2QhcJKiTs3T1oD0TYCVwfYSkRsFYmVW7wIXB3nPNyKho653b
+d6EJ5XzKyzUddilrDqUEWCfBeAjEjUrEMSbI5I0rYMvwNc285FZYH+dJWObJbXFr
+jmFOupaqut0JSvrsDbdW6iEutn7wzXkCuj9jt0F+ZYO+ZxM3VJh8j/sk5Uox0z3+
+6mkcfVD6Z3+6/bfyHI5FwDLumNizIH20wKlaDsYh+4fAnjV2lYPEBdnBxncBiw72
+d1/lbXJPy443Zh8YogABUwfJqr9IlIvAnQAGKTGZf/5o0jVA2+M42kKHWkl7EtE+
+xmQHC0lW1oVydWETzIhJBBgRAgAJBQJJmXExAhsMAAoJEAmQN/9mE/YjkwsAn000
+qTmHvb87tb4gaYloh0hXnp8TAJ47dSwMRedgWlX4INTUhdbelZAM9w==
+=yYPX
+-----END PGP PRIVATE KEY BLOCK-----
diff --git a/tests/testsuite.at b/tests/testsuite.at
new file mode 100644
index 0000000..5dc1661
--- /dev/null
+++ b/tests/testsuite.at
@@ -0,0 +1,25 @@
+# Process this file with autom4te to create testsuite. -*- Autotest -*-
+# This file is part of Wydawca
+# Copyright (C) 2009 Sergey Poznyakoff
+#
+# Wydawca is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3, or (at your option)
+# any later version.
+#
+# Wydawca is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Wydawca. If not, see <http://www.gnu.org/licenses/>.
+
+m4_version_prereq([2.52g])
+
+m4_define([AT_SKIP_TEST],[exit 77])
+
+AT_INIT
+AT_TESTED([wydawca])
+m4_include([version.at])
+
diff --git a/tests/version.at b/tests/version.at
new file mode 100644
index 0000000..39876cc
--- /dev/null
+++ b/tests/version.at
@@ -0,0 +1,34 @@
+# Checking wydawca version -*- Autotest -*-
+# Copyright (C) 2009 Sergey Poznyakoff
+#
+# Wydawca is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3, or (at your option)
+# any later version.
+#
+# Wydawca is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Wydawca. If not, see <http://www.gnu.org/licenses/>.
+
+AT_SETUP([wydawca version])
+
+AT_CHECK([wydawca --version | sed 1q],
+ [0],
+ [AT_PACKAGE_TARNAME (AT_PACKAGE_NAME) AT_PACKAGE_VERSION
+],
+[],
+[cat >$[]XFAILFILE <<'_EOT'
+
+==============================================================
+WARNING: Not using the proper version, *all* checks dubious...
+==============================================================
+_EOT
+],
+[rm -f $[]XFAILFILE])
+
+AT_CLEANUP
+

Return to:

Send suggestions and report system problems to the System administrator.