public async Task RegisterAmigoTenanttServiceAsync_SendCommand_To_Bus_SendAsync()
        {
            DateTime       baseTime   = new DateTime(2017, 01, 11, 7, 0, 0);
            DateTimeOffset sourceTime = new DateTimeOffset(baseTime, TimeZoneInfo.Local.GetUtcOffset(baseTime));

            var request = new AmigoTenantTEventLogDTO()
            {
                ActivityCode = "001", ReportedActivityTimeZone = "America/New_York", ReportedActivityDate = sourceTime
            };
            var command = new RegisterAmigoTenanttEventLogCommand();

            var model = activityTypeApplicationService.SearchActivityByCodeAsync(request.ActivityCode).Result.ActivityTypeId;

            DateTimeZone tz = DateTimeZoneProviders.Tzdb.GetZoneOrNull(request.ReportedActivityTimeZone);


            A.CallTo(() => _mapper.Map <AmigoTenantTEventLogDTO, RegisterAmigoTenanttEventLogCommand>(request)).Returns(command);

            //**********   ACT   **********
            var resp = amigoTenantTEventLogApplicationService.RegisterAmigoTenantTEventLogAsync(request);

            //**********   ASSERT    **********
            A.CallTo(() => _bus.SendAsync(command)).WithAnyArguments().MustHaveHappened(Repeated.Exactly.Once);
            Assert.NotNull(resp);
        }
コード例 #2
0
        public async Task Call_BusinessEvent_PublishAsync_AmigoTenantTEventLog()
        {
            AmigoTenantTEventLog dataItem = null;
            var message      = new RegisterAmigoTenanttEventLogCommand();
            var eventcommand = new AmigoTenantTEventLog();

            A.CallTo(() => _mapper.Map <RegisterAmigoTenanttEventLogCommand, AmigoTenantTEventLog>(message)).Returns(eventcommand);
            A.CallTo(() => _repository.Add(null)).WithAnyArguments().Invokes((f) => dataItem            = f.Arguments.FirstOrDefault() as AmigoTenantTEventLog);
            A.CallTo(() => _unitOfWork.CommitAsync()).Invokes(() => eventcommand.AmigoTenantTEventLogId = 1).ReturnsLazily(() => Task.FromResult(0));

            //**********   ACT   **********
            await _commandHandler.Handle(message);

            //**********   ASSERT    **********
            //A.CallTo(() => _bus.PublishAsync(eventcommand)).WithAnyArguments().MustHaveHappened(Repeated.Exactly.Once);
            Assert.NotNull(eventcommand);
        }
コード例 #3
0
        public async Task Call_UnitOfWork_RegisterAmigoTenantTEventLog_CommandHandler()
        {
            var message = new RegisterAmigoTenanttEventLogCommand();
            var command = new AmigoTenantTEventLog();

            A.CallTo(() => _mapper.Map <RegisterAmigoTenanttEventLogCommand, AmigoTenantTEventLog>(message)).Returns(command);

            AmigoTenantTEventLog dataItem = null;

            A.CallTo(() => _repository.Add(null)).WithAnyArguments().Invokes((f) => dataItem = f.Arguments.FirstOrDefault() as AmigoTenantTEventLog);


            //**********   ACT   **********
            await _commandHandler.Handle(message);

            //**********   ASSERT    **********
            A.CallTo(() => _unitOfWork.CommitAsync()).MustHaveHappened(Repeated.Exactly.Once);
            Assert.NotNull(dataItem);
        }