From: Chris Lamb Date: Sat, 31 Oct 2009 21:35:19 +0000 (+0000) Subject: Port old tests to unittest; currently 18 failures. X-Git-Url: https://git.decadent.org.uk/gitweb/?a=commitdiff_plain;h=47955ee9a5730c81b21ca9f31da4c176a82bcdc4;p=dak.git Port old tests to unittest; currently 18 failures. Signed-off-by: Chris Lamb --- diff --git a/dak/test/001/1.dsc b/dak/test/001/1.dsc deleted file mode 100644 index dfdd92f7..00000000 --- a/dak/test/001/1.dsc +++ /dev/null @@ -1,22 +0,0 @@ ------BEGIN PGP SIGNED MESSAGE----- -Hash: SHA1 - -Format: 1.0 -Source: amaya -Version: 3.2.1-1 -Binary: amaya -Maintainer: Steve Dunham -Architecture: any -Standards-Version: 2.4.0.0 -Files: - 07f95f92b7cb0f12f7cf65ee5c5fbde2 4532418 amaya_3.2.1.orig.tar.gz - da06b390946745d9efaf9e7df8e05092 4817 amaya_3.2.1-1.diff.gz - ------BEGIN PGP SIGNATURE----- -Version: GnuPG v1.0.2 (GNU/Linux) -Comment: For info see http://www.gnupg.org - -iD8DBQE5j091iPgEjVqvb1kRAvFtAJ0asUAaac6ebfR3YeaH16HjL7F3GwCfV+AQ -rhYnRmVuNMa8oYSvL4hl/Yw= -=EFAA ------END PGP SIGNATURE----- diff --git a/dak/test/001/2.dsc b/dak/test/001/2.dsc deleted file mode 100644 index a6c9d85a..00000000 --- a/dak/test/001/2.dsc +++ /dev/null @@ -1,21 +0,0 @@ ------BEGIN PGP SIGNED MESSAGE----- -Hash: SHA1 - -Format: 1.0 -Source: amaya -Version: 3.2.1-1 -Binary: amaya -Maintainer: Steve Dunham -Architecture: any -Standards-Version: 2.4.0.0 -Files: - 07f95f92b7cb0f12f7cf65ee5c5fbde2 4532418 amaya_3.2.1.orig.tar.gz - da06b390946745d9efaf9e7df8e05092 4817 amaya_3.2.1-1.diff.gz ------BEGIN PGP SIGNATURE----- -Version: GnuPG v1.0.2 (GNU/Linux) -Comment: For info see http://www.gnupg.org - -iD8DBQE5j091iPgEjVqvb1kRAvFtAJ0asUAaac6ebfR3YeaH16HjL7F3GwCfV+AQ -rhYnRmVuNMa8oYSvL4hl/Yw= -=EFAA ------END PGP SIGNATURE----- diff --git a/dak/test/001/3.dsc b/dak/test/001/3.dsc deleted file mode 100644 index 211340ed..00000000 --- a/dak/test/001/3.dsc +++ /dev/null @@ -1,21 +0,0 @@ ------BEGIN PGP SIGNED MESSAGE----- -Hash: SHA1 -Format: 1.0 -Source: amaya -Version: 3.2.1-1 -Binary: amaya -Maintainer: Steve Dunham -Architecture: any -Standards-Version: 2.4.0.0 -Files: - 07f95f92b7cb0f12f7cf65ee5c5fbde2 4532418 amaya_3.2.1.orig.tar.gz - da06b390946745d9efaf9e7df8e05092 4817 amaya_3.2.1-1.diff.gz - ------BEGIN PGP SIGNATURE----- -Version: GnuPG v1.0.2 (GNU/Linux) -Comment: For info see http://www.gnupg.org - -iD8DBQE5j091iPgEjVqvb1kRAvFtAJ0asUAaac6ebfR3YeaH16HjL7F3GwCfV+AQ -rhYnRmVuNMa8oYSvL4hl/Yw= -=EFAA ------END PGP SIGNATURE----- diff --git a/dak/test/001/4.dsc b/dak/test/001/4.dsc deleted file mode 100644 index 91e361f7..00000000 --- a/dak/test/001/4.dsc +++ /dev/null @@ -1,19 +0,0 @@ ------BEGIN PGP SIGNED MESSAGE----- -Hash: SHA1 -Format: 1.0 -Source: amaya -Version: 3.2.1-1 -Binary: amaya -Maintainer: Steve Dunham -Architecture: any -Standards-Version: 2.4.0.0 -Files: - 07f95f92b7cb0f12f7cf65ee5c5fbde2 4532418 amaya_3.2.1.orig.tar.gz - da06b390946745d9efaf9e7df8e05092 4817 amaya_3.2.1-1.diff.gz ------BEGIN PGP SIGNATURE----- -Version: GnuPG v1.0.2 (GNU/Linux) -Comment: For info see http://www.gnupg.org -iD8DBQE5j091iPgEjVqvb1kRAvFtAJ0asUAaac6ebfR3YeaH16HjL7F3GwCfV+AQ -rhYnRmVuNMa8oYSvL4hl/Yw= -=EFAA ------END PGP SIGNATURE----- diff --git a/dak/test/001/5.dsc b/dak/test/001/5.dsc deleted file mode 100644 index db9d8d30..00000000 --- a/dak/test/001/5.dsc +++ /dev/null @@ -1,23 +0,0 @@ ------BEGIN PGP SIGNED MESSAGE----- -Hash: SHA1 - -Format: 1.0 -Source: amaya -Version: 3.2.1-1 -Binary: amaya -Maintainer: Steve Dunham -Architecture: any -Standards-Version: 2.4.0.0 -Files: - 07f95f92b7cb0f12f7cf65ee5c5fbde2 4532418 amaya_3.2.1.orig.tar.gz - da06b390946745d9efaf9e7df8e05092 4817 amaya_3.2.1-1.diff.gz - - ------BEGIN PGP SIGNATURE----- -Version: GnuPG v1.0.2 (GNU/Linux) -Comment: For info see http://www.gnupg.org - -iD8DBQE5j091iPgEjVqvb1kRAvFtAJ0asUAaac6ebfR3YeaH16HjL7F3GwCfV+AQ -rhYnRmVuNMa8oYSvL4hl/Yw= -=EFAA ------END PGP SIGNATURE----- diff --git a/dak/test/001/6.dsc b/dak/test/001/6.dsc deleted file mode 100644 index ae36d643..00000000 --- a/dak/test/001/6.dsc +++ /dev/null @@ -1,23 +0,0 @@ ------BEGIN PGP SIGNED MESSAGE----- -Hash: SHA1 - - -Format: 1.0 -Source: amaya -Version: 3.2.1-1 -Binary: amaya -Maintainer: Steve Dunham -Architecture: any -Standards-Version: 2.4.0.0 -Files: - 07f95f92b7cb0f12f7cf65ee5c5fbde2 4532418 amaya_3.2.1.orig.tar.gz - da06b390946745d9efaf9e7df8e05092 4817 amaya_3.2.1-1.diff.gz - ------BEGIN PGP SIGNATURE----- -Version: GnuPG v1.0.2 (GNU/Linux) -Comment: For info see http://www.gnupg.org - -iD8DBQE5j091iPgEjVqvb1kRAvFtAJ0asUAaac6ebfR3YeaH16HjL7F3GwCfV+AQ -rhYnRmVuNMa8oYSvL4hl/Yw= -=EFAA ------END PGP SIGNATURE----- diff --git a/dak/test/001/test.py b/dak/test/001/test.py deleted file mode 100644 index 8238c20f..00000000 --- a/dak/test/001/test.py +++ /dev/null @@ -1,94 +0,0 @@ -#!/usr/bin/env python - -# Check utils.parse_changes()'s .dsc file validation -# Copyright (C) 2000, 2006 James Troup - -# This program 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 2 of the License, or -# (at your option) any later version. - -# This program 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 this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -################################################################################ - -import os, sys - -sys.path.append(os.path.abspath('../../')) - -import utils - -################################################################################ - -def fail(message): - sys.stderr.write("%s\n" % (message)) - sys.exit(1) - -################################################################################ - -def main (): - # Valid .dsc - utils.parse_changes('1.dsc',1) - - # Missing blank line before signature body - try: - utils.parse_changes('2.dsc',1) - except utils.invalid_dsc_format_exc, line: - if line != 14: - fail("Incorrect line number ('%s') for test #2." % (line)) - else: - fail("Test #2 wasn't recognised as invalid.") - - # Missing blank line after signature header - try: - utils.parse_changes('3.dsc',1) - except utils.invalid_dsc_format_exc, line: - if line != 14: - fail("Incorrect line number ('%s') for test #3." % (line)) - else: - fail("Test #3 wasn't recognised as invalid.") - - # No blank lines at all - try: - utils.parse_changes('4.dsc',1) - except utils.invalid_dsc_format_exc, line: - if line != 19: - fail("Incorrect line number ('%s') for test #4." % (line)) - else: - fail("Test #4 wasn't recognised as invalid.") - - # Extra blank line before signature body - try: - utils.parse_changes('5.dsc',1) - except utils.invalid_dsc_format_exc, line: - if line != 15: - fail("Incorrect line number ('%s') for test #5." % (line)) - else: - fail("Test #5 wasn't recognised as invalid.") - - # Extra blank line after signature header - try: - utils.parse_changes('6.dsc',1) - except utils.invalid_dsc_format_exc, line: - if line != 5: - fail("Incorrect line number ('%s') for test #6." % (line)) - else: - fail("Test #6 wasn't recognised as invalid.") - - # Valid .dsc ; ignoring errors - utils.parse_changes('1.dsc', 0) - - # Invalid .dsc ; ignoring errors - utils.parse_changes('2.dsc', 0) - -################################################################################ - -if __name__ == '__main__': - main() diff --git a/dak/test/002/empty.changes b/dak/test/002/empty.changes deleted file mode 100644 index e69de29b..00000000 diff --git a/dak/test/002/test.py b/dak/test/002/test.py deleted file mode 100644 index 919a70ab..00000000 --- a/dak/test/002/test.py +++ /dev/null @@ -1,49 +0,0 @@ -#!/usr/bin/env python - -# Check utils.parse_changes()'s for handling empty files -# Copyright (C) 2000, 2006 James Troup - -# This program 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 2 of the License, or -# (at your option) any later version. - -# This program 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 this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -################################################################################ - -import os, sys - -sys.path.append(os.path.abspath('../../')) - -import utils - -################################################################################ - -def fail(message): - sys.stderr.write("%s\n" % (message)) - sys.exit(1) - -################################################################################ - -def main (): - # Empty .changes file; should raise a 'parse error' exception. - try: - utils.parse_changes('empty.changes', 0) - except utils.changes_parse_error_exc, line: - if line != "[Empty changes file]": - fail("Returned exception with unexcpected error message `%s'." % (line)) - else: - fail("Didn't raise a 'parse error' exception for a zero-length .changes file.") - -################################################################################ - -if __name__ == '__main__': - main() diff --git a/dak/test/003/krb5_1.2.2-4_m68k.changes b/dak/test/003/krb5_1.2.2-4_m68k.changes deleted file mode 100644 index 9d264c10..00000000 --- a/dak/test/003/krb5_1.2.2-4_m68k.changes +++ /dev/null @@ -1,54 +0,0 @@ ------BEGIN PGP SIGNED MESSAGE----- - -Format: 1.7 -Date: Fri, 20 Apr 2001 02:47:21 -0400 -Source: krb5 -Binary: krb5-kdc krb5-doc krb5-rsh-server libkrb5-dev libkrb53 krb5-ftpd - krb5-clients krb5-user libkadm54 krb5-telnetd krb5-admin-server -Architecture: m68k -Version: 1.2.2-4 -Distribution: unstable -Urgency: low -Maintainer: buildd m68k user account -Changed-By: Sam Hartman -Description: - krb5-admin-server - Mit Kerberos master server (kadmind) - krb5-clients - Secure replacements for ftp, telnet and rsh using MIT Kerberos - krb5-ftpd - Secure FTP server supporting MIT Kerberos - krb5-kdc - Mit Kerberos key server (KDC) - krb5-rsh-server - Secure replacements for rshd and rlogind using MIT Kerberos - krb5-telnetd - Secure telnet server supporting MIT Kerberos - krb5-user - Basic programs to authenticate using MIT Kerberos - libkadm54 - MIT Kerberos administration runtime libraries - libkrb5-dev - Headers and development libraries for MIT Kerberos - libkrb53 - MIT Kerberos runtime libraries -Closes: 94407 -Changes: - krb5 (1.2.2-4) unstable; urgency=low - . - * Fix shared libraries to build with gcc not ld to properly include - -lgcc symbols, closes: #94407 -Files: - 563dac1cdd3ba922f9301fe074fbfc80 65836 non-us/main optional libkadm54_1.2.2-4_m68k.deb - bb620f589c17ab0ebea1aa6e10ca52ad 272198 non-us/main optional libkrb53_1.2.2-4_m68k.deb - 40af6e64b3030a179e0de25bd95c95e9 143264 non-us/main optional krb5-user_1.2.2-4_m68k.deb - ffe4e5e7b2cab162dc608d56278276cf 141870 non-us/main optional krb5-clients_1.2.2-4_m68k.deb - 4fe01d1acb4b82ce0b8b72652a9a15ae 54592 non-us/main optional krb5-rsh-server_1.2.2-4_m68k.deb - b3c8c617ea72008a33b869b75d2485bf 41292 non-us/main optional krb5-ftpd_1.2.2-4_m68k.deb - 5908f8f60fe536d7bfc1ef3fdd9d74cc 42090 non-us/main optional krb5-telnetd_1.2.2-4_m68k.deb - 650ea769009a312396e56503d0059ebc 160236 non-us/main optional krb5-kdc_1.2.2-4_m68k.deb - 399c9de4e9d7d0b0f5626793808a4391 160392 non-us/main optional krb5-admin-server_1.2.2-4_m68k.deb - 6f962fe530c3187e986268b4e4d27de9 398662 non-us/main optional libkrb5-dev_1.2.2-4_m68k.deb - ------BEGIN PGP SIGNATURE----- -Version: 2.6.3i -Charset: noconv - -iQCVAwUBOvVPPm547I3m3eHJAQHyaQP+M7RXVEqZ2/xHiPzaPcZRJ4q7o0zbMaU8 -qG/Mi6kuR1EhRNMjMH4Cp6ctbhRDHK5FR/8v7UkOd+ETDAhiw7eqJnLC60EZxZ/H -CiOs8JklAXDERkQ3i7EYybv46Gxx91pIs2nE4xVKnG16d/wFELWMBLY6skF1B2/g -zZju3cuFCCE= -=Vm59 ------END PGP SIGNATURE----- - - diff --git a/dak/test/003/test.py b/dak/test/003/test.py deleted file mode 100755 index ce07c118..00000000 --- a/dak/test/003/test.py +++ /dev/null @@ -1,68 +0,0 @@ -#!/usr/bin/env python - -# Check utils.parse_changes()'s for handling of multi-line fields -# Copyright (C) 2000, 2006 James Troup - -# This program 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 2 of the License, or -# (at your option) any later version. - -# This program 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 this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -################################################################################ - -# The deal here is that for the first 6 months of dak's -# implementation it has been misparsing multi-line fields in .changes -# files; specifically multi-line fields where there _is_ data on the -# first line. So, for example: - -# Foo: bar baz -# bat bant - -# Became "foo: bar bazbat bant" rather than "foo: bar baz\nbat bant" - -################################################################################ - -import os, sys - -sys.path.append(os.path.abspath('../../')) - -import utils - -################################################################################ - -def fail(message): - sys.stderr.write("%s\n" % (message)) - sys.exit(1) - -################################################################################ - -def main (): - # Valid .changes file with a multi-line Binary: field - try: - changes = utils.parse_changes('krb5_1.2.2-4_m68k.changes', 0) - except utils.changes_parse_error_exc, line: - fail("parse_changes() returned an exception with error message `%s'." % (line)) - - o = changes.get("binary", "") - if o != "": - del changes["binary"] - changes["binary"] = {} - for j in o.split(): - changes["binary"][j] = 1 - - if not changes["binary"].has_key("krb5-ftpd"): - fail("parse_changes() is broken; 'krb5-ftpd' is not in the Binary: dictionary.") - -################################################################################ - -if __name__ == '__main__': - main() diff --git a/dak/test/004/test.py b/dak/test/004/test.py deleted file mode 100755 index 4aa6b480..00000000 --- a/dak/test/004/test.py +++ /dev/null @@ -1,122 +0,0 @@ -#!/usr/bin/env python - -# Check utils.extract_component_from_section() -# Copyright (C) 2000, 2006 James Troup - -# This program 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 2 of the License, or -# (at your option) any later version. - -# This program 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 this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -################################################################################ - -import os, sys - -sys.path.append(os.path.abspath('../../')) - -import utils - -################################################################################ - -def fail(message): - sys.stderr.write("%s\n" % (message)) - sys.exit(1) - -################################################################################ - -# prefix: non-US -# component: main, contrib, non-free -# section: games, admin, libs, [...] - -# [1] Order is as above. -# [2] Prefix is optional for the default archive, but mandatory when -# uploads are going anywhere else. -# [3] Default component is main and may be omitted. -# [4] Section is optional. -# [5] Prefix is case insensitive -# [6] Everything else is case sensitive. - -def test(input, output): - result = utils.extract_component_from_section(input) - if result != output: - fail ("%s -> %r [should have been %r]" % (input, result, output)) - -def main (): - # Err, whoops? should probably be "utils", "main"... - input = "main/utils"; output = ("main/utils", "main") - test (input, output) - - - # Validate #3 - input = "utils"; output = ("utils", "main") - test (input, output) - - input = "non-free/libs"; output = ("non-free/libs", "non-free") - test (input, output) - - input = "contrib/net"; output = ("contrib/net", "contrib") - test (input, output) - - - # Validate #3 with a prefix - input = "non-US"; output = ("non-US", "non-US/main") - test (input, output) - - - # Validate #4 - input = "main"; output = ("main", "main") - test (input, output) - - input = "contrib"; output = ("contrib", "contrib") - test (input, output) - - input = "non-free"; output = ("non-free", "non-free") - test (input, output) - - - # Validate #4 with a prefix - input = "non-US/main"; output = ("non-US/main", "non-US/main") - test (input, output) - - input = "non-US/contrib"; output = ("non-US/contrib", "non-US/contrib") - test (input, output) - - input = "non-US/non-free"; output = ("non-US/non-free", "non-US/non-free") - test (input, output) - - - # Validate #5 - input = "non-us"; output = ("non-us", "non-US/main") - test (input, output) - - input = "non-us/contrib"; output = ("non-us/contrib", "non-US/contrib") - test (input, output) - - - # Validate #6 (section) - input = "utIls"; output = ("utIls", "main") - test (input, output) - - # Others.. - input = "non-US/libs"; output = ("non-US/libs", "non-US/main") - test (input, output) - input = "non-US/main/libs"; output = ("non-US/main/libs", "non-US/main") - test (input, output) - input = "non-US/contrib/libs"; output = ("non-US/contrib/libs", "non-US/contrib") - test (input, output) - input = "non-US/non-free/libs"; output = ("non-US/non-free/libs", "non-US/non-free") - test (input, output) - -################################################################################ - -if __name__ == '__main__': - main() diff --git a/dak/test/005/bogus-post.changes b/dak/test/005/bogus-post.changes deleted file mode 100644 index 95e5a1f3..00000000 --- a/dak/test/005/bogus-post.changes +++ /dev/null @@ -1,41 +0,0 @@ ------BEGIN PGP SIGNED MESSAGE----- -Hash: SHA1 - -Format: 1.7 -Date: Tue, 9 Sep 2003 01:16:01 +0100 -Source: gawk -Binary: gawk -Architecture: source i386 -Version: 1:3.1.3-2 -Distribution: unstable -Urgency: low -Maintainer: James Troup -Changed-By: James Troup -Description: - gawk - GNU awk, a pattern scanning and processing language -Closes: 204699 204701 -Changes: - gawk (1:3.1.3-2) unstable; urgency=low - . - * debian/control (Standards-Version): bump to 3.6.1.0. - . - * 02_fix-ascii.dpatch: new patch from upstream to fix [[:ascii:]]. - Thanks to for reporting the bug and forwarding it - upstream. Closes: #204701 - . - * 03_fix-high-char-ranges.dpatch: new patch from upstream to fix - [\x80-\xff]. Thanks to for reporting the bug and - forwarding it upstream. Closes: #204699 -Files: - 0e6542c48bcc9d9586fc8ebe4e7242a4 561 interpreters optional gawk_3.1.3-2.dsc - 50a29dce4a2c6e2ac38069eb7c41d9c4 8302 interpreters optional gawk_3.1.3-2.diff.gz - 5a255c7b421ac699804212e10205f22d 871114 interpreters optional gawk_3.1.3-2_i386.deb - ------BEGIN PGP SIGNATURE----- -Version: GnuPG v1.0.6 (GNU/Linux) - -iEYEARECAAYFAj9dHWsACgkQgD/uEicUG7DUnACglndvU4LCA0/k36Qp873N0Sau -fCwAoMdgIOUBcUfMqXvVnxdW03ev5bNB -=O7Gh ------END PGP SIGNATURE----- -You: have been 0wned diff --git a/dak/test/005/bogus-pre.changes b/dak/test/005/bogus-pre.changes deleted file mode 100644 index 0234d8b7..00000000 --- a/dak/test/005/bogus-pre.changes +++ /dev/null @@ -1,41 +0,0 @@ -You: have been 0wned ------BEGIN PGP SIGNED MESSAGE----- -Hash: SHA1 - -Format: 1.7 -Date: Tue, 9 Sep 2003 01:16:01 +0100 -Source: gawk -Binary: gawk -Architecture: source i386 -Version: 1:3.1.3-2 -Distribution: unstable -Urgency: low -Maintainer: James Troup -Changed-By: James Troup -Description: - gawk - GNU awk, a pattern scanning and processing language -Closes: 204699 204701 -Changes: - gawk (1:3.1.3-2) unstable; urgency=low - . - * debian/control (Standards-Version): bump to 3.6.1.0. - . - * 02_fix-ascii.dpatch: new patch from upstream to fix [[:ascii:]]. - Thanks to for reporting the bug and forwarding it - upstream. Closes: #204701 - . - * 03_fix-high-char-ranges.dpatch: new patch from upstream to fix - [\x80-\xff]. Thanks to for reporting the bug and - forwarding it upstream. Closes: #204699 -Files: - 0e6542c48bcc9d9586fc8ebe4e7242a4 561 interpreters optional gawk_3.1.3-2.dsc - 50a29dce4a2c6e2ac38069eb7c41d9c4 8302 interpreters optional gawk_3.1.3-2.diff.gz - 5a255c7b421ac699804212e10205f22d 871114 interpreters optional gawk_3.1.3-2_i386.deb - ------BEGIN PGP SIGNATURE----- -Version: GnuPG v1.0.6 (GNU/Linux) - -iEYEARECAAYFAj9dHWsACgkQgD/uEicUG7DUnACglndvU4LCA0/k36Qp873N0Sau -fCwAoMdgIOUBcUfMqXvVnxdW03ev5bNB -=O7Gh ------END PGP SIGNATURE----- diff --git a/dak/test/005/test.py b/dak/test/005/test.py deleted file mode 100755 index b5d3bbc7..00000000 --- a/dak/test/005/test.py +++ /dev/null @@ -1,50 +0,0 @@ -#!/usr/bin/env python - -# Check utils.parse_changes() correctly ignores data outside the signed area -# Copyright (C) 2004, 2006 James Troup - -# This program 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 2 of the License, or -# (at your option) any later version. - -# This program 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 this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -################################################################################ - -import os, sys - -sys.path.append(os.path.abspath('../../')) - -import utils - -################################################################################ - -def fail(message): - sys.stderr.write("%s\n" % (message)) - sys.exit(1) - -################################################################################ - -def main (): - for file in [ "valid", "bogus-pre", "bogus-post" ]: - for strict_whitespace in [ 0, 1 ]: - try: - changes = utils.parse_changes("%s.changes" % (file), strict_whitespace) - except utils.changes_parse_error_exc, line: - fail("%s[%s]: parse_changes() returned an exception with error message `%s'." % (file, strict_whitespace, line)) - oh_dear = changes.get("you") - if oh_dear: - fail("%s[%s]: parsed and accepted unsigned data!" % (file, strict_whitespace)) - -################################################################################ - -if __name__ == '__main__': - main() diff --git a/dak/test/005/valid.changes b/dak/test/005/valid.changes deleted file mode 100644 index 0e77d27f..00000000 --- a/dak/test/005/valid.changes +++ /dev/null @@ -1,40 +0,0 @@ ------BEGIN PGP SIGNED MESSAGE----- -Hash: SHA1 - -Format: 1.7 -Date: Tue, 9 Sep 2003 01:16:01 +0100 -Source: gawk -Binary: gawk -Architecture: source i386 -Version: 1:3.1.3-2 -Distribution: unstable -Urgency: low -Maintainer: James Troup -Changed-By: James Troup -Description: - gawk - GNU awk, a pattern scanning and processing language -Closes: 204699 204701 -Changes: - gawk (1:3.1.3-2) unstable; urgency=low - . - * debian/control (Standards-Version): bump to 3.6.1.0. - . - * 02_fix-ascii.dpatch: new patch from upstream to fix [[:ascii:]]. - Thanks to for reporting the bug and forwarding it - upstream. Closes: #204701 - . - * 03_fix-high-char-ranges.dpatch: new patch from upstream to fix - [\x80-\xff]. Thanks to for reporting the bug and - forwarding it upstream. Closes: #204699 -Files: - 0e6542c48bcc9d9586fc8ebe4e7242a4 561 interpreters optional gawk_3.1.3-2.dsc - 50a29dce4a2c6e2ac38069eb7c41d9c4 8302 interpreters optional gawk_3.1.3-2.diff.gz - 5a255c7b421ac699804212e10205f22d 871114 interpreters optional gawk_3.1.3-2_i386.deb - ------BEGIN PGP SIGNATURE----- -Version: GnuPG v1.0.6 (GNU/Linux) - -iEYEARECAAYFAj9dHWsACgkQgD/uEicUG7DUnACglndvU4LCA0/k36Qp873N0Sau -fCwAoMdgIOUBcUfMqXvVnxdW03ev5bNB -=O7Gh ------END PGP SIGNATURE----- diff --git a/dak/test/006/test.py b/dak/test/006/test.py deleted file mode 100755 index 51a33170..00000000 --- a/dak/test/006/test.py +++ /dev/null @@ -1,130 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- - -# Test textutils.fix_maintainer() -# Copyright (C) 2004, 2006 James Troup - -# This program 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 2 of the License, or -# (at your option) any later version. - -# This program 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 this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -################################################################################ - -import os, sys - -sys.path.append(os.path.abspath('../../')) - -import textutils - -################################################################################ - -def fail(message): - sys.stderr.write("%s\n" % (message)) - sys.exit(1) - -################################################################################ - -def check_valid(s, xa, xb, xc, xd): - (a, b, c, d) = textutils.fix_maintainer(s) - if a != xa: - fail("rfc822_maint: %s (returned) != %s (expected [From: '%s']" % (a, xa, s)) - if b != xb: - fail("rfc2047_maint: %s (returned) != %s (expected [From: '%s']" % (b, xb, s)) - if c != xc: - fail("name: %s (returned) != %s (expected [From: '%s']" % (c, xc, s)) - if d != xd: - fail("email: %s (returned) != %s (expected [From: '%s']" % (d, xd, s)) - -def check_invalid(s): - try: - textutils.fix_maintainer(s) - fail("%s was parsed successfully but is expected to be invalid." % (s)) - except utils.ParseMaintError, unused: - pass - -def main (): - # Check Valid UTF-8 maintainer field - s = "Noèl Köthe " - xa = "Noèl Köthe " - xb = "=?utf-8?b?Tm/DqGwgS8O2dGhl?= " - xc = "Noèl Köthe" - xd = "noel@debian.org" - check_valid(s, xa, xb, xc, xd) - - # Check valid ISO-8859-1 maintainer field - s = "Noèl Köthe " - xa = "Noèl Köthe " - xb = "=?iso-8859-1?q?No=E8l_K=F6the?= " - xc = "Noèl Köthe" - xd = "noel@debian.org" - check_valid(s, xa, xb, xc, xd) - - # Check valid ASCII maintainer field - s = "James Troup " - xa = "James Troup " - xb = "James Troup " - xc = "James Troup" - xd = "james@nocrew.org" - check_valid(s, xa, xb, xc, xd) - - # Check "Debian vs RFC822" fixup of names with '.' or ',' in them - s = "James J. Troup " - xa = "james@nocrew.org (James J. Troup)" - xb = "james@nocrew.org (James J. Troup)" - xc = "James J. Troup" - xd = "james@nocrew.org" - check_valid(s, xa, xb, xc, xd) - s = "James J, Troup " - xa = "james@nocrew.org (James J, Troup)" - xb = "james@nocrew.org (James J, Troup)" - xc = "James J, Troup" - xd = "james@nocrew.org" - check_valid(s, xa, xb, xc, xd) - - # Check just-email form - s = "james@nocrew.org" - xa = " " - xb = " " - xc = "" - xd = "james@nocrew.org" - check_valid(s, xa, xb, xc, xd) - - # Check bracketed just-email form - s = "" - xa = " " - xb = " " - xc = "" - xd = "james@nocrew.org" - check_valid(s, xa, xb, xc, xd) - - # Check Krazy quoted-string local part email address - s = "Cris van Pelt <\"Cris van Pelt\"@tribe.eu.org>" - xa = "Cris van Pelt <\"Cris van Pelt\"@tribe.eu.org>" - xb = "Cris van Pelt <\"Cris van Pelt\"@tribe.eu.org>" - xc = "Cris van Pelt" - xd = "\"Cris van Pelt\"@tribe.eu.org" - check_valid(s, xa, xb, xc, xd) - - # Check empty string - s = xa = xb = xc = xd = "" - check_valid(s, xa, xb, xc, xd) - - # Check for missing email address - check_invalid("James Troup") - # Check for invalid email address - check_invalid("James Troup +Changed-By: Sam Hartman +Description: + krb5-admin-server - Mit Kerberos master server (kadmind) + krb5-clients - Secure replacements for ftp, telnet and rsh using MIT Kerberos + krb5-ftpd - Secure FTP server supporting MIT Kerberos + krb5-kdc - Mit Kerberos key server (KDC) + krb5-rsh-server - Secure replacements for rshd and rlogind using MIT Kerberos + krb5-telnetd - Secure telnet server supporting MIT Kerberos + krb5-user - Basic programs to authenticate using MIT Kerberos + libkadm54 - MIT Kerberos administration runtime libraries + libkrb5-dev - Headers and development libraries for MIT Kerberos + libkrb53 - MIT Kerberos runtime libraries +Closes: 94407 +Changes: + krb5 (1.2.2-4) unstable; urgency=low + . + * Fix shared libraries to build with gcc not ld to properly include + -lgcc symbols, closes: #94407 +Files: + 563dac1cdd3ba922f9301fe074fbfc80 65836 non-us/main optional libkadm54_1.2.2-4_m68k.deb + bb620f589c17ab0ebea1aa6e10ca52ad 272198 non-us/main optional libkrb53_1.2.2-4_m68k.deb + 40af6e64b3030a179e0de25bd95c95e9 143264 non-us/main optional krb5-user_1.2.2-4_m68k.deb + ffe4e5e7b2cab162dc608d56278276cf 141870 non-us/main optional krb5-clients_1.2.2-4_m68k.deb + 4fe01d1acb4b82ce0b8b72652a9a15ae 54592 non-us/main optional krb5-rsh-server_1.2.2-4_m68k.deb + b3c8c617ea72008a33b869b75d2485bf 41292 non-us/main optional krb5-ftpd_1.2.2-4_m68k.deb + 5908f8f60fe536d7bfc1ef3fdd9d74cc 42090 non-us/main optional krb5-telnetd_1.2.2-4_m68k.deb + 650ea769009a312396e56503d0059ebc 160236 non-us/main optional krb5-kdc_1.2.2-4_m68k.deb + 399c9de4e9d7d0b0f5626793808a4391 160392 non-us/main optional krb5-admin-server_1.2.2-4_m68k.deb + 6f962fe530c3187e986268b4e4d27de9 398662 non-us/main optional libkrb5-dev_1.2.2-4_m68k.deb + +-----BEGIN PGP SIGNATURE----- +Version: 2.6.3i +Charset: noconv + +iQCVAwUBOvVPPm547I3m3eHJAQHyaQP+M7RXVEqZ2/xHiPzaPcZRJ4q7o0zbMaU8 +qG/Mi6kuR1EhRNMjMH4Cp6ctbhRDHK5FR/8v7UkOd+ETDAhiw7eqJnLC60EZxZ/H +CiOs8JklAXDERkQ3i7EYybv46Gxx91pIs2nE4xVKnG16d/wFELWMBLY6skF1B2/g +zZju3cuFCCE= +=Vm59 +-----END PGP SIGNATURE----- + + diff --git a/tests/fixtures/changes/bogus-post.changes b/tests/fixtures/changes/bogus-post.changes new file mode 100644 index 00000000..95e5a1f3 --- /dev/null +++ b/tests/fixtures/changes/bogus-post.changes @@ -0,0 +1,41 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA1 + +Format: 1.7 +Date: Tue, 9 Sep 2003 01:16:01 +0100 +Source: gawk +Binary: gawk +Architecture: source i386 +Version: 1:3.1.3-2 +Distribution: unstable +Urgency: low +Maintainer: James Troup +Changed-By: James Troup +Description: + gawk - GNU awk, a pattern scanning and processing language +Closes: 204699 204701 +Changes: + gawk (1:3.1.3-2) unstable; urgency=low + . + * debian/control (Standards-Version): bump to 3.6.1.0. + . + * 02_fix-ascii.dpatch: new patch from upstream to fix [[:ascii:]]. + Thanks to for reporting the bug and forwarding it + upstream. Closes: #204701 + . + * 03_fix-high-char-ranges.dpatch: new patch from upstream to fix + [\x80-\xff]. Thanks to for reporting the bug and + forwarding it upstream. Closes: #204699 +Files: + 0e6542c48bcc9d9586fc8ebe4e7242a4 561 interpreters optional gawk_3.1.3-2.dsc + 50a29dce4a2c6e2ac38069eb7c41d9c4 8302 interpreters optional gawk_3.1.3-2.diff.gz + 5a255c7b421ac699804212e10205f22d 871114 interpreters optional gawk_3.1.3-2_i386.deb + +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v1.0.6 (GNU/Linux) + +iEYEARECAAYFAj9dHWsACgkQgD/uEicUG7DUnACglndvU4LCA0/k36Qp873N0Sau +fCwAoMdgIOUBcUfMqXvVnxdW03ev5bNB +=O7Gh +-----END PGP SIGNATURE----- +You: have been 0wned diff --git a/tests/fixtures/changes/bogus-pre.changes b/tests/fixtures/changes/bogus-pre.changes new file mode 100644 index 00000000..0234d8b7 --- /dev/null +++ b/tests/fixtures/changes/bogus-pre.changes @@ -0,0 +1,41 @@ +You: have been 0wned +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA1 + +Format: 1.7 +Date: Tue, 9 Sep 2003 01:16:01 +0100 +Source: gawk +Binary: gawk +Architecture: source i386 +Version: 1:3.1.3-2 +Distribution: unstable +Urgency: low +Maintainer: James Troup +Changed-By: James Troup +Description: + gawk - GNU awk, a pattern scanning and processing language +Closes: 204699 204701 +Changes: + gawk (1:3.1.3-2) unstable; urgency=low + . + * debian/control (Standards-Version): bump to 3.6.1.0. + . + * 02_fix-ascii.dpatch: new patch from upstream to fix [[:ascii:]]. + Thanks to for reporting the bug and forwarding it + upstream. Closes: #204701 + . + * 03_fix-high-char-ranges.dpatch: new patch from upstream to fix + [\x80-\xff]. Thanks to for reporting the bug and + forwarding it upstream. Closes: #204699 +Files: + 0e6542c48bcc9d9586fc8ebe4e7242a4 561 interpreters optional gawk_3.1.3-2.dsc + 50a29dce4a2c6e2ac38069eb7c41d9c4 8302 interpreters optional gawk_3.1.3-2.diff.gz + 5a255c7b421ac699804212e10205f22d 871114 interpreters optional gawk_3.1.3-2_i386.deb + +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v1.0.6 (GNU/Linux) + +iEYEARECAAYFAj9dHWsACgkQgD/uEicUG7DUnACglndvU4LCA0/k36Qp873N0Sau +fCwAoMdgIOUBcUfMqXvVnxdW03ev5bNB +=O7Gh +-----END PGP SIGNATURE----- diff --git a/tests/fixtures/changes/valid.changes b/tests/fixtures/changes/valid.changes new file mode 100644 index 00000000..0e77d27f --- /dev/null +++ b/tests/fixtures/changes/valid.changes @@ -0,0 +1,40 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA1 + +Format: 1.7 +Date: Tue, 9 Sep 2003 01:16:01 +0100 +Source: gawk +Binary: gawk +Architecture: source i386 +Version: 1:3.1.3-2 +Distribution: unstable +Urgency: low +Maintainer: James Troup +Changed-By: James Troup +Description: + gawk - GNU awk, a pattern scanning and processing language +Closes: 204699 204701 +Changes: + gawk (1:3.1.3-2) unstable; urgency=low + . + * debian/control (Standards-Version): bump to 3.6.1.0. + . + * 02_fix-ascii.dpatch: new patch from upstream to fix [[:ascii:]]. + Thanks to for reporting the bug and forwarding it + upstream. Closes: #204701 + . + * 03_fix-high-char-ranges.dpatch: new patch from upstream to fix + [\x80-\xff]. Thanks to for reporting the bug and + forwarding it upstream. Closes: #204699 +Files: + 0e6542c48bcc9d9586fc8ebe4e7242a4 561 interpreters optional gawk_3.1.3-2.dsc + 50a29dce4a2c6e2ac38069eb7c41d9c4 8302 interpreters optional gawk_3.1.3-2.diff.gz + 5a255c7b421ac699804212e10205f22d 871114 interpreters optional gawk_3.1.3-2_i386.deb + +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v1.0.6 (GNU/Linux) + +iEYEARECAAYFAj9dHWsACgkQgD/uEicUG7DUnACglndvU4LCA0/k36Qp873N0Sau +fCwAoMdgIOUBcUfMqXvVnxdW03ev5bNB +=O7Gh +-----END PGP SIGNATURE----- diff --git a/tests/fixtures/dsc/1.dsc b/tests/fixtures/dsc/1.dsc new file mode 100644 index 00000000..dfdd92f7 --- /dev/null +++ b/tests/fixtures/dsc/1.dsc @@ -0,0 +1,22 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA1 + +Format: 1.0 +Source: amaya +Version: 3.2.1-1 +Binary: amaya +Maintainer: Steve Dunham +Architecture: any +Standards-Version: 2.4.0.0 +Files: + 07f95f92b7cb0f12f7cf65ee5c5fbde2 4532418 amaya_3.2.1.orig.tar.gz + da06b390946745d9efaf9e7df8e05092 4817 amaya_3.2.1-1.diff.gz + +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v1.0.2 (GNU/Linux) +Comment: For info see http://www.gnupg.org + +iD8DBQE5j091iPgEjVqvb1kRAvFtAJ0asUAaac6ebfR3YeaH16HjL7F3GwCfV+AQ +rhYnRmVuNMa8oYSvL4hl/Yw= +=EFAA +-----END PGP SIGNATURE----- diff --git a/tests/fixtures/dsc/2.dsc b/tests/fixtures/dsc/2.dsc new file mode 100644 index 00000000..a6c9d85a --- /dev/null +++ b/tests/fixtures/dsc/2.dsc @@ -0,0 +1,21 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA1 + +Format: 1.0 +Source: amaya +Version: 3.2.1-1 +Binary: amaya +Maintainer: Steve Dunham +Architecture: any +Standards-Version: 2.4.0.0 +Files: + 07f95f92b7cb0f12f7cf65ee5c5fbde2 4532418 amaya_3.2.1.orig.tar.gz + da06b390946745d9efaf9e7df8e05092 4817 amaya_3.2.1-1.diff.gz +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v1.0.2 (GNU/Linux) +Comment: For info see http://www.gnupg.org + +iD8DBQE5j091iPgEjVqvb1kRAvFtAJ0asUAaac6ebfR3YeaH16HjL7F3GwCfV+AQ +rhYnRmVuNMa8oYSvL4hl/Yw= +=EFAA +-----END PGP SIGNATURE----- diff --git a/tests/fixtures/dsc/3.dsc b/tests/fixtures/dsc/3.dsc new file mode 100644 index 00000000..211340ed --- /dev/null +++ b/tests/fixtures/dsc/3.dsc @@ -0,0 +1,21 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA1 +Format: 1.0 +Source: amaya +Version: 3.2.1-1 +Binary: amaya +Maintainer: Steve Dunham +Architecture: any +Standards-Version: 2.4.0.0 +Files: + 07f95f92b7cb0f12f7cf65ee5c5fbde2 4532418 amaya_3.2.1.orig.tar.gz + da06b390946745d9efaf9e7df8e05092 4817 amaya_3.2.1-1.diff.gz + +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v1.0.2 (GNU/Linux) +Comment: For info see http://www.gnupg.org + +iD8DBQE5j091iPgEjVqvb1kRAvFtAJ0asUAaac6ebfR3YeaH16HjL7F3GwCfV+AQ +rhYnRmVuNMa8oYSvL4hl/Yw= +=EFAA +-----END PGP SIGNATURE----- diff --git a/tests/fixtures/dsc/4.dsc b/tests/fixtures/dsc/4.dsc new file mode 100644 index 00000000..91e361f7 --- /dev/null +++ b/tests/fixtures/dsc/4.dsc @@ -0,0 +1,19 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA1 +Format: 1.0 +Source: amaya +Version: 3.2.1-1 +Binary: amaya +Maintainer: Steve Dunham +Architecture: any +Standards-Version: 2.4.0.0 +Files: + 07f95f92b7cb0f12f7cf65ee5c5fbde2 4532418 amaya_3.2.1.orig.tar.gz + da06b390946745d9efaf9e7df8e05092 4817 amaya_3.2.1-1.diff.gz +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v1.0.2 (GNU/Linux) +Comment: For info see http://www.gnupg.org +iD8DBQE5j091iPgEjVqvb1kRAvFtAJ0asUAaac6ebfR3YeaH16HjL7F3GwCfV+AQ +rhYnRmVuNMa8oYSvL4hl/Yw= +=EFAA +-----END PGP SIGNATURE----- diff --git a/tests/fixtures/dsc/5.dsc b/tests/fixtures/dsc/5.dsc new file mode 100644 index 00000000..db9d8d30 --- /dev/null +++ b/tests/fixtures/dsc/5.dsc @@ -0,0 +1,23 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA1 + +Format: 1.0 +Source: amaya +Version: 3.2.1-1 +Binary: amaya +Maintainer: Steve Dunham +Architecture: any +Standards-Version: 2.4.0.0 +Files: + 07f95f92b7cb0f12f7cf65ee5c5fbde2 4532418 amaya_3.2.1.orig.tar.gz + da06b390946745d9efaf9e7df8e05092 4817 amaya_3.2.1-1.diff.gz + + +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v1.0.2 (GNU/Linux) +Comment: For info see http://www.gnupg.org + +iD8DBQE5j091iPgEjVqvb1kRAvFtAJ0asUAaac6ebfR3YeaH16HjL7F3GwCfV+AQ +rhYnRmVuNMa8oYSvL4hl/Yw= +=EFAA +-----END PGP SIGNATURE----- diff --git a/tests/fixtures/dsc/6.dsc b/tests/fixtures/dsc/6.dsc new file mode 100644 index 00000000..ae36d643 --- /dev/null +++ b/tests/fixtures/dsc/6.dsc @@ -0,0 +1,23 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA1 + + +Format: 1.0 +Source: amaya +Version: 3.2.1-1 +Binary: amaya +Maintainer: Steve Dunham +Architecture: any +Standards-Version: 2.4.0.0 +Files: + 07f95f92b7cb0f12f7cf65ee5c5fbde2 4532418 amaya_3.2.1.orig.tar.gz + da06b390946745d9efaf9e7df8e05092 4817 amaya_3.2.1-1.diff.gz + +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v1.0.2 (GNU/Linux) +Comment: For info see http://www.gnupg.org + +iD8DBQE5j091iPgEjVqvb1kRAvFtAJ0asUAaac6ebfR3YeaH16HjL7F3GwCfV+AQ +rhYnRmVuNMa8oYSvL4hl/Yw= +=EFAA +-----END PGP SIGNATURE----- diff --git a/tests/fixtures/dsc/7.dsc b/tests/fixtures/dsc/7.dsc new file mode 100644 index 00000000..e69de29b diff --git a/tests/test_extract_component_from_section.py b/tests/test_extract_component_from_section.py new file mode 100755 index 00000000..3493f417 --- /dev/null +++ b/tests/test_extract_component_from_section.py @@ -0,0 +1,59 @@ +#!/usr/bin/env python + +from base_test import DakTestCase + +import unittest + +from daklib.utils import extract_component_from_section + +class ExtractComponentTestCase(DakTestCase): + """ + prefix: non-US + component: main, contrib, non-free + section: games, admin, libs, [...] + + [1] Order is as above. + [2] Prefix is optional for the default archive, but mandatory when + uploads are going anywhere else. + [3] Default component is main and may be omitted. + [4] Section is optional. + [5] Prefix is case insensitive + [6] Everything else is case sensitive. + """ + + def assertExtract(self, input, output): + self.assertEqual( + extract_component_from_section(input)[1], + output, + ) + + def test_1(self): + # Validate #3 + self.assertExtract('utils', 'main') + + def test_2(self): + # Err, whoops? should probably be 'utils', 'main'... + self.assertExtract('main/utils', 'main') + + def test_3(self): + self.assertExtract('non-free/libs', 'non-free') + + def test_4(self): + self.assertExtract('contrib/net', 'contrib') + + def test_5(self): + # Validate #4 + self.assertExtract('main', 'main') + + def test_6(self): + self.assertExtract('contrib', 'contrib') + + def test_7(self): + self.assertExtract('non-free', 'non-free') + + def test_8(self): + # Validate #6 (section) + self.assertExtract('utIls', 'main') + +if __name__ == '__main__': + unittest.main() diff --git a/tests/test_fix_maintainer.py b/tests/test_fix_maintainer.py new file mode 100755 index 00000000..203fbfc5 --- /dev/null +++ b/tests/test_fix_maintainer.py @@ -0,0 +1,105 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +from base_test import DakTestCase + +import unittest + +from daklib.textutils import fix_maintainer +from daklib.dak_exceptions import ParseMaintError + +class FixMaintainerTestCase(DakTestCase): + def assertValid(self, input, a, b, c, d): + a_, b_, c_, d_ = fix_maintainer(input) + + self.assertEqual(a, a_) + self.assertEqual(b, b_) + self.assertEqual(c, c_) + self.assertEqual(d, d_) + + def assertNotValid(self, input): + self.assertRaises(ParseMaintError, lambda: fix_maintainer(input)) + + def testUTF8Maintainer(self): + # Check Valid UTF-8 maintainer field + self.assertValid( + "Noèl Köthe ", + "Noèl Köthe ", + "=?utf-8?b?Tm/DqGwgS8O2dGhl?= ", + "Noèl Köthe", + "noel@debian.org", + ) + + def testASCII(self): + # Check valid ASCII maintainer field + self.assertValid( + "James Troup ", + "James Troup ", + "James Troup ", + "James Troup", + "james@nocrew.org", + ) + + def testRFC822(self): + # Check "Debian vs RFC822" fixup of names with '.' or ',' in them + self.assertValid( + "James J. Troup ", + "james@nocrew.org (James J. Troup)", + "james@nocrew.org (James J. Troup)", + "James J. Troup", + "james@nocrew.org", + ) + + def testSimple(self): + self.assertValid( + "James J, Troup ", + "james@nocrew.org (James J, Troup)", + "james@nocrew.org (James J, Troup)", + "James J, Troup", + "james@nocrew.org", + ) + + def testJustEmail(self): + # Check just-email form + self.assertValid( + "james@nocrew.org", + " ", + " ", + "", + "james@nocrew.org", + ) + + def testBracketedEmail(self): + # Check bracketed just-email form + self.assertValid( + "", + " ", + " ", + "", + "james@nocrew.org", + ) + + def testKrazy(self): + # Check Krazy quoted-string local part email address + self.assertValid( + "Cris van Pelt <\"Cris van Pelt\"@tribe.eu.org>", + "Cris van Pelt <\"Cris van Pelt\"@tribe.eu.org>", + "Cris van Pelt <\"Cris van Pelt\"@tribe.eu.org>", + "Cris van Pelt", + "\"Cris van Pelt\"@tribe.eu.org", + ) + + def testEmptyString(self): + # Check empty string + self.assertValid("", "", "", "", "") + + def testMissingEmailAddress(self): + # Check for missing email address + self.assertNotValid("James Troup") + + def testInvalidEmail(self): + # Check for invalid email address + self.assertNotValid("James Troup