def update_from_pypi(self): """Call get_latest_version and then save the object.""" info = self.get_info() self.licence = package_licence(info) self.latest_version = package_version(info) self.diff_status = version_diff(self.current_version, self.latest_version) self.checked_pypi_at = tz_now() self.save() return self
def test_version_diff(self): self.assertEqual(version_diff(None, None), 'unknown') self.assertEqual(version_diff(None, self.v_0_0_1), 'unknown') self.assertEqual(version_diff(self.v_0_0_1, None), 'unknown') self.assertEqual(version_diff(self.v_0_0_1, self.v_0_1_0), 'minor') self.assertEqual(version_diff(self.v_0_0_1, self.v_0_0_1), 'none') self.assertEqual(version_diff(self.v_0_0_1, self.v_0_0_2), 'patch') self.assertEqual(version_diff(self.v_0_0_1, self.v_0_1_0), 'minor') self.assertEqual(version_diff(self.v_0_0_1, self.v_1_0_0), 'major') self.assertEqual(version_diff(self.v_0_0_2, self.v_0_0_1), 'patch') self.assertEqual(version_diff(self.v_0_0_2, self.v_0_0_2), 'none') self.assertEqual(version_diff(self.v_0_0_2, self.v_0_1_0), 'minor') self.assertEqual(version_diff(self.v_0_0_2, self.v_1_0_0), 'major') self.assertEqual(version_diff(self.v_0_1_0, self.v_0_0_1), 'minor') self.assertEqual(version_diff(self.v_0_1_0, self.v_0_0_2), 'minor') self.assertEqual(version_diff(self.v_0_1_0, self.v_0_1_0), 'none') self.assertEqual(version_diff(self.v_0_1_0, self.v_1_0_0), 'major') self.assertEqual(version_diff(self.v_1_0_0, self.v_0_0_1), 'major') self.assertEqual(version_diff(self.v_1_0_0, self.v_0_0_2), 'major') self.assertEqual(version_diff(self.v_1_0_0, self.v_0_1_0), 'major') self.assertEqual(version_diff(self.v_1_0_0, self.v_1_0_0), 'none') self.assertEqual(version_diff(self.v_1_0_0, self.v_other), 'other')