public void FindOneAList()
        {
            // arrange
            _steamIdentityService.Upsert(SteamIdentity()).GetAwaiter().GetResult();
            // act
            var steamIdentity = _steamIdentityService.FindAList(new List <string> {
                SteamIdentity().Id
            }).GetAwaiter()
                                .GetResult();

            // assert
            steamIdentity.Should().NotBeEmpty(null);
            steamIdentity.FirstOrDefault()?.Name.Should().Be("test");
        }
        public async Task <IActionResult> PartialViewPerGameMode(string gameMode, Match match, bool shack)
        {
            var user = await _userservice.getUserFromCp(HttpContext.User);

            var servers = await _matchService.FindAllMatchesWhereTheUserHasRights(HttpContext.User, user);

            if (match.Id != 0 && !servers.Select(x => x.Id).Contains(match.Id))
            {
                return(Forbid());
            }
            var selectedSteamIdentitiesRaw =
                (await _matchSelectedSteamIdentitiesService.FindAllSelectedForMatch(match.Id)).ToList();
            var selectedTeam0SteamIdentitiesRaw =
                (await _matchSelectedTeamSteamIdentitiesService.FindAllSelectedForMatchAndTeam(match.Id, 0)).ToList();
            var selectedTeam1SteamIdentitiesRaw =
                (await _matchSelectedTeamSteamIdentitiesService.FindAllSelectedForMatchAndTeam(match.Id, 1)).ToList();

            var Teams = (await _teamService.FindAll()).ToList();


            var steamIdentities = new List <SteamIdentity>();

            if (shack)
            {
                steamIdentities = (await _steamIdentityService.FindAll()).Where(x => !string.IsNullOrEmpty(x.OculusId)).ToList();
            }
            else
            {
                steamIdentities = (await _steamIdentityService.FindAll()).ToList();
            }
            var selectedSteamIdentities =
                (await _steamIdentityService.FindAList(selectedSteamIdentitiesRaw.Select(x => x.SteamIdentityId)
                                                       .ToList())).ToList();
            var selectedTeam0SteamIdentities =
                (await _steamIdentityService.FindAList(selectedTeam0SteamIdentitiesRaw.Select(x => x.SteamIdentityId)
                                                       .ToList())).ToList();
            var selectedTeam1SteamIdentities =
                (await _steamIdentityService.FindAList(selectedTeam1SteamIdentitiesRaw.Select(x => x.SteamIdentityId)
                                                       .ToList())).ToList();

            foreach (var selectedSteamIdentity in selectedSteamIdentities)
            {
                steamIdentities.Remove(steamIdentities.FirstOrDefault(x => x.Id == selectedSteamIdentity.Id));
            }
            var gotAnswer = GameModes.HasTeams.TryGetValue(gameMode, out var hasTeams);
            var idUsed    = "Id";

            if (shack)
            {
                idUsed = "OculusId";
            }
            if (gotAnswer)
            {
                if (hasTeams)
                {
                    var gotAnswer2 = GameModes.OneTeam.TryGetValue(gameMode, out var oneTeam);
                    if (gotAnswer2)
                    {
                        if (oneTeam)
                        {
                            return(PartialView("SteamIdentityPartialView", new SteamIdentityMatchViewModel
                            {
                                SelectedSteamIdentities = selectedSteamIdentities,
                                AllSteamIdentities = steamIdentities,
                                IdUsed = idUsed
                            }));
                        }
                        return(PartialView("TeamPartailView", new SteamIdentityMatchTeamViewModel
                        {
                            selectedTeam0 = match.Team0?.Id,
                            selectedTeam1 = match.Team1?.Id,
                            AvailableTeams = Teams,
                            SelectedSteamIdentitiesTeam0 = selectedTeam0SteamIdentities,
                            SelectedSteamIdentitiesTeam1 = selectedTeam1SteamIdentities,
                            IdUsed = idUsed
                        }));
                    }

                    BadRequest("internal error!");
                }
                else
                {
                    return(PartialView("SteamIdentityPartialView", new SteamIdentityMatchViewModel
                    {
                        SelectedSteamIdentities = selectedSteamIdentities,
                        AllSteamIdentities = steamIdentities
                    }));
                }
            }
            else
            {
                return(BadRequest("There is no gameMode like that!"));
            }

            return(BadRequest("There is no gameMode like that!"));
        }