public void Index_Success() { string json = @"[{""name"":""Bob"",""gender"":""Male"",""age"":23,""pets"":[{""name"":""Garfield"",""type"":""Cat""},{""name"":""Fido"",""type"":""Dog""}]},{""name"":""Jennifer"",""gender"":""Female"",""age"":18,""pets"":[{""name"":""Garfield"",""type"":""Cat""}]},{""name"":""Steve"",""gender"":""Male"",""age"":45,""pets"":null},{""name"":""Fred"",""gender"":""Male"",""age"":40,""pets"":[{""name"":""Tom"",""type"":""Cat""},{""name"":""Max"",""type"":""Cat""},{""name"":""Sam"",""type"":""Dog""},{""name"":""Jim"",""type"":""Cat""}]},{""name"":""Samantha"",""gender"":""Female"",""age"":40,""pets"":[{""name"":""Tabby"",""type"":""Cat""}]},{""name"":""Alice"",""gender"":""Female"",""age"":64,""pets"":[{""name"":""Simba"",""type"":""Cat""},{""name"":""Nemo"",""type"":""Fish""}]}]"; List <Person> people = JsonConvert.DeserializeObject <List <Person> >(json); var service = new Mock <IPersonService>() { CallBase = false }; service.Setup(s => s.GetPeople()).Returns(people); var controller = new CatsController(service.Object); ActionResult result = controller.Index(); ViewResult vResult = result as ViewResult; IEnumerable <CatViewModel> model = vResult.Model as IEnumerable <CatViewModel>; Assert.IsInstanceOfType(result, typeof(ViewResult)); Assert.IsInstanceOfType(vResult.Model, typeof(IEnumerable <CatViewModel>)); Assert.AreEqual(model.Count(), 2); Assert.AreEqual(model.ElementAt(0).CatNames.Count(), 4); Assert.AreEqual(model.ElementAt(1).CatNames.ElementAt(1), "Simba"); Assert.AreEqual(model.ElementAt(1).Gender, "Female"); }
public void Given_NullParameter_Constructor_ShouldThrow_ArgumentNullException() { // Act Action action = () => { var catsController = new CatsController(null, null, null, null, null); }; // Assert action.Should().Throw <ArgumentNullException>(); }
public async Task ControllerWithDbContextTest() { // Assert var data = await GetData(); var controller = new CatsController(data); // Act var result = await controller.Get("TestCat"); // Assert Assert.Single("TestCat", result.Value.FirstOrDefault()?.Name); }
public void Index() { // Arrange CatsController controller = new CatsController(); // Act NewtonJsonResult result = controller.GetAllCats() as NewtonJsonResult; // Assert Assert.IsNotNull(result); Assert.IsNotNull(result.Model); Assert.AreEqual(HttpStatusCode.OK, result.StatusCode); }
public async Task ShouldReturnListOfCatsByOwnersGender() { // arrange var personLogic = new Mock <IPersonLogic>(); var catLogic = new Mock <ICatLogic>(); var personDao = new Mock <IPersonDao>(); var configuration = new Mock <IConfiguration>(); var catsController = new CatsController(personLogic.Object, catLogic.Object); personLogic.Setup(p => p.GetPeople()).Returns(Task.FromResult(peopleList)); personDao.Setup(p => p.GetPeople()).Returns(Task.FromResult(peopleList)); catLogic.Setup(p => p.GetCatsByOwnerGender(peopleList)).Returns(catsList); var cats = await catsController.GetCats(); // assert Assert.AreEqual(catsList, ((OkObjectResult)cats.Result).Value); }
public async Task Test1() { var optionsBuilder = new DbContextOptionsBuilder <MeowtownContext>(); optionsBuilder.UseInMemoryDatabase("Cats"); var dbContext = new MeowtownContext(optionsBuilder.Options); var controller = new CatsController(dbContext); var cat = new CatInputModel() { Name = "Piet" }; var result = await controller.PostCat(cat); var createdAtActionResult = result.Result as CreatedAtActionResult; var resultCat = createdAtActionResult.Value as Cat; Assert.AreEqual(cat.Name, resultCat.Name); }
public async Task ShouldReturnNotFoundWhenThereAreNoPeople() { // arrange var personLogic = new Mock <IPersonLogic>(); var catLogic = new Mock <ICatLogic>(); var personDao = new Mock <IPersonDao>(); var configuration = new Mock <IConfiguration>(); var catsController = new CatsController(personLogic.Object, catLogic.Object); IEnumerable <Person> emptyPerson = new List <Person>(); IEnumerable <CatsByOwnerGender> emptyCats = new List <CatsByOwnerGender>(); personLogic.Setup(p => p.GetPeople()).Returns(Task.FromResult(emptyPerson)); personDao.Setup(p => p.GetPeople()).Returns(Task.FromResult(emptyPerson)); catLogic.Setup(p => p.GetCatsByOwnerGender(peopleList)).Returns(emptyCats); var cats = await catsController.GetCats(); // assert Assert.AreEqual(404, ((NotFoundResult)cats.Result).StatusCode); }