= A test which reproduces bug 249185 = Create some teams. >>> person = factory.makePerson() >>> beta_testers = factory.makeTeam(person) >>> devs = factory.makeTeam(person) >>> adjutants = factory.makeTeam(person) >>> login_person(person) >>> dev1 = factory.makePerson() >>> ignored = devs.addMember(dev1, person) Beta testers has lp-devs and adjutants as members. >>> ignored = beta_testers.addMember(devs, person, force_team_add=True) >>> ignored = beta_testers.addMember( ... adjutants, person, force_team_add=True) >>> dev1.hasParticipationEntryFor(beta_testers) True Adjutants has lp-devs as member. >>> ignored = adjutants.addMember(devs, person, force_team_add=True) >>> dev1.hasParticipationEntryFor(adjutants) True Members of lp-devs are not direct members in beta-testers but are participants. >>> dev1 in beta_testers.activemembers False >>> dev1.hasParticipationEntryFor(beta_testers) True >>> from lp.registry.interfaces.teammembership import ( ... TeamMembershipStatus) >>> adjutants.setMembershipData( ... devs, TeamMembershipStatus.DEACTIVATED, person) lp-devs has left adjutants, so its members are not participants of adjutants anymore. >>> dev1.hasParticipationEntryFor(adjutants) False They should still be participants in beta-testers, though. >>> dev1.hasParticipationEntryFor(beta_testers) True