def testNamespaceCompare(self): """Test Namespace comparisons.""" a = Namespace(id=0, canonical_name='') self.assertEqual(a, 0) self.assertEqual(a, '') self.assertFalse(a < 0) # noqa: H205 self.assertFalse(a > 0) # noqa: H205 self.assertNotEqual(a, None) # noqa: H203 self.assertGreater(a, -1) x = Namespace(id=6, custom_name='dummy', canonical_name='File', aliases=['Image', 'Immagine']) y = Namespace(id=6, custom_name='ملف', canonical_name='File', aliases=['Image', 'Immagine']) z = Namespace(id=7, custom_name='dummy 7', canonical_name='File', aliases=['Image', 'Immagine']) self.assertEqual(x, x) self.assertEqual(x, y) self.assertNotEqual(x, a) self.assertNotEqual(x, z) self.assertEqual(x, 6) self.assertEqual(x, 'dummy') self.assertEqual(x, 'Dummy') self.assertEqual(x, 'file') self.assertEqual(x, 'File') self.assertEqual(x, ':File') self.assertEqual(x, ':File:') self.assertEqual(x, 'File:') self.assertEqual(x, 'image') self.assertEqual(x, 'Image') self.assertFalse(x < 6) # noqa: H205 self.assertFalse(x > 6) # noqa: H205 self.assertEqual(y, 'ملف') self.assertLess(a, x) self.assertLess(x, z) self.assertLessEqual(a, x) self.assertGreater(x, a) self.assertGreater(x, 0) self.assertGreater(z, x) self.assertGreaterEqual(x, a) self.assertGreaterEqual(y, x) self.assertIn(6, [x, y, z]) self.assertNotIn(8, [x, y, z])
def setUpClass(cls): super(TestAlternateNamespaces, cls).setUpClass() cls.get_repo()._namespaces = SelfCallDict({ 90: Namespace(id=90, case='first-letter', canonical_name='Item', defaultcontentmodel='wikibase-item'), 92: Namespace(id=92, case='first-letter', canonical_name='Prop', defaultcontentmodel='wikibase-property') })
def test_repr(self): """Test Namespace.__repr__.""" a = Namespace(id=0, canonical_name='Foo') s = repr(a) r = 'Namespace(id=0, custom_name={!r}, canonical_name={!r}, ' \ 'aliases=[])'.format(unicode('Foo'), unicode('Foo')) self.assertEqual(s, r) a.defaultcontentmodel = 'bar' s = repr(a) r = ('Namespace(id=0, custom_name={!r}, canonical_name={!r}, ' 'aliases=[], defaultcontentmodel={!r})'.format( unicode('Foo'), unicode('Foo'), unicode('bar'))) self.assertEqual(s, r) a.case = 'upper' s = repr(a) r = ('Namespace(id=0, custom_name={!r}, canonical_name={!r}, ' 'aliases=[], case={!r}, defaultcontentmodel={!r})'.format( unicode('Foo'), unicode('Foo'), unicode('upper'), unicode('bar'))) self.assertEqual(s, r) b = eval(repr(a)) self.assertEqual(a, b)
def test_repr(self): """Test Namespace.__repr__.""" a = Namespace(id=0, canonical_name=u'Foo') s = repr(a) r = "Namespace(id=0, custom_name=%r, canonical_name=%r, aliases=[])" \ % (unicode('Foo'), unicode('Foo')) self.assertEqual(s, r) a.defaultcontentmodel = 'bar' s = repr(a) r = ('Namespace(id=0, custom_name=%r, canonical_name=%r, aliases=[], ' 'defaultcontentmodel=%r)' % (unicode('Foo'), unicode('Foo'), unicode('bar'))) self.assertEqual(s, r) a.case = 'upper' s = repr(a) r = ( 'Namespace(id=0, custom_name=%r, canonical_name=%r, aliases=[], ' 'case=%r, defaultcontentmodel=%r)' % (unicode('Foo'), unicode('Foo'), unicode('upper'), unicode('bar'))) self.assertEqual(s, r) b = eval(repr(a)) self.assertEqual(a, b)
def _build_namespaces(self): namespaces = super(DryDataSite, self)._build_namespaces() namespaces[0].defaultcontentmodel = 'wikibase-item' namespaces[120] = Namespace(id=120, case='first-letter', canonical_name='Property', defaultcontentmodel='wikibase-property') return namespaces
def testNamespaceCompare(self): a = Namespace(id=0, canonical_name=u'') self.assertEqual(a, 0) self.assertEqual(a, '') self.assertNotEqual(a, None) x = Namespace(id=6, custom_name=u'dummy', canonical_name=u'File', aliases=[u'Image', u'Immagine']) y = Namespace(id=6, custom_name=u'ملف', canonical_name=u'File', aliases=[u'Image', u'Immagine']) z = Namespace(id=7, custom_name=u'dummy', canonical_name=u'File', aliases=[u'Image', u'Immagine']) self.assertEqual(x, x) self.assertEqual(x, y) self.assertNotEqual(x, a) self.assertNotEqual(x, z) self.assertEqual(x, 6) self.assertEqual(x, u'dummy') self.assertEqual(x, u'Dummy') self.assertEqual(x, u'file') self.assertEqual(x, u'File') self.assertEqual(x, u':File') self.assertEqual(x, u':File:') self.assertEqual(x, u'File:') self.assertEqual(x, u'image') self.assertEqual(x, u'Image') self.assertEqual(y, u'ملف') self.assertLess(a, x) self.assertGreater(x, a) self.assertGreater(z, x) self.assertIn(6, [x, y, z]) self.assertNotIn(8, [x, y, z])
def testNamespaceNameCase(self): """Namespace names are always case-insensitive.""" kwargs = {'case': 'first-letter'} y = Namespace(id=6, custom_name='dummy', canonical_name='File', aliases=['Image', 'Immagine'], **kwargs) self.assertIn('dummy', y) self.assertIn('Dummy', y) self.assertIn('file', y) self.assertIn('File', y) self.assertIn('image', y) self.assertIn('Image', y) self.assertIn('immagine', y) self.assertIn('Immagine', y)
def __init__(self, code, fam, user, sysop): """Constructor.""" super(DryDataSite, self).__init__(code, fam, user, sysop) self._namespaces[0].defaultcontentmodel = 'wikibase-item' self._namespaces.update({ 120: Namespace(id=120, case='first-letter', canonical_name='Property', defaultcontentmodel='wikibase-property') })
def testNamespaceToString(self): """Test Namespace __str__.""" ns = Namespace.builtin_namespaces() self.assertEqual(str(ns[0]), ':') self.assertEqual(str(ns[1]), 'Talk:') self.assertEqual(str(ns[6]), ':File:') kwargs = {'case': 'first-letter'} y = Namespace(id=6, custom_name='ملف', canonical_name='File', aliases=['Image', 'Immagine'], **kwargs) self.assertEqual(str(y), ':File:') self.assertEqual(y.canonical_prefix(), ':File:') self.assertEqual(y.custom_prefix(), ':ملف:')
class DrySite(pywikibot.site.DataSite): _namespaces = { 90: Namespace(id=90, canonical_name='Item', defaultcontentmodel='wikibase-item'), 92: Namespace(id=92, canonical_name='Prop', defaultcontentmodel='wikibase-property') } __init__ = lambda *args: None code = 'test' family = lambda: None family.name = 'test' _logged_in_as = None _siteinfo = {'case': 'first-letter'} _item_namespace = None _property_namespace = None def encoding(self): return 'utf-8' def encodings(self): return []
def testNamespaceConstructor(self): kwargs = {u'case': u'first-letter'} y = Namespace(id=6, custom_name=u'dummy', canonical_name=u'File', aliases=[u'Image', u'Immagine'], **kwargs) self.assertEqual(y.id, 6) self.assertEqual(y.custom_name, u'dummy') self.assertEqual(y.canonical_name, u'File') self.assertNotEqual(y.custom_name, u'Dummy') self.assertNotEqual(y.canonical_name, u'file') self.assertIn(u'Image', y.aliases) self.assertIn(u'Immagine', y.aliases) self.assertEqual(len(y), 4) self.assertEqual(list(y), ['dummy', u'File', u'Image', u'Immagine']) self.assertEqual(y.case, u'first-letter')
def testNamespaceConstructor(self): """Test Namespace constructor.""" kwargs = {'case': 'first-letter'} y = Namespace(id=6, custom_name='dummy', canonical_name='File', aliases=['Image', 'Immagine'], **kwargs) self.assertEqual(y.id, 6) self.assertEqual(y.custom_name, 'dummy') self.assertEqual(y.canonical_name, 'File') self.assertNotEqual(y.custom_name, 'Dummy') self.assertNotEqual(y.canonical_name, 'file') self.assertIn('Image', y.aliases) self.assertIn('Immagine', y.aliases) self.assertLength(y, 4) self.assertEqual(list(y), ['dummy', 'File', 'Image', 'Immagine']) self.assertEqual(y.case, 'first-letter')
def test_repr(self): """Test Namespace.__repr__.""" a = Namespace(id=0, canonical_name='Foo') s = repr(a) r = 'Namespace(id=0, custom_name={foo!r}, canonical_name={foo!r}, ' \ 'aliases=[])'.format(foo='Foo') self.assertEqual(s, r) a.defaultcontentmodel = 'bar' s = repr(a) r = ('Namespace(id=0, custom_name={foo!r}, canonical_name={foo!r}, ' 'aliases=[], defaultcontentmodel={bar!r})' .format(foo='Foo', bar='bar')) self.assertEqual(s, r) a.case = 'upper' s = repr(a) r = ('Namespace(id=0, custom_name={foo!r}, canonical_name={foo!r}, ' 'aliases=[], case={case!r}, defaultcontentmodel={bar!r})' .format(foo='Foo', case='upper', bar='bar'))
def testNamespaceToString(self): ns = Namespace.builtin_namespaces(use_image_name=False) self.assertEqual(str(ns[0]), ':') self.assertEqual(str(ns[1]), 'Talk:') self.assertEqual(str(ns[6]), ':File:') self.assertEqual(unicode(ns[0]), u':') self.assertEqual(unicode(ns[1]), u'Talk:') self.assertEqual(unicode(ns[6]), u':File:') kwargs = {u'case': u'first-letter'} y = Namespace(id=6, custom_name=u'ملف', canonical_name=u'File', aliases=[u'Image', u'Immagine'], **kwargs) self.assertEqual(str(y), ':File:') if sys.version_info[0] <= 2: self.assertEqual(unicode(y), u':ملف:') self.assertEqual(y.canonical_prefix(), ':File:') self.assertEqual(y.custom_prefix(), u':ملف:')
def test_repr(self): a = Namespace(id=0, canonical_name=u'Foo') s = repr(a) r = "Namespace(id=0, custom_name=%r, canonical_name=%r, aliases=[])" \ % (unicode('Foo'), unicode('Foo')) self.assertEqual(s, r) a.defaultcontentmodel = 'bar' s = repr(a) r = "Namespace(id=0, custom_name=%r, canonical_name=%r, aliases=[], defaultcontentmodel='bar')" \ % (unicode('Foo'), unicode('Foo')) self.assertEqual(s, r) a.case = 'upper' s = repr(a) r = "Namespace(id=0, custom_name=%r, canonical_name=%r, aliases=[], case='upper', defaultcontentmodel='bar')" \ % (unicode('Foo'), unicode('Foo')) self.assertEqual(s, r) b = eval(repr(a)) self.assertEqual(a, b)