diff options
author | Sergey Poznyakoff <gray@gnu.org.ua> | 2009-02-16 16:17:03 +0200 |
---|---|---|
committer | Sergey Poznyakoff <gray@gnu.org.ua> | 2009-02-16 16:23:53 +0200 |
commit | 6cfe6f8fe1b7506e772403fecc9d7298fc52dc74 (patch) | |
tree | 64e579d8895bfecfadceb9914f9f795d75e4ccbb /tests | |
parent | 98ca4bb1bc96cc95bdd141cb653b17029957de38 (diff) | |
download | wydawca-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/.gitignore | 6 | ||||
-rw-r--r-- | tests/Makefile.am | 67 | ||||
-rw-r--r-- | tests/atlocal.in | 9 | ||||
-rw-r--r-- | tests/etc/.gitignore | 2 | ||||
-rw-r--r-- | tests/etc/Makefile.am | 27 | ||||
-rw-r--r-- | tests/etc/pubring.asc | 30 | ||||
-rw-r--r-- | tests/etc/secring.asc | 31 | ||||
-rw-r--r-- | tests/testsuite.at | 25 | ||||
-rw-r--r-- | tests/version.at | 34 |
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 + |