public async Task PatchWiki400TestAsync(string wikiURL) { string dbString = Guid.NewGuid().ToString(); //ARRANGE using var context = InMemoryDbContextFactory.GetViewzDbContext(dbString); IMdToHtmlAndContentsFactory factory = new MdToHtmlAndContentsFactory(); var wrepo = new WikiRepositoryStoring(context, factory); var prepo = new PageRepositoryStoring(context, factory); var wiki_controller = new WikiController(wrepo, prepo, w_logger); var WIKI = await context.Wiki.Where(w => w.Url == wikiURL).SingleOrDefaultAsync(); //ACT var status = await wiki_controller.PatchAsync(wikiURL, new ViewzApi.Models.Wiki()); if (WIKI != null) { //ASSERT Assert.IsType <BadRequestObjectResult>(status); } else { //ASSERT Assert.IsType <BadRequestObjectResult>(status); } }
public async Task PatchWiki204TestAsync(string wikiURL) { string dbString = Guid.NewGuid().ToString(); //ARRANGE using var context = InMemoryDbContextFactory.GetViewzDbContext(dbString); IMdToHtmlAndContentsFactory factory = new MdToHtmlAndContentsFactory(); var wrepo = new WikiRepositoryStoring(context, factory); var prepo = new PageRepositoryStoring(context, factory); var wiki_controller = new WikiController(wrepo, prepo, w_logger); var wiki = new ViewzApi.Models.Wiki() { PageName = "I'm Hungry", Description = "This is a description" }; var WIKI = await context.Wiki.Where(w => w.Url == wikiURL).SingleOrDefaultAsync(); //ACT var status = await wiki_controller.PatchAsync(wikiURL, wiki); if (WIKI != null) { //ASSERT Assert.IsType <NoContentResult>(status); } else { Assert.IsType <NotFoundResult>(status); } }
public async Task PostWikiTestAsync(string wikiURL) { string dbString = Guid.NewGuid().ToString(); //ARRANGE using var context = InMemoryDbContextFactory.GetViewzDbContext(dbString); IMdToHtmlAndContentsFactory factory = new MdToHtmlAndContentsFactory(); var prepo = new PageRepositoryStoring(context, factory); var wrepo = new WikiRepositoryStoring(context, factory); var wiki_controller = new WikiController(wrepo, prepo, w_logger); var wiki = await context.Wiki.Where(w => w.Url == wikiURL).SingleOrDefaultAsync(); var content = new PageHtmlContent(); var W = new ViewzApi.Models.Wiki() { Url = wikiURL, Description = "", PageName = wikiURL }; var status = await wiki_controller.PostAsync(wikiURL, W); if (wiki == null) { //ASSERT Assert.IsType <CreatedAtActionResult>(status); } else { Assert.IsType <ConflictObjectResult>(status); } }
public async Task GetWikiTestAsync(string wikiURL) { string dbString = Guid.NewGuid().ToString(); //ARRANGE using var context = InMemoryDbContextFactory.GetViewzDbContext(dbString); IMdToHtmlAndContentsFactory factory = new MdToHtmlAndContentsFactory(); var wrepo = new WikiRepositoryStoring(context, factory); var prepo = new PageRepositoryStoring(context, factory); var wiki_controller = new WikiController(wrepo, prepo, w_logger); var wiki = await context.Wiki.Where(w => w.Url == wikiURL).SingleOrDefaultAsync(); //ACT var status = await wiki_controller.GetAsync(wikiURL); if (wiki != null) { //ASSERT - status 200 (OK) Assert.IsType <OkObjectResult>(status); } else { //ASSERT - status 404 (OK) Assert.IsType <NotFoundResult>(status); } }
public async Task GetPopWiki200TestAsync() { //ARRANGE string dbString = Guid.NewGuid().ToString(); //ARRANGE using var context = InMemoryDbContextFactory.GetViewzDbContext(dbString); IMdToHtmlAndContentsFactory factory = new MdToHtmlAndContentsFactory(); var prepo = new PageRepositoryStoring(context, factory); var wrepo = new WikiRepositoryStoring(context, factory); var wiki_controller = new WikiController(wrepo, prepo, w_logger); var status = await wiki_controller.GetAsync(5); //ACT //ASSERT Assert.IsType <OkObjectResult>(status); }
public async Task WikiGetWikiMDTestAsync(string wikiURL) { string dbString = Guid.NewGuid().ToString(); //ARRANGE using var context = InMemoryDbContextFactory.GetViewzDbContext(dbString); IMdToHtmlAndContentsFactory factory = new MdToHtmlAndContentsFactory(); var wrepo = new WikiRepositoryStoring(context, factory); var wiki = await context.Wiki.Where(w => w.Url == wikiURL).SingleOrDefaultAsync(); if (wiki != null) { await wrepo.GetWikiWithMDAsync(wikiURL); } else { await Assert.ThrowsAsync <WikiNotFoundException>(() => wrepo.GetWikiWithMDAsync(wikiURL)); } }