def test_matches_version_contraint_approximately_equal(self):
        self.assertTrue(mvc('~>', v('2.0.0'), v('2.0.1')))
        self.assertTrue(mvc('~>', v('2.0.0'), v('2.0.0')))
        self.assertFalse(mvc('~>', v('2.0.0'), v('2.1.0')))

        self.assertTrue(mvc('~>', v('2.0'), v('2.0.1')))
        self.assertTrue(mvc('~>', v('2.0'), v('2.9')))
        self.assertFalse(mvc('~>', v('2.0'), v('3.0')))
 def test_matches_version_contraint_greater_than(self):
     self.assertTrue(mvc('>', v('1.0'), v('1.1')))
     self.assertTrue(mvc('>', v('1.0.0'), v('2')))
     self.assertFalse(mvc('>', v('1.0'), v('1.0.0')))
 def test_matches_version_contraint_less_or_equal(self):
     self.assertTrue(mvc('<=', v('2.0'), v('1.1')))
     self.assertTrue(mvc('<=', v('2.0.0'), v('1.9.9')))
     self.assertFalse(mvc('<=', v('2.0'), v('2.0.1')))
 def test_matches_version_contraint_equals(self):
     self.assertTrue(mvc('=', v('1.0'), v('1.0.0')))
     self.assertTrue(mvc('=', v('1.0.0'), v('1.0.0')))
     self.assertFalse(mvc('=', v('1.1'), v('1.0.0')))