public async Task TerminalDetailsControllerTest_TerminalSuccess() { // Arrange int lid = 589547; MockTerminalDetailsInfoRepository repository = new MockTerminalDetailsInfoRepository(); var expectedResult = repository.GetMockTerminalDetails(); ITerminalDetailsRepository mockRepo = FakeRepository(); IDistributedCache _cache = FakeCache(); IOperation fakeOperation = FakeOperation(_cache); ILoggingFacade fakeLogger = FakeLogger(); ITerminalDetailsApi dAPI = Substitute.For <ITerminalDetailsApi>(); dAPI.GetTerminalDetails(lid).ReturnsForAnyArgs(expectedResult); TerminalDetailsController controller = FakeController(dAPI, _cache, fakeOperation, fakeLogger); // Act var dinfo = await controller.GetTerminalDetails(lid); var actualRecord = ((Microsoft.AspNetCore.Mvc.ObjectResult)dinfo).Value; // Assert Assert.Equal(((Wp.CIS.LynkSystems.Model.EAndPData)actualRecord), expectedResult.Result); }
public async Task TerminalDetailsControllerTerminalTest_GetAnException() { // Arrange ITerminalDetailsRepository mockRepo = FakeRepository(); IDistributedCache _cache = FakeCache(); ILoggingFacade fakeLogger = FakeLogger(); IDistributedCache mockCache = Substitute.For <IDistributedCache>(); IStringLocalizer <TerminalDetailsController> localizer = Substitute.For <IStringLocalizer <TerminalDetailsController> >(); string key = "GenericError"; string value = "Error occured"; var localizedString = new LocalizedString(key, value); localizer[Arg.Any <string>()].ReturnsForAnyArgs(localizedString); IOperation fakeOperation = FakeOperation(_cache); IOptions <Settings> appSettings = Substitute.For <IOptions <Settings> >(); ITerminalDetailsApi dAPI = new TerminalDetailsApi(appSettings, mockRepo, null); dAPI.GetTerminalDetails(0).ThrowsForAnyArgs(new System.Exception()); TerminalDetailsController controller = FakeController(dAPI, _cache, fakeOperation, fakeLogger); // Act var dinfo = await controller.GetTerminalDetails(0); var actualRecord = ((Microsoft.AspNetCore.Mvc.ObjectResult)dinfo); // Assert Assert.Equal(actualRecord.StatusCode, 500); Assert.Equal(actualRecord.Value, "Error occured"); }
public void TerminalDetailsControllerTest_ModelState_Invalid() { //Arrange int lid = 589547; MockTerminalDetailsInfoRepository repository = new MockTerminalDetailsInfoRepository(); var expectedResult = repository.GetMockTerminalDetails(); ITerminalDetailsRepository mockRepo = FakeRepository(); IDistributedCache _cache = FakeCache(); IOperation fakeOperation = FakeOperation(_cache); ILoggingFacade fakeLogger = FakeLogger(); ITerminalDetailsApi dAPI = Substitute.For <ITerminalDetailsApi>(); dAPI.GetTerminalDetails(lid).ReturnsForAnyArgs(expectedResult); TerminalDetailsController controller = FakeController(dAPI, _cache, fakeOperation, fakeLogger); //Act controller.ModelState.AddModelError("key", "error message"); var dinfo = controller.GetTerminalDetails(lid).Result; //Assert Assert.Equal(((Microsoft.AspNetCore.Mvc.ObjectResult)dinfo).StatusCode.ToString(), "400"); }