def test_fromJSON(self): """Test AliasesDict.fromJSON method.""" ad = AliasesDict.fromJSON( {'en': [{'language': 'en', 'value': 'foo'}, {'language': 'en', 'value': 'bar'}], 'zh': [{'language': 'zh', 'value': 'foo'}, {'language': 'zh', 'value': 'bar'}], }) self.assertIsInstance(ad, AliasesDict) self.assertEqual(ad, AliasesDict(self.lang_out))
def test_toJSON_diffto(self): """Test AliasesDict.toJSON method.""" ad = AliasesDict(self.lang_out) diffto = { 'de': [ { 'language': 'de', 'value': 'foo' }, { 'language': 'de', 'value': 'bar' }, ], 'en': [ { 'language': 'en', 'value': 'foo' }, { 'language': 'en', 'value': 'baz' }, ] } self.assertEqual( ad.toJSON(diffto=diffto), { 'de': [{ 'language': 'de', 'value': 'foo', 'remove': '' }, { 'language': 'de', 'value': 'bar', 'remove': '' }], 'en': [{ 'language': 'en', 'value': 'foo' }, { 'language': 'en', 'value': 'bar' }], 'zh': [{ 'language': 'zh', 'value': 'foo' }, { 'language': 'zh', 'value': 'bar' }] })
def test_setitem(self): """Test AliasesDict.__setitem__ metamethod.""" ad = AliasesDict(self.lang_out) self.assertIn('en', ad) self.assertIn('zh', ad) ad[self.site] = ['baz'] self.assertIn('en', ad)
def test_normalizeData(self): """Test AliasesDict.normalizeData method.""" data_in = { 'en': [ { 'language': 'en', 'value': 'foo' }, 'bar', { 'language': 'en', 'value': 'baz', 'remove': '' }, ] } data_out = { 'en': [ { 'language': 'en', 'value': 'foo' }, { 'language': 'en', 'value': 'bar' }, { 'language': 'en', 'value': 'baz', 'remove': '' }, ] } self.assertEqual(AliasesDict.normalizeData(data_in), data_out)
def test_delitem(self): """Test AliasesDict.__delitem__ metamethod.""" ad = AliasesDict(self.lang_out) ad.pop(self.site) ad.pop('zh') self.assertNotIn('en', ad) self.assertNotIn('zh', ad) self.assertLength(ad, 0)
def test_toJSON(self): """Test AliasesDict.toJSON method.""" ad = AliasesDict() self.assertEqual(ad.toJSON(), {}) ad = AliasesDict(self.lang_out) self.assertEqual( ad.toJSON(), {'en': [{'language': 'en', 'value': 'foo'}, {'language': 'en', 'value': 'bar'}], 'zh': [{'language': 'zh', 'value': 'foo'}, {'language': 'zh', 'value': 'bar'}], })
def test_getitem(self): """Test AliasesDict.__getitem__ metamethod.""" ad = AliasesDict(self.lang_out) self.assertEqual(ad['en'], ['foo', 'bar']) self.assertEqual(ad[self.site], ['foo', 'bar']) self.assertIsNone(ad.get('de'))
def test_init(self): """Test AliasesDict initializer.""" ad = AliasesDict() self.assertLength(ad, 0) ad = AliasesDict(self.lang_out) self.assertLength(ad, 2)