def testFormattingSameVersion(self): v = self.struct() v.string = '1.2' status = Status('apackage', v, v) report = self.reporter.format(status) self.assertNotContains(report, '[') self.assertContains(report, 'apackage (1.2)')
def testFormattingNoCurrentVersion(self): v1 = self.struct() v1.string = '1.2' status = Status('apackage', None, v1) report = self.reporter.format(status) self.assertContains(report, '(->1.2') self.assertNotContains(report, '[')
def testFormattingNoCandidateVersion(self): v1 = self.struct() v1.string = '1.2' status = Status('apackage', v1, None) report = self.reporter.format(status) self.assertContains(report, '1.2->)') self.assertNotContains(report, '[')
def setUp(self): super(Test_Instantiation_Without_Official_Versions, self).setUp() fv1 = FakeVersion('1.2.5') fv1.append_package_file(FakePackageFile()) installed_version = VersionAdapter(fv1) fv2 = FakeVersion('1.2.6') fv2.append_package_file(FakePackageFile()) candidate_version = VersionAdapter(fv2) self.versions_by_origin = { 'NonDebian': [VersionAdapter(FakeVersion('foo'))] } self.s = Status('foo', installed_version, candidate_version, self.versions_by_origin)
def testFormatting(self): v1 = self.struct() v1.string = '1.2' v2 = self.struct() v2.string = '1.3' v3, v4 = self.struct(), self.struct() v3.string = '1.2.3' v4.string = 'x.y.z' status = Status('apackage', v1, v2, {'Debian': [v3, v4], 'another origin': [v3, v4]}) report = self.reporter.format(status) self.assertContains(report, 'apackage (1.2->1.3) ') self.assertContains(report, ' [Debian: 1.2.3 x.y.z]') self.assertContains(report, ' [another origin: 1.2.3 x.y.z]')
def get_status(self, facter): """Creates a new Status object based on this one, given a Facter.""" versions_by_origin = {} for version in self.versions: for pfa in version.files: origin = pfa.origin if not origin: continue if versions_by_origin.has_key(origin): versions_by_origin[origin].append(version) else: versions_by_origin[origin] = [version] return Status(self.name, self.current_version, self.candidate_version, versions_by_origin)
def setUp(self): super(TestInstantiation, self).setUp() fv1 = FakeVersion() fv1.append_package_file(FakePackageFile()) installed_version = VersionAdapter(fv1) fv2 = FakeVersion('1.2.4') fv2.append_package_file(FakePackageFile()) candidate_version = VersionAdapter(fv2) self.versions_by_origin = { 'Debian': [VersionAdapter(FakeVersion('foo'))], 'Another': [ VersionAdapter(FakeVersion('bar')), VersionAdapter(FakeVersion('baz')) ] } self.s = Status('foo', installed_version, candidate_version, self.versions_by_origin)
def _create_mock_status(self, package, current_version, candidate_version, _official_versions, other_versions={}): official_versions = [ self._create_mock_version_adapter(v) for v in _official_versions ] vbo = {} vbo['Debian'] = official_versions for o, vers in other_versions.items(): vbo[o] = [ self._create_mock_version_adapter(( v, o, )) for v in vers ] return Status(package, self._create_mock_version_adapter(current_version), self._create_mock_version_adapter(candidate_version), vbo)