public void ChangesScoreOnUpdateScore_WhenGameExists() { var team1 = new TeamVo { TeamId = 1, TeamName = "Spain" }; var team2 = new TeamVo { TeamId = 2, TeamName = "Italy" }; var game = new GameVo { GameId = 1.ToGuid(), HomeTeamId = team1.TeamId, AwayTeamId = team2.TeamId, AwayTeamScore = 0, HomeTeamScore = 0, Started = _now }; _gameStorage.CreateGame(game); _tested.UpdateScore(game.GameId, 2, 3); var changedGame = _gameStorage.GetGames().FirstOrDefault(_ => _.GameId == game.GameId); changedGame.HomeTeamScore.Should().Be(2); changedGame.AwayTeamScore.Should().Be(3); }
public void DeleteGameOnFinishGame() { var team1 = new TeamVo { TeamId = 1, TeamName = "Spain" }; var team2 = new TeamVo { TeamId = 2, TeamName = "Italy" }; var game = new GameVo { GameId = 1.ToGuid(), HomeTeamId = team1.TeamId, AwayTeamId = team2.TeamId, AwayTeamScore = 0, HomeTeamScore = 0, Started = _now }; _gameStorage.CreateGame(game); _tested.FinishGame(game.GameId); var finishedGame = _gameStorage.GetGames().FirstOrDefault(_ => _.GameId == game.GameId); finishedGame.Should().BeNull(); }
public void ReturnsTeamScoreOnGetTeamScore() { var team1 = new TeamVo { TeamId = 0, TeamName = "Spain" }; var team2 = new TeamVo { TeamId = 1, TeamName = "Italy" }; var game1 = new GameVo { GameId = 1.ToGuid(), HomeTeamId = team1.TeamId, AwayTeamId = team2.TeamId, AwayTeamScore = 0, HomeTeamScore = 3, Started = _now }; _teamStorage.CreateTeam(team1); _teamStorage.CreateTeam(team2); var game = _gameStorage.CreateGame(game1); var teamScore = _tested.GetTeamScore(team1.TeamName); teamScore.Should().Be(game1.HomeTeamScore); }
public TeamVo CreateTeam(TeamVo team) { var teamId = this._scopeIdentity++; team.TeamId = teamId; _teams.Add(team); return(team); }
public void ReturnsGamesSummary_WhenGamesExists() { var team1 = new TeamVo { TeamId = 1, TeamName = "Spain" }; var team2 = new TeamVo { TeamId = 2, TeamName = "Italy" }; var team3 = new TeamVo { TeamId = 3, TeamName = "France" }; var game1 = new GameVo { GameId = 1.ToGuid(), HomeTeamId = team1.TeamId, AwayTeamId = team2.TeamId, AwayTeamScore = 0, HomeTeamScore = 0, Started = _now }; var game2 = new GameVo { GameId = 2.ToGuid(), HomeTeamId = team2.TeamId, AwayTeamId = team3.TeamId, AwayTeamScore = 0, HomeTeamScore = 0, Started = _now }; var game3 = new GameVo { GameId = 3.ToGuid(), HomeTeamId = team3.TeamId, AwayTeamId = team1.TeamId, AwayTeamScore = 0, HomeTeamScore = 0, Started = _now }; _gameStorage.CreateGame(game1); _gameStorage.CreateGame(game2); _gameStorage.CreateGame(game3); var gamesSummary = _tested.GetSummaryByAddedDate().ToList(); gamesSummary.Count.Should().Be(3); }
public void ReturnsTeamOnCreateTeam() { var newTeam = new TeamVo() { TeamName = "Italy" }; var result = this._tested.CreateTeam(newTeam); result.Should().NotBeNull(); }
public void ReturnsNullOnUpdateTeam_WhenTeamNotExists() { var team = new TeamVo() { TeamId = 1, TeamName = "Italy" }; var result = this._tested.UpdateTeam(team); result.Should().Be(null); }
public GameVo StartGame(TeamVo homeTeam, TeamVo awayTeam) { var game = new GameVo { HomeTeamId = homeTeam.TeamId, AwayTeamId = awayTeam.TeamId, AwayTeamScore = 0, HomeTeamScore = 0, Started = new DateTime() }; return(_gameStorage.CreateGame(game)); }
public void ReturnsTeamOnGetTeamById() { var newTeam = new TeamVo() { TeamName = "Italy" }; var team = this._tested.CreateTeam(newTeam); var resultTeam = this._tested.GetTeamById(team.TeamId); resultTeam.Should().Be(team); }
public void ReturnsTrueOnDeleteTeam() { var newTeam = new TeamVo() { TeamName = "Italy" }; var createdTeam = this._tested.CreateTeam(newTeam); var result = this._tested.DeleteTeam(createdTeam.TeamId); result.Should().BeTrue(); }
public TeamVo UpdateTeam(TeamVo team) { var existedTeam = _teams.FirstOrDefault(_ => _.TeamId == team.TeamId); if (existedTeam == null) { return(null); } existedTeam.TeamName = team.TeamName; return(existedTeam); }
public void ReturnsChangedOnUpdateTeam() { var newTeam = new TeamVo() { TeamName = "Italy" }; var team = this._tested.CreateTeam(newTeam); team.TeamName = "Italy2"; var result = this._tested.UpdateTeam(team); result.TeamName.Should().Be("Italy2"); }
public void ReturnsGameOnStartGame() { var team1 = new TeamVo { TeamId = 1, TeamName = "Spain" }; var team2 = new TeamVo { TeamId = 2, TeamName = "Italy" }; var game = _tested.StartGame(team1, team2); game.HomeTeamId.Should().Be(team1.TeamId); game.AwayTeamId.Should().Be(team2.TeamId); game.HomeTeamScore.Should().Be(0); game.AwayTeamScore.Should().Be(0); }
public void ReturnsExceptionOnGetTeamScore_WhenGameNotFound() { var team1 = new TeamVo { TeamId = 0, TeamName = "Spain" }; var team2 = new TeamVo { TeamId = 1, TeamName = "Italy" }; _teamStorage.CreateTeam(team1); _teamStorage.CreateTeam(team2); Func <int> getTeamSCore = () => _tested.GetTeamScore("Spain"); getTeamSCore.Should().Throw <KeyNotFoundException>(); }
public void ReturnsTeamsOnGetTeams() { var newTeam1 = new TeamVo() { TeamName = "Italy" }; var newTeam2 = new TeamVo() { TeamName = "France" }; var team1 = this._tested.CreateTeam(newTeam1); var team2 = this._tested.CreateTeam(newTeam2); var expectedTeams = new List <TeamVo> { team1, team2 }; var resultTeams = this._tested.GetTeams(); resultTeams.Should().BeEquivalentTo(expectedTeams); }
public static void Main(string[] args) { var teamItaly = new TeamVo() { TeamName = "Italy" }; var teamFrance = new TeamVo() { TeamName = "France" }; var teamSpain = new TeamVo() { TeamName = "Spain" }; var teamBrazil = new TeamVo() { TeamName = "Brazil" }; var teamsToCreate = new List <TeamVo> { teamItaly, teamFrance, teamSpain, teamBrazil }; var teamStorage = new TeamStorage(); var gameStorage = new GameStorage(); var newScoreBoard = new ScoreBoard(teamStorage, gameStorage); foreach (var team in teamsToCreate) { teamStorage.CreateTeam(team); } var teams = teamStorage.GetTeams(); var game1 = newScoreBoard.StartGame(teams[0], teams[1]); var game2 = newScoreBoard.StartGame(teams[1], teams[2]); var game3 = newScoreBoard.StartGame(teams[2], teams[3]); newScoreBoard.UpdateScore(game1.GameId, 1, 1); newScoreBoard.UpdateScore(game2.GameId, 2, 0); newScoreBoard.UpdateScore(game3.GameId, 3, 4); var summaryResult = newScoreBoard.GetSummaryByAddedDate(); Console.WriteLine("Summary results"); foreach (var summary in summaryResult) { Console.WriteLine(summary); } newScoreBoard.FinishGame(game1.GameId); newScoreBoard.FinishGame(game3.GameId); summaryResult = newScoreBoard.GetSummaryByAddedDate(); Console.WriteLine("Summary results 2"); foreach (var summary in summaryResult) { Console.WriteLine(summary); } Console.ReadLine(); }