From 67a9c348bd432842b52df0d13725f4e903206cd8 Mon Sep 17 00:00:00 2001 From: Jan Dittberner Date: Sat, 8 Feb 2014 13:10:59 +0100 Subject: [PATCH 1/3] make unit tests more useful - check response in controller unit tests - remove unused imports - bump copyright years - replace "DDPortfolio service" in file headers with "Debian Member Portfolio Service" --- ddportfolioservice/tests/__init__.py | 30 ++++++++----------- .../tests/functional/test_ddportfolio.py | 28 +++++++++-------- .../tests/functional/test_showformscripts.py | 30 ++++++++++--------- 3 files changed, 44 insertions(+), 44 deletions(-) diff --git a/ddportfolioservice/tests/__init__.py b/ddportfolioservice/tests/__init__.py index 0e1d22f..5185497 100644 --- a/ddportfolioservice/tests/__init__.py +++ b/ddportfolioservice/tests/__init__.py @@ -1,24 +1,23 @@ # -*- python -*- # -*- coding: utf-8 -*- # -# DDPortfolio service tests package -# Copyright © 2009, 2010, 2011, 2012 Jan Dittberner +# Debian Member Portfolio Service tests package +# Copyright © 2009-2014 Jan Dittberner # -# This file is part of DDPortfolio service. +# This file is part of Debian Member Portfolio Service. # -# DDPortfolio service is free software: you can redistribute it and/or -# modify it under the terms of the GNU Affero General Public License -# as published by the Free Software Foundation, either version 3 of -# the License, or (at your option) any later version. +# Debian Member Portfolio Service is free software: you can redistribute it +# and/or modify it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the License, +# or (at your option) any later version. # -# DDPortfolio service 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 -# Affero General Public License for more details. +# Debian Member Portfolio Service 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 Affero +# General Public License for more details. # -# You should have received a copy of the GNU Affero General Public -# License along with this program. If not, see -# . +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . # """Pylons application test package @@ -30,11 +29,8 @@ pkg_resources, in case the project hasn't been installed with setuptools. It also initializes the application via websetup (paster setup-app) with the project's test.ini configuration file. """ -import os -import sys from unittest import TestCase -from paste.deploy import loadapp from paste.script.appinstall import SetupCommand from pylons import url from routes.util import URLGenerator diff --git a/ddportfolioservice/tests/functional/test_ddportfolio.py b/ddportfolioservice/tests/functional/test_ddportfolio.py index 2a8a6ed..a21feb9 100644 --- a/ddportfolioservice/tests/functional/test_ddportfolio.py +++ b/ddportfolioservice/tests/functional/test_ddportfolio.py @@ -1,24 +1,23 @@ # -*- python -*- # -*- coding: utf-8 -*- # -# DDPortfolio service DdportfolioController test +# Debian Member Portfolio Service DdportfolioController test # Copyright © 2009, 2010 Jan Dittberner # -# This file is part of DDPortfolio service. +# This file is part of Debian Member Portfolio Service. # -# DDPortfolio service is free software: you can redistribute it and/or -# modify it under the terms of the GNU Affero General Public License -# as published by the Free Software Foundation, either version 3 of -# the License, or (at your option) any later version. +# Debian Member Portfolio Service is free software: you can redistribute it +# and/or modify it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the License, +# or (at your option) any later version. # -# DDPortfolio service 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 -# Affero General Public License for more details. +# Debian Member Portfolio Service 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 Affero +# General Public License for more details. # -# You should have received a copy of the GNU Affero General Public -# License along with this program. If not, see -# . +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . # from ddportfolioservice.tests import TestController, url @@ -28,3 +27,6 @@ class TestDdportfolioController(TestController): def test_index(self): response = self.app.get(url(controller='ddportfolio', action='index')) # Test response... + assert response.status_int == 200 + assert response.content_type == "text/html" + assert "Debian Member Portfolio Service" in response diff --git a/ddportfolioservice/tests/functional/test_showformscripts.py b/ddportfolioservice/tests/functional/test_showformscripts.py index b8b3347..ff7a6e4 100644 --- a/ddportfolioservice/tests/functional/test_showformscripts.py +++ b/ddportfolioservice/tests/functional/test_showformscripts.py @@ -1,24 +1,23 @@ # -*- python -*- # -*- coding: utf-8 -*- # -# DDPortfolio service DdportfolioController test -# Copyright © 2009, 2010, 2011, 2012 Jan Dittberner +# Debian Member Portfolio Service DdportfolioController test +# Copyright © 2009-2014 Jan Dittberner # -# This file is part of DDPortfolio service. +# This file is part of Debian Member Portfolio Service. # -# DDPortfolio service is free software: you can redistribute it and/or -# modify it under the terms of the GNU Affero General Public License -# as published by the Free Software Foundation, either version 3 of -# the License, or (at your option) any later version. +# Debian Member Portfolio Service is free software: you can redistribute it +# and/or modify it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the License, +# or (at your option) any later version. # -# DDPortfolio service 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 -# Affero General Public License for more details. +# Debian Member Portfolio Service 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 Affero +# General Public License for more details. # -# You should have received a copy of the GNU Affero General Public -# License along with this program. If not, see -# . +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . # from ddportfolioservice.tests import TestController, url @@ -29,3 +28,6 @@ class TestShowformscriptsController(TestController): response = self.app.get( url(controller='showformscripts', action='index')) # Test response... + assert response.status_int == 200 + assert response.content_type == "text/javascript" + assert "function updateField" in response From 421f2c5273f3f22fc0b3de098ed3e97647a69725 Mon Sep 17 00:00:00 2001 From: Jan Dittberner Date: Sat, 8 Feb 2014 13:13:26 +0100 Subject: [PATCH 2/3] update headers - update copyright years - replace "DDPortfolio service" in file headers with "Debian Member Portfolio Service" --- ddportfolioservice/controllers/ddportfolio.py | 54 +++++++++---------- ddportfolioservice/model/ddportfolio.ini | 14 ++--- ddportfolioservice/model/form.py | 27 +++++----- ddportfolioservice/model/keyfinder.py | 34 ++++++------ ddportfolioservice/templates/showurls.mako | 25 +++++---- 5 files changed, 75 insertions(+), 79 deletions(-) diff --git a/ddportfolioservice/controllers/ddportfolio.py b/ddportfolioservice/controllers/ddportfolio.py index 81fcd55..e1dad66 100644 --- a/ddportfolioservice/controllers/ddportfolio.py +++ b/ddportfolioservice/controllers/ddportfolio.py @@ -1,24 +1,23 @@ # -*- python -*- # -*- coding: utf-8 -*- # -# DDPortfolio service DdportfolioController -# Copyright © 2009, 2010, 2011, 2012 Jan Dittberner +# Debian Member Portfolio Service DdportfolioController +# Copyright © 2009-2014 Jan Dittberner # -# This file is part of DDPortfolio service. +# This file is part of Debian Member Portfolio Service. # -# DDPortfolio service is free software: you can redistribute it and/or -# modify it under the terms of the GNU Affero General Public License -# as published by the Free Software Foundation, either version 3 of -# the License, or (at your option) any later version. +# Debian Member Portfolio Service is free software: you can redistribute it +# and/or modify it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the License, +# or (at your option) any later version. # -# DDPortfolio service 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 -# Affero General Public License for more details. +# Debian Member Portfolio Service 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 Affero +# General Public License for more details. # -# You should have received a copy of the GNU Affero General Public -# License along with this program. If not, see -# . +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . # import logging import simplejson @@ -46,7 +45,7 @@ class DdportfolioController(BaseController): 'ddpo': N_("Debian Member's Package Overview"), 'alladdresses': N_("""Debian Member's Package Overview ... showing all email addresses"""), - }, + }, 'bugs': { 'label': N_('Bugs'), 'received': N_('''bugs received @@ -60,12 +59,12 @@ developer name on all bug logs)'), 'wnpp': N_('WNPP'), 'correspondent': N_('correspondent for bugs'), 'graph': N_('one year open bug history graph'), - }, + }, 'build': { 'label': N_('Build'), 'buildd': N_('buildd.d.o'), 'igloo': N_('igloo'), - }, + }, 'qa': { 'label': N_('Quality Assurance'), 'dmd': N_('maintainer dashboard'), @@ -75,19 +74,19 @@ developer name on all bug logs)'), 'piuparts': N_('piuparts'), 'patchtracker': N_('Debian patch tracking system'), 'duck': N_('Debian Url ChecKer'), - }, + }, 'lists': { 'label': N_('Mailing Lists'), 'dolists': N_('lists.d.o'), 'adolists': N_('lists.a.d.o'), 'gmane': N_('gmane'), - }, + }, 'files': { 'label': N_('Files'), 'people': N_('people.d.o'), 'oldpeople': N_('oldpeople'), 'alioth': N_('Alioth'), - }, + }, 'membership': { 'label': N_('Membership'), 'nm': N_('NM'), @@ -97,7 +96,7 @@ developer name on all bug logs)'), 'alioth': N_('Alioth'), 'wiki': N_('Wiki'), 'forum': N_('Forum'), - }, + }, 'miscellaneous': { 'label': N_('Miscellaneous'), 'debtags': N_('debtags'), @@ -110,19 +109,19 @@ developer name on all bug logs)'), 'gpgweb': N_('GPG public key via HTTP'), 'nm': N_('NM, AM participation'), 'contrib': N_('Contribution information'), - }, + }, 'ssh': { 'label': N_('Information reachable via ssh (for Debian Members)'), 'owndndoms': N_('owned debian.net domains'), 'miainfo': N_('MIA database information'), 'groupinfo': N_('Group membership information'), - }, + }, 'ubuntu': { 'label': N_('Ubuntu'), 'ubuntudiff': N_('Available patches from Ubuntu'), - }, - } + }, + } def _get_label(self, section, url=None): if section in self._LABELS: @@ -187,9 +186,8 @@ developer name on all bug logs)'), if form_result['mode'] == 'json': response.headers['Content-Type'] = 'text/javascript' return simplejson.dumps( - dict([("%s.%s" % \ - (entry[1], entry[2].name), entry[3]) \ - for entry in data if entry[0] == 'url'])) + dict([("%s.%s" % (entry[1], entry[2].name), entry[3]) + for entry in data if entry[0] == 'url'])) for entry in data: if entry[0] in ('url', 'error'): entry.append(_(self._get_label(entry[1], entry[2].name))) diff --git a/ddportfolioservice/model/ddportfolio.ini b/ddportfolioservice/model/ddportfolio.ini index 3545b44..6975d2c 100644 --- a/ddportfolioservice/model/ddportfolio.ini +++ b/ddportfolioservice/model/ddportfolio.ini @@ -1,22 +1,22 @@ # -# Configuration for Debian Member Portfolio service +# Configuration for Debian Member Portfolio Service # # Copyright © 2009-2014 Jan Dittberner # -# This file is part of the Debian Member Portfolio service. +# This file is part of the Debian Member Portfolio Service. # -# Debian Member Portfolio service is free software: you can redistribute it +# Debian Member Portfolio Service is free software: you can redistribute it # and/or modify it under the terms of the GNU Affero General Public License as # published by the Free Software Foundation, either version 3 of the License, # or (at your option) any later version. # -# Debian Member Portfolio service is distributed in the hope that it will be# useful, but WITHOUT ANY WARRANTY; without even the implied warranty of +# Debian Member Portfolio Service 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 Affero # General Public License for more details. # -# You should have received a copy of the GNU Affero General Public -# License along with this program. If not, see -# . +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . # [DEFAULT] gnupghome=~/debian/gnupghome diff --git a/ddportfolioservice/model/form.py b/ddportfolioservice/model/form.py index fb9e2dc..d87feb4 100644 --- a/ddportfolioservice/model/form.py +++ b/ddportfolioservice/model/form.py @@ -1,24 +1,23 @@ # -*- python -*- # -*- coding: utf-8 -*- # -# DDPortfolio service form handling model -# Copyright © 2009, 2010, 2011, 2012 Jan Dittberner +# Debian Member Portfolio Service form handling model +# Copyright © 2009-2014 Jan Dittberner # -# This file is part of DDPortfolio service. +# This file is part of Debian Member Portfolio Service. # -# DDPortfolio service is free software: you can redistribute it and/or -# modify it under the terms of the GNU Affero General Public License -# as published by the Free Software Foundation, either version 3 of -# the License, or (at your option) any later version. +# Debian Member Portfolio Service is free software: you can redistribute it +# and/or modify it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the License, +# or (at your option) any later version. # -# DDPortfolio service 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 -# Affero General Public License for more details. +# Debian Member Portfolio Service 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 Affero +# General Public License for more details. # -# You should have received a copy of the GNU Affero General Public -# License along with this program. If not, see -# . +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . # import formencode diff --git a/ddportfolioservice/model/keyfinder.py b/ddportfolioservice/model/keyfinder.py index 71f584a..275a013 100644 --- a/ddportfolioservice/model/keyfinder.py +++ b/ddportfolioservice/model/keyfinder.py @@ -1,24 +1,23 @@ # -*- python -*- # -*- coding: utf-8 -*- # -# DDPortfolio service key finder module -# Copyright (c) 2009, 2010, 2011, 2012 Jan Dittberner +# Debian Member Portfolio Service key finder module +# Copyright (c) 2009-2014 Jan Dittberner # -# This file is part of DDPortfolio service. +# This file is part of Debian Member Portfolio Service. # -# DDPortfolio service is free software: you can redistribute it and/or -# modify it under the terms of the GNU Affero General Public License -# as published by the Free Software Foundation, either version 3 of -# the License, or (at your option) any later version. +# Debian Member Portfolio Service is free software: you can redistribute it +# and/or modify it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the License, +# or (at your option) any later version. # -# DDPortfolio service 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 -# Affero General Public License for more details. +# Debian Member Portfolio Service 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 Affero +# General Public License for more details. # # You should have received a copy of the GNU Affero General Public -# License along with this program. If not, see -# . +# License along with this program. If not, see . # """ This module provides tools for finding PGP key information from a @@ -86,6 +85,7 @@ def getLoginByFingerprint(fpr): """ return _get_cached('login:fpr:%s' % fpr) + def _dump_cache(): cache = _get_keyring_cache() fprs = [] @@ -94,16 +94,16 @@ def _dump_cache(): fpr = key.replace('email:fpr:', '') if not fpr in fprs: fprs.append(fpr) - + for fpr in fprs: login = getLoginByFingerprint(fpr) email = _get_cached('email:fpr:%s' % fpr) name = _get_cached('name:fpr:%s' % fpr) - + print fpr, login, ':' print ' ', name, email - - + + if __name__ == '__main__': logging.basicConfig(stream=sys.stderr, level=logging.WARNING) _dump_cache() diff --git a/ddportfolioservice/templates/showurls.mako b/ddportfolioservice/templates/showurls.mako index 2aea190..441578b 100644 --- a/ddportfolioservice/templates/showurls.mako +++ b/ddportfolioservice/templates/showurls.mako @@ -2,23 +2,22 @@ <%inherit file="base.mako" />\ <%doc> Template for the url output page. -Copyright © 2009, 2010 Jan Dittberner +Copyright © 2009-2014 Jan Dittberner -This file is part of DDPortfolio service. +This file is part of Debian Member Portfolio Service. -DDPortfolio service is free software: you can redistribute it and/or -modify it under the terms of the GNU Affero General Public License as -published by the Free Software Foundation, either version 3 of the -License, or (at your option) any later version. +Debian Member Portfolio Service is free software: you can redistribute it +and/or modify it under the terms of the GNU Affero General Public License as +published by the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. -DDPortfolio service 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 -Affero General Public License for more details. +Debian Member Portfolio Service 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 Affero +General Public License for more details. -You should have received a copy of the GNU Affero General Public -License along with this program. If not, see -. +You should have received a copy of the GNU Affero General Public License along +with this program. If not, see . \ <%def name="titleaddon()"> - ${_('Your personal links')} From d5d98c46c3f42ba1b7600348d6ba38152bc23333 Mon Sep 17 00:00:00 2001 From: Jan Dittberner Date: Sat, 8 Feb 2014 13:14:12 +0100 Subject: [PATCH 3/3] update ChangeLog --- ChangeLog | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 75384e8..171895a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,6 +1,14 @@ +2014-02-08 Jan Dittberner + * moved to new server + * ported to Wheezy versions of the dependencies + * applied patches by Paul Wise and Olivier Berger + * update Sphinx documentation + * check responses in controller unit tests + * update copyright years of files + 2013-02-24 Jan Dittberner - * add sphinx documentation - * applied multiple patches by Paul Wise + * add sphinx documentation + * applied multiple patches by Paul Wise 2012-12-08 Jan Dittberner