def test_add_claim(self): claim = Claim('P17', datatype='wikibase-item') claim.setTarget(ItemPage('Q91')) self.item_page.addClaim(claim) self.assertIn('P17', self.item_page.claims) self.assertEqual(len(self.item_page.claims['P17']), 1) self.assertIsInstance(self.item_page.claims['P17'][0], Claim)
def test_qualifiers(self): source = self.claim1.sources[0]['P143'][0] self.assertRaises(ValueError, source.has_qualifier, 'P31', 'Q5') qualifier = Claim('P31', datatype='wikibase-item') qualifier.setTarget(ItemPage('Q5')) self.claim1.addQualifier(qualifier) self.assertRaises(ValueError, source.addQualifier, qualifier) self.assertEqual(self.claim1.qualifiers['P31'][0], qualifier) self.assertTrue(qualifier.isQualifier) self.assertTrue(self.claim1.has_qualifier('P31', 'Q5')) self.assertFalse(self.claim1.has_qualifier('P31', 'Q6')) self.assertFalse(self.claim1.has_qualifier('P32', 'Q5'))
def test_sources(self): self.assertIsInstance(self.claim1.sources, list) self.assertIsInstance(self.claim1.sources[0], OrderedDict) self.assertIn('P143', self.claim1.sources[0]) self.assertIsInstance(self.claim1.sources[0]['P143'], list) self.assertEqual(len(self.claim1.sources), 2) self.assertEqual(self.claim1.getSources(), self.claim1.sources) sources_copy = self.claim1.sources source = Claim('P144', datatype='wikibase-item') source.setTarget(ItemPage('Q5')) self.claim1.addSource(source) self.assertIn('P144', self.claim1.sources[-1]) self.assertEqual(source, self.claim1.sources[-1]['P144'][0]) self.claim1.removeSource(source) self.assertEqual(self.claim1.sources, sources_copy)