def test_limit_2_one_user(self): a = User() infection = LimitedInfection() infected_classrooms = infection.limited_infection(a, 2) self.assertEqual(infected_classrooms.infected, set([a]))
def test_limit_1_two_users_chain(self): a = User() b = User() a.add_coaches(b) infection = LimitedInfection() infected_classrooms = infection.limited_infection(a, 1) self.assertEqual(infected_classrooms.infected, set([a]))
def test_limit_2_two_users_cyclical(self): a = User() b = User() a.add_coaches(b) b.add_coaches(a) infection = LimitedInfection() infected_classrooms = infection.limited_infection(a, 2) self.assertEqual(infected_classrooms.infected, set([a, b]))
def test_limit_1_three_users_hierarchical(self): a = User() b = User() c = User() a.add_coaches(b) a.add_coaches(c) infection = LimitedInfection() infected_classrooms = infection.limited_infection(a, 1) self.assertEqual(infected_classrooms.infected, set([a]))
def test_limit_3_three_users_chain(self): a = User() b = User() c = User() a.add_coaches(b) b.add_coaches(c) infection = LimitedInfection() infected_classrooms = infection.limited_infection(a, 3) self.assertEqual(infected_classrooms.infected, set([a, b, c]))
def test_multiple_classrooms(self): a = User() b = User() c = User() d = User() e = User() a.add_coaches(b) a.add_coaches(c) d.add_coaches(e) infection = LimitedInfection() infected_classrooms = infection.limited_infection(b, 2) self.assertEqual(infected_classrooms.infected, set([b, a]))