public async Task PostDeveloper_CorrectDeveloperWithCorrectValuesAndZeroIdSetted_CreatedAtActionResultWithGeneratedId() { // Arrange const int idToSet = 0; InitializeInmemoryDatabase(out DbContextOptions <GameReviewsContext> options, GetFakeList()); Developer developerToCreate = new Developer() { Name = "NewDevelope", Website = "NewWebsite", ID = idToSet }; // Act using (var context = new GameReviewsContext(options)) { DevelopersController developersController = new DevelopersController(context); var result = (await developersController.PostDeveloper(developerToCreate)).Result; // Assert Assert.True(developerToCreate.ID != idToSet); Assert.IsType <CreatedAtActionResult>(result); } }
public async Task ShouldReturnOkBothServices() { IOptions <AppSettingsModel> settings = Options.Create(TestHelper.GetApplicationConfiguration()); var httpClientFactoryMock = await TestHelper.GetMockHttpClientFactoryAsync(settings); var dataSource = new JSONDataSource(settings); var genericService = new GenericService(dataSource); var developersService = new DevelopersService(dataSource, httpClientFactoryMock, settings); var controller = new DevelopersController(genericService, developersService); var data = await controller.GetAllAsync(); Assert.NotEmpty(data); data = await controller.GetSkilledAsync(); Assert.NotEmpty(data); foreach (var dev in data) { Assert.True(dev.Skills.Count() >= 1); Assert.Contains(dev.Skills, s => s.Level >= 8); Assert.True(dev.Skills.Select(s => s.Type).Distinct().Count() == 1); } }
public async Task PutDeveloper_ExistingIdCorrectDeveloperWithWebsiteChanged_NoContentResult() { // Arrange const int developerId = 3; InitializeInmemoryDatabase(out DbContextOptions <GameReviewsContext> options, GetFakeList()); Developer developerToUpdate = GetFakeList().Where(d => d.ID == developerId).FirstOrDefault(), // Should use ICopyable interface here expectedDeveloper = GetFakeList().Where(d => d.ID == developerId).FirstOrDefault(); // Act using (var context = new GameReviewsContext(options)) { developerToUpdate.Website = "newWebsite"; expectedDeveloper.Website = "newWebsite"; DevelopersController developersController = new DevelopersController(context); var result = (await developersController.PutDeveloper(developerId, developerToUpdate)); Developer actualDeveloper = await context.Developers.Where(d => d.ID == developerId).FirstOrDefaultAsync(); // Assert Assert.True(AreEqual(expectedDeveloper, actualDeveloper)); Assert.IsType <NoContentResult>(result); } }
public void Setup() { _developersRepoMock = new Mock <IDevelopersRepository>(); _controller = new DevelopersController(_developersRepoMock.Object); _listOfDirectoryBindingModels = new List <DeveloperDirectoryBindingModel> { new DeveloperDirectoryBindingModel { EmailAddress = "*****@*****.**", CategoryId = 1, GithubId = "http://github.com/@malso", Name = "Daniel Smith", TwitterHandle = "http://twitter.com/@pas" }, new DeveloperDirectoryBindingModel { EmailAddress = "*****@*****.**", CategoryId = 2, GithubId = "http://github.com/@malso", Name = "Felix Adas", TwitterHandle = "http://twitter.com/@pas" }, new DeveloperDirectoryBindingModel { EmailAddress = "*****@*****.**", CategoryId = 1, GithubId = "http://github.com/ioasmalso", Name = "Samuel Jones", TwitterHandle = "http://twitter.com/aspas" } }; }
public IntegrationTestsDevelopers() { var options = new DbContextOptionsBuilder <GameDatabaseDbContext>() .UseSqlServer("Server=(localdb)\\MSSQLLocalDB;Database=GameDatabase;Trusted_Connection=True;MultipleActiveResultSets=true") .EnableSensitiveDataLogging() .Options; developersController = new DevelopersController(new GameDatabaseDbContext(options: options), new DeveloperService(new BusinessLogicDevelopers(new DeveloperRepository(new GameDatabaseDbContext(options: options))))); }
public void DeleteTest() { // Arrange DevelopersController controller = new DevelopersController(); // Act var result = controller.Delete(0); // Assert Assert.IsNotNull(result); }
public void EditTest1() { // Arrange DevelopersController controller = new DevelopersController(); // Act var result = controller.Edit(1); // Assert Assert.IsNotNull(result); }
public void CreateTest1() { // Arrange DevelopersController controller = new DevelopersController(); // Act var result = controller.Create(); // Assert Assert.IsNotNull(result); }
public void IndexTest() { // Arrange DevelopersController controller = new DevelopersController(); // Act var result = controller.Index(); // Assert Assert.IsNotNull(result); }
public async Task GetDeveloper_NonexistentZeroId_NotFoundResult() { // Arrange const int developerId = 0; InitializeInmemoryDatabase(out DbContextOptions <GameReviewsContext> options, GetFakeList()); // Act using (var context = new GameReviewsContext(options)) { DevelopersController developersController = new DevelopersController(context); var result = (await developersController.GetDeveloper(developerId)).Result; // Assert Assert.IsType <NotFoundResult>(result); } }
public async Task DeleteDeveloper_NegativeId_NotFoundResult() { // Arrange const int developerIdToDelete = -10; InitializeInmemoryDatabase(out DbContextOptions <GameReviewsContext> options, GetFakeList()); Developer expectedDeveloper = GetFakeList().Where(d => d.ID == developerIdToDelete).FirstOrDefault(); // Act using (var context = new GameReviewsContext(options)) { DevelopersController developersController = new DevelopersController(context); var actionResult = (await developersController.DeleteDeveloper(developerIdToDelete)); var result = actionResult.Result; // Assert Assert.IsType <NotFoundResult>(result); } }
public async Task GetDeveloper_ExistingId_TaskActionResultContainsDeveloper() { // Arrange const int developerId = 3; Developer expectedDeveloper = GetFakeList().Where(d => d.ID == developerId).FirstOrDefault(); InitializeInmemoryDatabase(out DbContextOptions <GameReviewsContext> options, GetFakeList()); // Act using (var context = new GameReviewsContext(options)) { DevelopersController developersController = new DevelopersController(context); var actionResult = (await developersController.GetDeveloper(developerId)); Developer developer = actionResult.Value; ActionResult result = actionResult.Result; // Assert Assert.True(AreEqual(expectedDeveloper, developer)); Assert.IsNotType <NotFoundResult>(result); } }
public async Task PostDeveloper_CorrectDeveloperWithCorrectValuesAndIdNotSet_CreatedAtActionResult() { // Arrange InitializeInmemoryDatabase(out DbContextOptions <GameReviewsContext> options, GetFakeList()); Developer developerToCreate = new Developer() { Name = "NewDevelope", Website = "NewWebsite" }; // Act using (var context = new GameReviewsContext(options)) { DevelopersController developersController = new DevelopersController(context); var result = (await developersController.PostDeveloper(developerToCreate)).Result; // Assert Assert.True(context.Developers.Contains(developerToCreate)); Assert.IsType <CreatedAtActionResult>(result); } }
public async Task GetDevelopers_Void_TaskActionResultContainsIEnumerableOfDeveloper() { // Arrange List <Developer> expectedData = GetFakeList(); InitializeInmemoryDatabase(out DbContextOptions <GameReviewsContext> options, GetFakeList()); // Act using (var context = new GameReviewsContext(options)) { DevelopersController developersController = new DevelopersController(context); IEnumerable <Developer> developers = (await developersController.GetDevelopers()).Value; // Assert Assert.Equal(expectedData.Count, developers.Count()); for (int i = 0; i < expectedData.Count; ++i) { Assert.True(AreEqual(expectedData[i], developers.ElementAt(i))); } } }
public async Task PutDeveloper_ExistingIdCorrectDeveloperWithIdChangedNegative_BadRequestResult() { // Arrange const int developerId = 3, idChanged = -1; InitializeInmemoryDatabase(out DbContextOptions <GameReviewsContext> options, GetFakeList()); Developer developerToUpdate = GetFakeList().Where(d => d.ID == developerId).FirstOrDefault(); // Act using (var context = new GameReviewsContext(options)) { developerToUpdate.ID = idChanged; DevelopersController developersController = new DevelopersController(context); var result = (await developersController.PutDeveloper(developerId, developerToUpdate)); Developer actualDeveloper = await context.Developers.Where(d => d.ID == developerId).FirstOrDefaultAsync(); // Assert Assert.IsType <BadRequestResult>(result); } }
public async Task PostDeveloper_CorrectDeveloperWithCorrectValuesAndNegativeIdSetted_BadRequestResult() { // Arrange const int idToSet = -1; InitializeInmemoryDatabase(out DbContextOptions <GameReviewsContext> options, GetFakeList()); Developer developerToCreate = new Developer() { Name = "NewDevelope", Website = "NewWebsite", ID = idToSet }; // Act using (var context = new GameReviewsContext(options)) { DevelopersController developersController = new DevelopersController(context); var result = (await developersController.PostDeveloper(developerToCreate)).Result; // Assert Assert.IsType <BadRequestResult>(result); } }