summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Pursehouse <david.pursehouse@sonymobile.com>2013-08-06 14:09:36 +0900
committerDavid Pursehouse <david.pursehouse@sonymobile.com>2013-08-06 15:25:57 +0900
commit0a55fe5aa34434e8dc49ddacd050343573c74cb4 (patch)
treeebc52ccd33aadf5735f54d0ffe3c372c49f8aa16
parent7d8c0d8e78624a6b4177f239b7379ae0dc1a63b2 (diff)
downloadpygerrit-0a55fe5aa34434e8dc49ddacd050343573c74cb4.tar.gz
Add a unit test to ensure dependency package version consistency
Add a test to make sure that if depencency package versions are updated that they are updated to consistent versions in both requirements.txt and setup.py Change-Id: I855af3246bfb1013f8a462c99fb2d15ef6454998
-rwxr-xr-xsetup.py36
-rwxr-xr-xunittests.py22
2 files changed, 44 insertions, 14 deletions
diff --git a/setup.py b/setup.py
index 33917d6..abfd7a3 100755
--- a/setup.py
+++ b/setup.py
@@ -28,17 +28,25 @@ from setuptools import setup
from pygerrit import __version__
-setup(
- name="pygerrit",
- description="Client library for interacting with Gerrit",
- version=__version__,
- license="The MIT License",
- author="David Pursehouse",
- author_email="david.pursehouse@sonymobile.com",
- maintainer="David Pursehouse",
- maintainer_email="david.pursehouse@sonymobile.com",
- url="https://github.com/sonyxperiadev/pygerrit",
- packages=['pygerrit'],
- keywords='gerrit, json',
- install_requires=['paramiko==1.11.0', 'pycrypto==2.3'],
-)
+requires = ['paramiko==1.11.0', 'pycrypto==2.3']
+
+
+def _main():
+ setup(
+ name="pygerrit",
+ description="Client library for interacting with Gerrit",
+ version=__version__,
+ license="The MIT License",
+ author="David Pursehouse",
+ author_email="david.pursehouse@sonymobile.com",
+ maintainer="David Pursehouse",
+ maintainer_email="david.pursehouse@sonymobile.com",
+ url="https://github.com/sonyxperiadev/pygerrit",
+ packages=['pygerrit'],
+ keywords='gerrit, json',
+ install_requires=requires,
+ )
+
+
+if __name__ == "__main__":
+ _main()
diff --git a/unittests.py b/unittests.py
index 9ff0ba3..84a420b 100755
--- a/unittests.py
+++ b/unittests.py
@@ -36,6 +36,7 @@ from pygerrit.events import PatchsetCreatedEvent, \
ChangeAbandonedEvent, ChangeRestoredEvent, \
DraftPublishedEvent, GerritEventFactory, GerritEvent
from pygerrit.client import GerritClient
+from setup import requires as setup_requires
@GerritEventFactory.register("user-defined-event")
@@ -61,6 +62,27 @@ def _create_event(name, gerrit):
gerrit.put_event(json_data)
+class TestConsistentDependencies(unittest.TestCase):
+
+ """ Verify that dependency package versions are consistent. """
+
+ def test_dependencies(self):
+ requirements_txt = {}
+ setup_py = {}
+
+ for package in open("requirements.txt").read().strip().splitlines():
+ name, version = package.split('==')
+ requirements_txt[name] = version
+
+ for package in setup_requires:
+ name, version = package.split('==')
+ setup_py[name] = version
+
+ self.assertEquals(requirements_txt, setup_py,
+ "Inconsistency between dependency package versions "
+ "listed in requirements.txt and setup.py")
+
+
class TestGerritEvents(unittest.TestCase):
def setUp(self):
self.gerrit = GerritClient("review")