From b0bfdec40d24e9080b8b30d4a2d73e3061875717 Mon Sep 17 00:00:00 2001 From: Richard Ipsum Date: Thu, 6 Nov 2014 17:37:46 +0000 Subject: add test --- exts/pip_find_deps_tests.py | 49 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100755 exts/pip_find_deps_tests.py diff --git a/exts/pip_find_deps_tests.py b/exts/pip_find_deps_tests.py new file mode 100755 index 0000000..a98bc73 --- /dev/null +++ b/exts/pip_find_deps_tests.py @@ -0,0 +1,49 @@ +#!/usr/bin/env python +# Copyright (C) 2014 Codethink Limited +# +# 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; version 2 of the License. +# +# 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., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +import unittest + +import pip_find_deps +import pkg_resources + +class ConflictDetectionTests(unittest.TestCase): + + def setUp(self): + reqs = ['a == 0.1', 'a == 0.2'] + self.test_requirements = pkg_resources.parse_requirements(reqs) + + # ('==', '0.1') conflicts with ('<', 0.1) + # ('==', '0.1') conflicts with ('>', 0.1) + # ('==', '0.1') conflicts with ('!=', 0.1) + + # ('<', '0.1') conflicts with ('>', '0.1') + # ('<=', 0.1) conflicts with ('>=', 0.2) + # ('<', '0.1') conflicts with ('>', '0.2') + + def test_eqs_two_different_versions(self): + # ('==', '0.1') conflicts with ('==', '0.2') + deps = pip_find_deps.resolve_version_constraints( + self.test_requirements) + + self.assertEqual(len(deps), 1) + + #dep = deps.popitem() + #self.assertEqual(len(dep.conflicts), 1) + + +if __name__ == '__main__': + suite = unittest.TestLoader().loadTestsFromTestCase(ConflictDetectionTests) + unittest.TextTestRunner(verbosity=2).run(suite) \ No newline at end of file -- cgit v1.2.1