public async Task TestReportResultOk(int actualMinutes, int expectedMinutes, int result)
        {
            var unimicroAdapter = A.Fake <IExternalSystemAdapter>();

            A.CallTo(() => unimicroAdapter.GetHourBalance(A <int> .Ignored, A <int> .Ignored))
            .Returns(new domain.HourBalance {
                ActualMinutes = actualMinutes, ExpectedMinutes = expectedMinutes
            });

            var externalSystemFactory = A.Fake <IExternalSystemFactory>();

            A.CallTo(() => externalSystemFactory.CreateSystemAdapter(A <domain.ExternalEconomySystem> .Ignored))
            .Returns(unimicroAdapter);


            var timeRegService = new TimeRegServiceBuilder()
                                 .WithExternalSystemFactory(externalSystemFactory)
                                 .WithIntegrationService(_integrationService)
                                 .WithCurrentUserContext(new StaticUserContext(new UserContext {
                UserId = 18
            }))
                                 .Build();

            var Controller = new ReportController(timeRegService, Mapper);

            // act
            var response = await Controller.GetHourBalance(1, 1337);

            var okObjectResult = response.Result as OkObjectResult;

            contracts.HourBalance hourBalance = (contracts.HourBalance)okObjectResult.Value;

            // Assert
            Assert.NotNull(Controller);
            Assert.NotNull(hourBalance);
            Assert.AreEqual(result, hourBalance.HourBalanceInHours);
            Assert.IsInstanceOf(typeof(contracts.HourBalance), hourBalance);
        }