def test_follow_unfollow_followers(self):
     g = NetworkGraph()
     g.set_follow('alex', 'bernard')
     g.set_follow('caroline', 'bernard')
     g.set_unfollow('alex', 'bernard')
     self.assertEqual(['caroline'],
                      sorted(list(g.get_followers('bernard'))))
 def test_follow_following(self):
     g = NetworkGraph()
     g.set_follow('alex', 'bernard')
     g.set_follow('alex', 'caroline')
     g.set_follow('alex', 'dick')
     self.assertEqual(['bernard', 'caroline', 'dick'],
                      sorted(list(g.get_following('alex'))))
 def test_follow_unfollow_followers(self):
     g = NetworkGraph()
     g.set_follow('alex', 'bernard')
     g.set_follow('caroline', 'bernard')
     g.set_unfollow('alex', 'bernard')
     self.assertEqual(['caroline'],
                      sorted(list(g.get_followers('bernard'))))
 def test_follow_following(self):
     g = NetworkGraph()
     g.set_follow('alex', 'bernard')
     g.set_follow('alex', 'caroline')
     g.set_follow('alex', 'dick')
     self.assertEqual(['bernard', 'caroline', 'dick'],
                      sorted(list(g.get_following('alex'))))
 def test_string_args(self):
     """BTree keys MUST be of same type. Check that the implementation
     enforces this."""
     g = NetworkGraph()
     self.assertRaises(AssertionError, g.set_follow, 1, '2')
     self.assertRaises(AssertionError, g.set_follow, '1', 2)
     self.assertRaises(AssertionError, g.set_unfollow, 1, '2')
     self.assertRaises(AssertionError, g.set_unfollow, '1', 2)
     self.assertRaises(AssertionError, g.get_following, 2)
     self.assertRaises(AssertionError, g.get_followers, 2)
 def test_follow_unfollow_following(self):
     g = NetworkGraph()
     g.set_follow('alex', 'bernard')
     g.set_follow('alex', 'caroline')
     g.set_unfollow('alex', 'bernard')
     self.assertEqual(['caroline'], list(g.get_following('alex')))
 def test_follow(self):
     g = NetworkGraph()
     g.set_follow('alex', 'bernard')
     self.assertEqual(['bernard'], list(g.get_following('alex')))
 def test_follow_unfollow_following(self):
     g = NetworkGraph()
     g.set_follow('alex', 'bernard')
     g.set_follow('alex', 'caroline')
     g.set_unfollow('alex', 'bernard')
     self.assertEqual(['caroline'], list(g.get_following('alex')))
 def test_follow(self):
     g = NetworkGraph()
     g.set_follow('alex', 'bernard')
     self.assertEqual(['bernard'], list(g.get_following('alex')))