Ejemplo n.º 1
0
        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");
        }
Ejemplo n.º 2
0
        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);
        }
Ejemplo n.º 3
0
        public void TerminalDetailsInfoApiTest_TerminalDetailsException()
        {
            // Arrange
            int CustomerID = 191809;

            IOptions <Settings>        optionsAccessor  = Substitute.For <IOptions <Settings> >();
            ITerminalDetailsRepository mockRepo         = Substitute.For <ITerminalDetailsRepository>();
            ITerminalDetailsApi        dashboardInfoApi = Substitute.For <ITerminalDetailsApi>();

            mockRepo.GetTerminalDetails(CustomerID).ThrowsForAnyArgs(new Exception());
            dashboardInfoApi = new TerminalDetailsApi(optionsAccessor, mockRepo, null);


            // Assert
            Assert.Throws <Exception>(() => dashboardInfoApi.GetTerminalDetails(CustomerID));
        }
Ejemplo n.º 4
0
        //Would be revisiting to modify the actual way of call method.
        public void TerminalDetailsInfoTest_TerminalSuccess()
        {
            // Arrange
            int lid = 191809;

            MockTerminalDetailsInfoRepository repository = new MockTerminalDetailsInfoRepository();
            var expectedResult = repository.GetMockTerminalDetails();
            IOptions <DataContext>     optionsAccessor   = Substitute.For <IOptions <DataContext> >();
            IDatabaseConnectionFactory connectionFactory = Substitute.For <IDatabaseConnectionFactory>();
            ITerminalDetailsRepository mockRepo          = Substitute.For <ITerminalDetailsRepository>();

            mockRepo.GetTerminalDetails(lid).ReturnsForAnyArgs(expectedResult.Result);

            // Act
            var actualRecord = mockRepo.GetTerminalDetails(lid).Result;

            // Assert

            Assert.Equal(actualRecord, expectedResult.Result);
        }
Ejemplo n.º 5
0
        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");
        }
Ejemplo n.º 6
0
        public void TerminalDetailsInfoApiTest_TerminalDetailsSuccess()
        {
            // Arrange
            int lid = 589547;
            MockTerminalDetailsInfoRepository repository = new MockTerminalDetailsInfoRepository();

            ITerminalDetailsRepository mockRepo = Substitute.For <ITerminalDetailsRepository>();
            ITerminalDetailsSettlementInfoRepository mockSettlementRepo = Substitute.For <ITerminalDetailsSettlementInfoRepository>();
            ITerminalDetailsApi api         = Substitute.For <ITerminalDetailsApi>();
            IOptions <Settings> appSettings = Substitute.For <IOptions <Settings> >();

            var expectedResult           = repository.GetMockTerminalDetails().Result;
            var expectedSettlementResult = repository.GetMockTerminalSettlementInfo().Result;

            mockRepo.GetTerminalDetails(lid).ReturnsForAnyArgs(expectedResult);
            mockSettlementRepo.GetTerminalSettlementInfo(lid).ReturnsForAnyArgs(expectedSettlementResult);
            api = new TerminalDetailsApi(appSettings, mockRepo, mockSettlementRepo);

            // Act
            var actualRecord = (api.GetTerminalDetails(lid).Result);

            // Assert
            Assert.Equal((actualRecord), expectedResult);
        }
Ejemplo n.º 7
0
 public TerminalDetailsApi(IOptions <Settings> optionsAccessor, ITerminalDetailsRepository terminalDetailsRepository, ITerminalDetailsSettlementInfoRepository terminalDetailsSettlementInfoRepository)
 {
     _terminalDetailsRepository = terminalDetailsRepository;
     _terminalDetailsSettlementInfoRepository = terminalDetailsSettlementInfoRepository;
 }