public async void TestForCreateTeamArticle() { var options = new DbContextOptionsBuilder <NewsContext>() .UseInMemoryDatabase(databaseName: "p3NewsService") .Options; using (var context = new NewsContext(options)) { context.Database.EnsureDeleted(); context.Database.EnsureCreated(); Repo r = new Repo(context, new NullLogger <Repo>()); Logic logic = new Logic(r, new NullLogger <Repo>()); NewsController newsController = new NewsController(logic); var teamArticleDto = new TeamArticleDto() { ArticleID = Guid.NewGuid(), Title = "free hotdogs", Content = "come today to get your hotdogs!", Date = DateTime.Now, IsPinned = true, IsVisible = true, TeamID = Guid.NewGuid() }; await newsController.CreateTeamArticle(teamArticleDto); Assert.NotNull(context.LeagueArticles); } }
/// <summary> /// returns a list of teat articles that are pinned /// </summary> /// <returns></returns> public async Task <IEnumerable <TeamArticleDto> > GetPinnedTeamArticleDto(string token) { List <TeamArticle> pinnedTeamArticles = (List <TeamArticle>) await _repo.GetPinnedTeamArticles(); List <TeamArticleDto> dtos = new List <TeamArticleDto>(); using (var httpClient = new HttpClient()) { httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token); foreach (var item in pinnedTeamArticles) { var response = await httpClient.GetAsync($"api/Team/{item.TeamID}"); string apiResponse = await response.Content.ReadAsStringAsync(); var team = JsonConvert.DeserializeObject <TeamDto>(apiResponse); TeamArticleDto newDto = new TeamArticleDto(); newDto.ArticleID = item.ArticleID; newDto.Title = item.Title; newDto.Content = item.Body; newDto.Date = item.Date; newDto.TeamID = item.TeamID; newDto.Team = team; newDto.IsVisible = item.IsVisible; newDto.IsPinned = item.IsPinned; dtos.Add(newDto); } } return(dtos); }
/// <summary> /// Edits a teamArticle from the in coming teamArticleDto /// </summary> /// <param name="teamArticleDto"></param> /// <returns></returns> public async Task EditTeamArticle(TeamArticleDto teamArticleDto) { TeamArticle articleToEdit = await _repo.GetTeamArticleById(teamArticleDto.ArticleID); articleToEdit.Title = teamArticleDto.Title; articleToEdit.Body = teamArticleDto.Content; articleToEdit.Date = teamArticleDto.Date; articleToEdit.TeamID = teamArticleDto.TeamID; articleToEdit.IsVisible = teamArticleDto.IsVisible; _repo.TeamArticles.Update(articleToEdit); await _repo.CommitSave(); }
/// <summary> /// creates a teamArticle from the in coming teamArticleDto /// </summary> /// <param name="teamArticleDto"></param> /// <returns></returns> public async Task CreateTeamArticle(TeamArticleDto teamArticleDto) { TeamArticle newArticle = new TeamArticle(); newArticle.Title = teamArticleDto.Title; newArticle.Body = teamArticleDto.Content; newArticle.Date = teamArticleDto.Date; newArticle.TeamID = teamArticleDto.TeamID; newArticle.IsPinned = teamArticleDto.IsPinned; _repo.TeamArticles.Add(newArticle); await _repo.CommitSave(); }
public async void TestForEditTeamArticle() { var options = new DbContextOptionsBuilder <NewsContext>() .UseInMemoryDatabase(databaseName: "p3NewsService") .Options; using (var context = new NewsContext(options)) { context.Database.EnsureDeleted(); context.Database.EnsureCreated(); Repo r = new Repo(context, new NullLogger <Repo>()); Logic logic = new Logic(r, new NullLogger <Repo>()); NewsController newsController = new NewsController(logic); var teamArticle = new TeamArticle() { ArticleID = Guid.NewGuid(), Title = "free hotdogs", Body = "come today to get your hotdogs!", Date = DateTime.Now, IsPinned = true, IsVisible = true, TeamID = Guid.NewGuid() }; r.TeamArticles.Add(teamArticle); await r.CommitSave(); var teamArticleDto = new TeamArticleDto() { ArticleID = teamArticle.ArticleID, Title = "free hamburgers", Content = "come today to get your hamburgers!", Date = teamArticle.Date, IsPinned = teamArticle.IsPinned, IsVisible = teamArticle.IsVisible, TeamID = teamArticle.TeamID }; await newsController.EditTeamArticle(teamArticleDto); var editedTeamArticle = await context.TeamArticles.FindAsync(teamArticle.ArticleID); Assert.True(editedTeamArticle.Title == "free hamburgers"); } }
public void ValidateTeamArticleDto() { var teamDto = new TeamDto { TeamID = Guid.NewGuid(), Name = "cubs" }; var teamArticleDto = new TeamArticleDto { ArticleID = Guid.NewGuid(), TeamID = Guid.NewGuid(), Title = "Start of season", Content = "Let's win them all!", Team = teamDto, Date = DateTime.Now, IsVisible = true, IsPinned = true }; var results = ValidateModel(teamArticleDto); Assert.True(results.Count == 0); }
public async Task EditTeamArticle(TeamArticleDto teamArticleDto) { await _logic.EditTeamArticle(teamArticleDto); }
public async Task CreateTeamArticle(TeamArticleDto teamArticleDto) { await _logic.CreateTeamArticle(teamArticleDto); }