def test_rpm2py_format(self): fmt = repoquery.rpm2py_format('%{name}') self.assertEqual(fmt, '{0.name}') fmt = repoquery.rpm2py_format('%40{name}') self.assertEqual(fmt, '{0.name:<40}') fmt = repoquery.rpm2py_format('%-40{name}') self.assertEqual(fmt, '{0.name:>40}') fmt = repoquery.rpm2py_format('%{name}-%{repoid} :: %-40{arch}') self.assertEqual(fmt, '{0.name}-{0.repoid} :: {0.arch:>40}')
def test_illegal_attr(self): pkg = PkgStub() with self.assertRaises(AttributeError) as ctx: repoquery.rpm2py_format('%{notfound}').format(pkg) self.assertEqual(str(ctx.exception), "'PkgStub' object has no attribute 'notfound'")
def test_output(self): pkg = PkgStub() fmt = repoquery.rpm2py_format( '%{name}-%{version}-%{release}.%{arch} (%{reponame})') self.assertEqual(fmt.format(pkg), 'foobar-1.0.1-1.f20.x86_64 (@System)')