def test_is_tagged(self): g = NetworkGraph() g.tag('user', 'bernard', 'alex', 'leadership', 'change management') self.assertTrue( g.is_tagged('user', 'bernard', 'alex', 'change management')) self.assertFalse(g.is_tagged('user', 'bernard', 'alex', 'negotiation')) self.assertFalse(g.is_tagged('content', 'doc1', 'alex', 'leadership'))
def test_is_tagged(self): g = NetworkGraph() g.tag('user', 'bernard', 'alex', 'leadership', 'change management') self.assertTrue( g.is_tagged('user', 'bernard', 'alex', 'change management')) self.assertFalse( g.is_tagged('user', 'bernard', 'alex', 'negotiation')) self.assertFalse( g.is_tagged('content', 'doc1', 'alex', 'leadership'))
def test_get_taggers(self): g = NetworkGraph() g.tag('user', 'bernard', 'alex', 'leadership', 'change management') g.tag('user', 'caroline', 'alex', 'leadership', 'negotiations') g.tag('content', 'doc1', 'alex', 'negotiations') # an extra tag here g.tag('user', 'bernard', 'caroline', 'negotiations') taggers = g.unpack(g.get_taggers('user', 'bernard', 'leadership')) self.assertEqual(taggers, ['alex'])
def test_get_tagged_nomatch(self): g = NetworkGraph() g.tag('user', 'bernard', 'alex', 'leadership', 'change management') g.tag('user', 'caroline', 'alex', 'leadership', 'negotiations') g.tag('content', 'doc1', 'alex', 'negotiations') tagged = sorted(list(g.get_tagged('user', 'bernard', 'leadership'))) self.assertEqual(tagged, [])
def test_get_tagged_nouserid(self): g = NetworkGraph() g.tag('user', 'bernard', 'alex', 'leadership', 'change management') g.tag('user', 'caroline', 'alex', 'leadership', 'negotiations') g.tag('content', 'doc1', 'alex', 'negotiations') tagged = g.get_tagged('user', None, 'leadership') self.assertEqual(tagged, {'bernard': ['alex'], 'caroline': ['alex']})
def test_get_tags_nouser(self): g = NetworkGraph() g.tag('user', 'bernard', 'alex', 'leadership', 'change management') g.tag('content', 'doc1', 'caroline', 'leadership', 'negotiations') g.tag('content', 'doc1', 'alex', 'negotiations') tags = g.unpack(g.get_tags('content', 'doc1',)) self.assertEqual(tags, {'negotiations': ['alex', 'caroline'], 'leadership': ['caroline']})
def test_get_tagged_nouserid(self): g = NetworkGraph() g.tag('user', 'bernard', 'alex', 'leadership', 'change management') g.tag('user', 'caroline', 'alex', 'leadership', 'negotiations') g.tag('content', 'doc1', 'alex', 'negotiations') tagged = g.get_tagged('user', None, 'leadership') self.assertEqual( tagged, {'bernard': ['alex'], 'caroline': ['alex']} )
def test_get_tags_nouser(self): g = NetworkGraph() g.tag('user', 'bernard', 'alex', 'leadership', 'change management') g.tag('content', 'doc1', 'caroline', 'leadership', 'negotiations') g.tag('content', 'doc1', 'alex', 'negotiations') tags = g.unpack(g.get_tags( 'content', 'doc1', )) self.assertEqual(tags, { 'negotiations': ['alex', 'caroline'], 'leadership': ['caroline'] })
def test_get_tagged_noparams(self): g = NetworkGraph() g.tag('user', 'bernard', 'alex', 'leadership', 'change management') g.tag('user', 'caroline', 'alex', 'leadership', 'negotiations') g.tag('content', 'doc1', 'alex', 'negotiations') tagged = g.get_tagged() self.assertEqual( tagged, {'alex': {'change management': {'content': [], 'user': ['bernard']}, 'leadership': {'content': [], 'user': ['bernard', 'caroline']}, 'negotiations': {'content': ['doc1'], 'user': ['caroline']}}} )
def test_get_tagged_only_user_id(self): g = NetworkGraph() g.tag('user', 'bernard', 'alex', 'leadership', 'change management') g.tag('user', 'caroline', 'alex', 'leadership', 'negotiations') g.tag('content', 'doc1', 'alex', 'negotiations') tagged = g.get_tagged(None, 'alex', None) self.assertEqual( tagged, { 'change management': { 'content': [], 'user': ['bernard'] }, 'leadership': { 'content': [], 'user': ['bernard', 'caroline'] }, 'negotiations': { 'content': ['doc1'], 'user': ['caroline'] } })
def test_user_tag_untag(self): g = NetworkGraph() g.tag('user', 'bernard', 'alex', 'leadership', 'change management') g.untag('user', 'bernard', 'alex', 'leadership') self.assertEqual(['change management'], list(g.get_tags('user', 'bernard', 'alex')))
def test_user_tag_multi(self): g = NetworkGraph() # alex tags bernard with 'leadership' and 'change management' g.tag('user', 'bernard', 'alex', 'leadership', 'change management') self.assertEqual(['change management', 'leadership'], sorted(list(g.get_tags('user', 'bernard', 'alex'))))
def test_user_tag_utf8(self): g = NetworkGraph() # alex tags bernard with 'leadership' g.tag('user', u'bernard ♥', u'alex ☀', u'leadership ☃') self.assertEqual([u'leadership ☃'], list(g.get_tags('user', u'bernard ♥', u'alex ☀')))
def test_user_tag(self): g = NetworkGraph() # alex tags bernard with 'leadership' g.tag('user', 'bernard', 'alex', 'leadership') self.assertEqual(['leadership'], list(g.get_tags('user', 'bernard', 'alex')))