public void FindEntityAsync_EntityNotFoundInDataStore_ThrowsObjectNotFoundException() { // Arrange var repository = new TeamSeasonRepository(); var dbContext = A.Fake <ProFootballEntities>(); var teamName = "Team"; var seasonID = 2017; TeamSeason teamSeason = null; A.CallTo(() => dbContext.TeamSeasons.FindAsync(A <string> .Ignored, A <int> .Ignored)).Returns(teamSeason); // Act TeamSeason result = null; Assert.ThrowsAsync <ObjectNotFoundException>(async() => { result = await repository.FindEntityAsync(dbContext, teamName, seasonID); }); // Assert A.CallTo(() => dbContext.TeamSeasons.FindAsync(teamName, seasonID)).MustHaveHappenedOnceExactly(); Assert.IsNull(result); }
public void AddTeamSeasons() { // Arrange var repository = new TeamSeasonRepository(); var dbContext = A.Fake <ProFootballEntities>(); var teamSeasons = new List <TeamSeason>(); for (int i = 1; i <= 3; i++) { var teamSeason = new TeamSeason { TeamName = "Team " + i, SeasonID = 2017 }; teamSeasons.Add(teamSeason); } A.CallTo(() => dbContext.TeamSeasons.AddRange(A <IEnumerable <TeamSeason> > .Ignored)).Returns(teamSeasons); // Act var result = repository.AddEntities(dbContext, teamSeasons); // Assert A.CallTo(() => dbContext.TeamSeasons.AddRange(teamSeasons)).MustHaveHappenedOnceExactly(); Assert.AreSame(teamSeasons, result); }
//[TestCase] public void TestCase1() { // Arrange var repository = new TeamSeasonRepository(); // Act // Assert }
public void GetEntities_HappyPath() { // Arrange var dbContext = A.Fake <ProFootballEntities>(); var repository = new TeamSeasonRepository(dbContext); // Act var result = repository.GetEntities(); // Assert Assert.IsInstanceOf <IEnumerable <TeamSeason> >(result); }
public void EditTeamSeason_ExceptionCaught_LogsAndRethrowsException() { // Arrange var dbContext = A.Fake <ProFootballEntities>(); var repository = new TeamSeasonRepository(dbContext); var teamSeason = new TeamSeason(); A.CallTo(() => dbContext.SetModified(A <TeamSeason> .Ignored)).Throws <Exception>(); // Act & Assert Assert.Throws <Exception>(() => repository.EditEntity(teamSeason)); }
public void EditTeamSeason_HappyPath() { // Arrange var dbContext = A.Fake <ProFootballEntities>(); var repository = new TeamSeasonRepository(dbContext); var teamSeason = new TeamSeason(); // Act repository.EditEntity(teamSeason); // Assert A.CallTo(() => dbContext.SetModified(teamSeason)).MustHaveHappenedOnceExactly(); }
public async Task GetEntitiesAsync() { // Arrange var repository = new TeamSeasonRepository(); var dbContext = A.Fake <ProFootballEntities>(); dbContext.SetUpFakeTeamSeasonsAsync(); // Act var result = await repository.GetEntitiesAsync(dbContext); // Assert Assert.IsInstanceOf <IEnumerable <TeamSeason> >(result); }
public void CreateTeamSeason_HappyPath() { // Arrange var dbContext = A.Fake <ProFootballEntities>(); var repository = new TeamSeasonRepository(dbContext); A.CallTo(() => dbContext.TeamSeasons.Create()).Returns(new TeamSeason()); // Act var result = repository.CreateEntity(); // Assert A.CallTo(() => dbContext.TeamSeasons.Create()).MustHaveHappenedOnceExactly(); Assert.IsInstanceOf <TeamSeason>(result); }
//[TestCase] public void TestCase1() { // Arrange var dbContext = A.Fake <ProFootballEntities>(); var repository = new TeamSeasonRepository(dbContext); // TODO: Define argument variables of method under test. // TODO: Set up needed infrastructure of class under test. // Act // TODO: Call method under test. // Assert // TODO: Assert results of call to method under test. }
public void GetEntities_ExceptionCaught_LogsAndRethrowsException() { // Arrange var dbContext = A.Fake <ProFootballEntities>(); var repository = new TeamSeasonRepository(dbContext); A.CallTo(() => dbContext.TeamSeasons).Throws <Exception>(); // Act IEnumerable <TeamSeason> result = null; Assert.Throws <Exception>(() => result = repository.GetEntities()); // Assert Assert.IsNull(result); }
public void CreateTeamSeason_ExceptionCaught_LogsAndRethrowsException() { // Arrange var dbContext = A.Fake <ProFootballEntities>(); var repository = new TeamSeasonRepository(dbContext); A.CallTo(() => dbContext.TeamSeasons.Create()).Throws <Exception>(); // Act TeamSeason result = null; Assert.Throws <Exception>(() => result = repository.CreateEntity()); // Assert Assert.IsNull(result); }
public void RemoveTeamSeason_HappyPath() { // Arrange var dbContext = A.Fake <ProFootballEntities>(); var repository = new TeamSeasonRepository(dbContext); var teamSeason = new TeamSeason(); A.CallTo(() => dbContext.TeamSeasons.Remove(A <TeamSeason> .Ignored)).Returns(teamSeason); // Act var result = repository.RemoveEntity(teamSeason); // Assert A.CallTo(() => dbContext.TeamSeasons.Remove(teamSeason)).MustHaveHappenedOnceExactly(); Assert.AreSame(teamSeason, result); }
public void AddTeamSeasons_HappyPath() { // Arrange var dbContext = A.Fake <ProFootballEntities>(); var repository = new TeamSeasonRepository(dbContext); var teamSeasons = new List <TeamSeason>(); A.CallTo(() => dbContext.TeamSeasons.AddRange(A <IEnumerable <TeamSeason> > .Ignored)).Returns(teamSeasons); // Act var result = repository.AddEntities(teamSeasons); // Assert A.CallTo(() => dbContext.TeamSeasons.AddRange(teamSeasons)).MustHaveHappenedOnceExactly(); Assert.AreSame(teamSeasons, result); }
public void AddTeamSeasons_ExceptionCaught_LogsAndRethrowsException() { // Arrange var dbContext = A.Fake <ProFootballEntities>(); var repository = new TeamSeasonRepository(dbContext); var teamSeasons = new List <TeamSeason>(); A.CallTo(() => dbContext.TeamSeasons.AddRange(A <IEnumerable <TeamSeason> > .Ignored)).Throws <Exception>(); // Act IEnumerable <TeamSeason> result = null; Assert.Throws <Exception>(() => result = repository.AddEntities(teamSeasons)); // Assert Assert.IsNull(result); }
public void FindEntity_InvalidOperationExceptionCaught_ThrowsObjectNotFoundException() { // Arrange var dbContext = A.Fake <ProFootballEntities>(); var repository = new TeamSeasonRepository(dbContext); var teamName = "Team"; var seasonID = 2017; A.CallTo(() => dbContext.TeamSeasons.Find(A <string> .Ignored, A <int> .Ignored)).Throws <InvalidOperationException>(); // Act TeamSeason result = null; Assert.Throws <ObjectNotFoundException>(() => { result = repository.FindEntity(teamName, seasonID); }); // Assert Assert.IsNull(result); }
public void FindEntity_GenericExceptionCaught_LogsAndRethrowsException() { // Arrange var dbContext = A.Fake <ProFootballEntities>(); var repository = new TeamSeasonRepository(dbContext); var teamName = "Team"; var seasonID = 2017; A.CallTo(() => dbContext.TeamSeasons.Find(A <string> .Ignored, A <int> .Ignored)).Throws <Exception>(); // Act TeamSeason result = null; Assert.Throws <Exception>(() => result = repository.FindEntity(teamName, seasonID)); // Assert Assert.IsNull(result); }
public void FindEntity_HappyPath() { // Arrange var dbContext = A.Fake <ProFootballEntities>(); var repository = new TeamSeasonRepository(dbContext); var teamName = "Team"; var seasonID = 2017; var teamSeason = new TeamSeason(); A.CallTo(() => dbContext.TeamSeasons.Find(A <string> .Ignored, A <int> .Ignored)).Returns(teamSeason); // Act var result = repository.FindEntity(teamName, seasonID); // Assert A.CallTo(() => dbContext.TeamSeasons.Find(teamName, seasonID)).MustHaveHappenedOnceExactly(); Assert.AreSame(teamSeason, result); }
public async Task FindEntityAsync_EntityFoundInDataStore_ReturnsEntity() { // Arrange var repository = new TeamSeasonRepository(); var dbContext = A.Fake <ProFootballEntities>(); var teamName = "Team"; var seasonID = 2017; TeamSeason teamSeason = new TeamSeason(); A.CallTo(() => dbContext.TeamSeasons.FindAsync(A <string> .Ignored, A <int> .Ignored)).Returns(teamSeason); // Act var result = await repository.FindEntityAsync(dbContext, teamName, seasonID); // Assert A.CallTo(() => dbContext.TeamSeasons.FindAsync(teamName, seasonID)).MustHaveHappenedOnceExactly(); Assert.AreSame(teamSeason, result); }
public void EditTeamSeason() { // Arrange var repository = new TeamSeasonRepository(); var dbContext = A.Fake <ProFootballEntities>(); A.CallTo(() => dbContext.SetModified(A <TeamSeason> .Ignored)).DoesNothing(); var teamSeason = new TeamSeason { TeamName = "Team", SeasonID = 2017 }; // Act repository.EditEntity(dbContext, teamSeason); // Assert A.CallTo(() => dbContext.SetModified(teamSeason)).MustHaveHappenedOnceExactly(); }
public void AddTeamSeason() { // Arrange var repository = new TeamSeasonRepository(); var dbContext = A.Fake <ProFootballEntities>(); var teamSeason = new TeamSeason { TeamName = "Team", SeasonID = 2017 }; A.CallTo(() => dbContext.TeamSeasons.Add(A <TeamSeason> .Ignored)).Returns(teamSeason); // Act var result = repository.AddEntity(dbContext, teamSeason); // Assert A.CallTo(() => dbContext.TeamSeasons.Add(teamSeason)).MustHaveHappenedOnceExactly(); Assert.AreSame(teamSeason, result); }