class Tests(TestCase): def setUp(self): self.pm = PositionManager() self.pm.position_type = Position def testCreateNewPosition(self): user = User() rootPosition = Position() newPosition, isFull = self.pm.createNewPosition(rootPosition, user) self.assertTrue(newPosition) self.assertEqual(rootPosition.left_guy, newPosition) def testCreateNewPositionDetectsFullMatrix(self): self.assertEqual(3, BinaryTreeLogic()._levelsOfFullMatrix, "The test assumes that the levels o fdill matrix is 3. Change test if it changes!") rootPosition = Position() newPosition, isFull = self.pm.createNewPosition(rootPosition, User()) self.assertTrue(newPosition) self.assertEqual(newPosition.sponsor, rootPosition) newPosition, isFull = self.pm.createNewPosition(rootPosition, User()) self.assertTrue(newPosition) self.assertEqual(newPosition.sponsor, rootPosition) newPosition, isFull = self.pm.createNewPosition(rootPosition, User()) self.assertTrue(newPosition) self.assertEqual(newPosition.sponsor.sponsor, rootPosition) newPosition, isFull = self.pm.createNewPosition(rootPosition, User()) self.assertTrue(newPosition) self.assertEqual(newPosition.sponsor.sponsor, rootPosition) newPosition, isFull = self.pm.createNewPosition(rootPosition, User()) self.assertFalse(isFull) self.assertTrue(newPosition) self.assertEqual(newPosition.sponsor.sponsor, rootPosition) newPosition, isFull = self.pm.createNewPosition(rootPosition, User()) self.assertTrue(isFull) self.assertTrue(newPosition) self.assertEqual(newPosition.sponsor.sponsor, rootPosition) newPosition, isFull = self.pm.createNewPosition(rootPosition, User()) self.assertTrue(newPosition) self.assertEqual(newPosition.sponsor.sponsor.sponsor, rootPosition) self.assertFalse(isFull) def createNewPositionForMaster(self): user = User() user.id = 1 rootPosition = Position() newPosition, isFull = self.pm.createNewPositionForMaster(rootPosition, user) self.assertTrue(newPosition) self.assertEqual(rootPosition.left_guy, newPosition) self.assertFalse(newPosition.sponsor) self.assertFalse(isFull)
def setUp(self): self.pm = PositionManager() self.pm.position_type = Position