public void ParsePlayersIntoTeams()
        {
            playsessions.Clear();
            ps1.BoardGame = catan;
            playsessions.Add(ps1);
            participants.Clear();
            participants.Add(par1);
            participants.Add(par2);
            players.Clear();
            players.Add(peter);
            players.Add(will);
            var playerSearch1 = new playerSearch(peter.Id, peter.Name);

            playerSearch1.Winner = true;
            playerSearch1.Team   = 1;
            List <Team> actual     = new List <Team>();
            Team        sampleTeam = new Team();

            sampleTeam.Name      = 1;
            sampleTeam.Winner    = true;
            sampleTeam.TeamMates = new List <playerSearch>();
            sampleTeam.TeamMates.Add(playerSearch1);
            List <Team> TestTeamsList = new List <Team>();

            p.ParsePlayersIntoTeams(playerSearch1, TestTeamsList);
            List <Team> sampleTeamsList = new List <Team>();

            sampleTeamsList.Add(sampleTeam);
            var Sample = new Likeness <List <Team>, List <Team> >(sampleTeamsList);

            playsessions.Clear();
            Assert.AreEqual(Sample, TestTeamsList);
        }
        public void ExtractPlaySessionsDataTest()
        {
            playsessions.Clear();
            ps1.BoardGame = catan;
            playsessions.Add(ps1);
            participants.Clear();
            participants.Add(par1);
            participants.Add(par2);
            players.Clear();
            players.Add(peter);
            players.Add(will);
            List <playerSearch> newParticipants = new List <playerSearch>();
            var playerSearch1 = new playerSearch(peter.Id, peter.Name);

            playerSearch1.Winner = true;
            playerSearch1.Team   = 1;
            var playerSearch2 = new playerSearch(will.Id, will.Name);

            playerSearch2.Winner = true;
            playerSearch2.Team   = 2;
            newParticipants.Add(playerSearch1);
            newParticipants.Add(playerSearch2);

            List <PlaySessionData> testPSD = new List <PlaySessionData>();
            var sample = new PlaySessionData(catan, newParticipants, TimeSpan.Zero, new DateTime(2017, 11, 15, 9, 30, 00).ToString());
            List <playerSearch> team1Members = new List <playerSearch>();

            team1Members.Add(playerSearch1);
            var team1 = new Team();

            team1.Name      = 1;
            team1.Name      = 1;
            team1.TeamMates = team1Members;
            team1.Winner    = true;
            sample.Teams    = new List <Team>();
            sample.Teams.Add(team1);
            List <playerSearch> team2Members = new List <playerSearch>();

            team2Members.Add(playerSearch2);
            var team2 = new Team();

            team2.Name      = 2;
            team2.TeamMates = team2Members;
            team2.Winner    = false;
            sample.Teams.Add(team2);
            testPSD.Add(sample);
            //heres the method
            List <PlaySessionData> returned = p.ExtractPlaySessionsData(playsessions, playerSearch1);

            //testPSD.ForEach(TestContext.WriteLine);
            TestContext.WriteLine(testPSD[0].BoardGame.Name.ToString());
            //returned.ForEach(TestContext.WriteLine);
            TestContext.WriteLine(returned[0].BoardGame.Name.ToString());
            var testLikeness = new Likeness <List <PlaySessionData>, List <PlaySessionData> >(testPSD);

            Assert.AreEqual(testLikeness, returned);
        }
        public void PSearchResultsTest()
        {
            //you may need to reset all values
            players.Clear();
            players.Add(peter);
            players.Add(Jen);
            players.Add(will);
            var TestUserList = new List <playerSearch>();
            var willSearch   = new playerSearch(will.Id, will.Name);

            TestUserList.Add(willSearch);
            var ActualResults = new Likeness <List <playerSearch>, List <playerSearch> >(TestUserList);

            var result = p.PSearchResults("Will Munn");

            Assert.AreEqual(ActualResults, result);
        }
        public void TwoUserResultSearchTest()
        {
            players.Clear();
            players.Add(peter);
            players.Add(Jen);
            players.Add(will);
            var TestUserList = new List <playerSearch>();
            var peterSearch  = new playerSearch(peter.Id, peter.Name);

            TestUserList.Add(peterSearch);
            var jenSearch = new playerSearch(Jen.Id, Jen.Name);

            TestUserList.Add(jenSearch);
            var ActualResults = new Likeness <List <playerSearch>, List <playerSearch> >(TestUserList);
            var result        = p.PSearchResults("Jen");

            Assert.AreEqual(ActualResults, result);
        }
        public void SearchTest(string searchString, params string[] actual)
        {
            var result       = ps.PlayerSearch(searchString) as JsonResult;
            var searchObject = result;
            var testList     = new List <playerSearch>();

            foreach (var name in actual)
            {
                foreach (var player in players)
                {
                    if (player.Name == name)
                    {
                        var actualAsSearch = new playerSearch(player.Id, player.Name);
                        testList.Add(actualAsSearch);
                    }
                }
            }
            var SerchLikeness = new Likeness <List <playerSearch>, List <playerSearch> >(testList);

            Assert.AreEqual(SerchLikeness, result.Data);
            result = null;
        }
        public void AnalyzePlayStats()
        {
            playsessions.Clear();
            ps1.BoardGame = catan;
            playsessions.Add(ps1);
            participants.Clear();
            participants.Add(par1);
            participants.Add(par2);
            players.Clear();
            players.Add(peter);
            players.Add(will);
            List <playerSearch> newParticipants = new List <playerSearch>();
            var playerSearch1 = new playerSearch(peter.Id, peter.Name);

            playerSearch1.Winner = true;
            playerSearch1.Team   = 1;
            var playerSearch2 = new playerSearch(will.Id, will.Name);

            playerSearch2.Winner = true;
            playerSearch2.Team   = 2;
            newParticipants.Add(playerSearch1);
            newParticipants.Add(playerSearch2);
            List <PlaySessionData> testPSD = new List <PlaySessionData>();
            var sample = new PlaySessionData(catan, newParticipants, TimeSpan.Zero, new DateTime(2017, 11, 15, 9, 30, 00).ToString());
            List <playerSearch> team1Members = new List <playerSearch>();

            team1Members.Add(playerSearch1);
            var team1 = new Team();

            team1.Name      = 1;
            team1.Name      = 1;
            team1.TeamMates = team1Members;
            team1.Winner    = true;
            sample.Teams    = new List <Team>();
            sample.Teams.Add(team1);
            List <playerSearch> team2Members = new List <playerSearch>();

            team2Members.Add(playerSearch2);
            var team2 = new Team();

            team2.Name      = 2;
            team2.TeamMates = team2Members;
            team2.Winner    = false;
            sample.Teams.Add(team2);
            testPSD.Add(sample);
            var         testlist  = new List <PlayerStats>();
            PlayerStats willstats = new PlayerStats(will.Id, will.Name);

            willstats.Plays = 1;
            //willstats.Wins = 1;
            willstats.OpponentWin = 1;
            testlist.Add(willstats);
            var results          = StatsCtrl.AnalyzePlayStats(testPSD, playerSearch1);
            var testlistlikeness = new Likeness <List <PlayerStats>, List <PlayerStats> >(testlist);
            //Assert.AreEqual(results.AshamedLosers, new List<PlayerStats>());
            //Assert.AreEqual(results.CourageousAllies, new List<PlayerStats>());
            //Assert.AreEqual(results.FrailAllies, new List<PlayerStats>());
            //Assert.AreEqual(results.TieGuys, new List<PlayerStats>());
            //Assert.AreEqual(results.Conqueror, new List<PlayerStats>());
            //Assert.AreEqual(results.DastardlyVillan, new List<PlayerStats>());
            //Assert.AreEqual( testlistlikeness, results.Buddies);
            //Assert.AreEqual(testlistlikeness, results.CowardlyVillan);
            //Assert.AreEqual(testlistlikeness, results.Fodder);
        }