public void PlayerSupervisorsFactoryTest() { var player = new Arbiter.ConfigurationSvc.PlayerData() { }; var team = new TeamMembership { Players = new List <Arbiter.ConfigurationSvc.PlayerData> { player }, }; var membership = new GameMembership { Teams = new List <TeamMembership> { team } }; membershipManager.Setup(m => m.GetMembership()).Returns(membership); var client = new GameProvider(membershipManager.Object, timingManager.Object, statusMessageLogger.Object); var spv = client.SupervisorFactory(membership); Assert.That(spv, Is.Not.Null, "Collection of returned supervisors is null"); Assert.That(spv, Is.Not.Empty, "Collection of returned supervisors is empty"); Assert.That(spv.Count(), Is.EqualTo(1), "Collection of supervisors contains more than 1 supervisor"); var supervisor = spv.ToArray()[0]; }
private async void JoinTeam() { TeamMembership team = await _dataService.JoinTeamAsync(this.TeamCode); _settingsService.MyTeamId = team.Id; _settingsService.MyTeamName = team.Name; await _navigationService.NavigateToViewModelAsync <RaceSelectionViewModel>(); }
private void Validate(TeamMembership teamMembership) { Assert.IsNotNull(teamMembership); Assert.IsNotNull(teamMembership.Id); Assert.IsNotNull(teamMembership.PersonId); Assert.IsNotNull(teamMembership.PersonEmail); Assert.IsNotNull(teamMembership.TeamId); Assert.IsNotNull(teamMembership.PersonDisplayName); Assert.IsNotNull(teamMembership.IsModerator); }
public void StartWithOneTeam() { var gametimings = new GameTimings(); var datetimenow = DateTime.Now.AddDays(10); gametimings.GameStartDate = datetimenow; timingManager.Setup(p => p.GetGameTimings()).Returns(gametimings); var player = new Arbiter.ConfigurationSvc.PlayerData() { Name = "Player", MachineId = 1, Width = 10, Length = 10, MarkerPositionX = 2, MarkerPositionY = 3, Marker = new Color { r = 100, g = 100, b = 100 } }; var team = new TeamMembership { TeamName = "Team1", TeamId = 10, PlayerCount = 1, Players = new List <Arbiter.ConfigurationSvc.PlayerData> { player }, ControlCenterCount = 0, ControlCenters = new List <Arbiter.ConfigurationSvc.ControllCenterData>(), GateId = 0 }; var membership = new GameMembership { TeamCount = 1, Teams = new List <TeamMembership> { team } }; membershipManager.Setup(m => m.GetMembership()).Returns(membership); var client = new GameProvider(membershipManager.Object, timingManager.Object, statusMessageLogger.Object); client.StartGame(); statusMessageLogger.Verify(m => m.ShowStatusMessage(It.IsAny <string>())); timingManager.Verify(t => t.GetGameTimings()); membershipManager.Verify(m => m.GetMembership()); client.EndGame(); statusMessageLogger.Verify(m => m.ShowStatusMessage(It.IsAny <string>())); }
public override void Execute(RemoveUserFromTeamCommand command, ICommandAndQueryDispatcher dispatcher) { Team team = dispatcher.ExecuteQuery(new GetTeamByIdQuery(command.TeamId)); if (CurrentUserIsAllowedToRemoveTargetUser(command, team)) { TeamMembership membership = team.Members.SingleOrDefault(m => m.User.Id == command.UserId); if (membership != null) { team.Members.Remove(membership); } db.SaveChanges(); } }
public override void Execute(UpdateMembershipStatusCommand command, ICommandAndQueryDispatcher dispatcher) { var getTeamQuery = new GetTeamByIdQuery(command.TeamId); Team team = dispatcher.ExecuteQuery(getTeamQuery); if (!team.Owner.IsCurrentUser()) { throw new InvalidOperationException("Only the owner of the team can update the membership status"); } TeamMembership teamMembership = team.Members.Single(m => m.User.Id == command.UserIdToUpdate); teamMembership.Status = command.NewStatus; db.SaveChanges(); }
public void Handle(TeamJoinedEvent domainEvent) { LogToConsole(domainEvent); dynamic eventData = JsonConvert.DeserializeObject(domainEvent.JsonPayload); var query = new GetUserQuery((Guid)eventData.UserId); dynamic user = JsonConvert.DeserializeObject(_bus.PublishQuery(query)); var newMembership = new TeamMembership { Id = Guid.NewGuid(), Approved = false, TeamId = domainEvent.AggregateId, UserId = (Guid)eventData.UserId, UserName = (string)user.UserName }; _teamMembershipRepository.Add(newMembership); }
public bool Update(TeamMembership entity) { return(_teamMembershipRepository.Update(entity)); }
public void When_a_request_is_called_User_Is_Removed_From_Record_Team() { var context = new XrmFakedContext(); var teamTemplate = new TeamTemplate { Id = Guid.NewGuid(), DefaultAccessRightsMask = (int)AccessRights.ReadAccess }; var team = new Team { Id = Guid.NewGuid(), TeamTemplateId = teamTemplate.ToEntityReference() }; var user = new SystemUser { Id = Guid.NewGuid() }; var teamMembership = new TeamMembership { Id = Guid.NewGuid(), ["systemuserid"] = user.Id, ["teamid"] = team.Id }; var account = new Account { Id = Guid.NewGuid() }; context.Initialize(new Entity[] { teamTemplate, team, teamMembership, user, account }); var executor = new RemoveUserFromRecordTeamRequestExecutor(); var req = new RemoveUserFromRecordTeamRequest { Record = account.ToEntityReference(), SystemUserId = user.Id, TeamTemplateId = teamTemplate.Id }; context.AccessRightsRepository.GrantAccessTo(account.ToEntityReference(), new PrincipalAccess { Principal = user.ToEntityReference(), AccessMask = AccessRights.ReadAccess }); executor.Execute(req, context); var retrievedTeamMembership = context.CreateQuery <TeamMembership>().FirstOrDefault(p => p.SystemUserId == user.Id && p.TeamId == team.Id); Assert.Null(retrievedTeamMembership); var response = context.AccessRightsRepository.RetrievePrincipalAccess(account.ToEntityReference(), user.ToEntityReference()); Assert.Equal(AccessRights.None, response.AccessRights); }