예제 #1
0
        public async Task UpdateCompanyAsync_ValidUpdate_ShouldReturnUpdatedCompany()
        {
            // Arrange
            await this.fixture.ClearFactroInstanceAsync();

            var companyApi = this.fixture.GetService <ICompanyApi>();

            var existingCompany = await this.fixture.CreateTestCompanyAsync(companyApi);

            var updatedName          = $"{BaseTestFixture.TestPrefix}{Guid.NewGuid().ToString()}";
            var updateCompanyRequest = new UpdateCompanyRequest
            {
                Name = updatedName,
            };

            var updateCompanyResponse = new UpdateCompanyResponse();

            // Act
            Func <Task> act = async() => updateCompanyResponse = await companyApi.UpdateCompanyAsync(existingCompany.Id, updateCompanyRequest);

            // Assert
            await act.Should().NotThrowAsync();

            using (new AssertionScope())
            {
                var companies = (await companyApi.GetCompaniesAsync())
                                .Where(x => x.Name.StartsWith(BaseTestFixture.TestPrefix)).ToList();

                companies.Should().ContainEquivalentOf(updateCompanyResponse);

                companies.Single(x => x.Id == existingCompany.Id).Name.Should().Be(updatedName);
            }

            await this.fixture.ClearFactroInstanceAsync();
        }
예제 #2
0
        public HttpResponseMessage PutCompany(CompanyViewModel viewModel)
        {
            UpdateCompanyResponse response = contactService.UpdateCompany(new UpdateCompanyRequest()
            {
                CompanyViewModel = viewModel,
                AccountId        = this.AccountId,
                RequestedBy      = this.UserId,
                RoleId           = this.RoleId
            });

            return(Request.BuildResponse(response));
        }
예제 #3
0
    private string UpdateCompany()
    {
        string msg = "";
        ServiceManager sm = new ServiceManager();
        using (LP2ServiceClient service = sm.StartServiceClient())
        {
            UpdateCompanyRequest req = new UpdateCompanyRequest();
            req.hdr = new ReqHdr();
            req.hdr.SecurityToken = "SecurityToken"; //todo:check dummy data
            if (CurrUser != null)
            {
                req.hdr.UserId = this.CurrUser.iUserID;
            }

            UpdateCompanyResponse respone = null;
            try
            {
                respone = service.UpdateCompany(req);

                if (respone.hdr.Successful)
                {
                    msg = "Saved successfully.";
                    return msg;
                }
                else
                {
                    if (respone.hdr.StatusInfo == "")
                        respone.hdr.StatusInfo = " Marketing Manager is not running.";
                    msg = "Failed to update company, reason:" + respone.hdr.StatusInfo;
                    return msg;
                }
            }
            catch (System.ServiceModel.EndpointNotFoundException ee)
            {
                LPLog.LogMessage(ee.Message);
                msg = "Failed to update copmany , reason: Marketing Manager is not running.";
                return msg;
            }
            catch (Exception exception)
            {
                LPLog.LogMessage(exception.Message);
                msg = "Failed to update company, reason:" + exception.Message;
                return msg;
            }
        }

    }
예제 #4
0
        public Task Handle(UpdateCompanyRequest message, IMessageHandlerContext context)
        {
            log.Info("Received UpdateCompanyRequest");
            using (var unitOfWork = new CarUnitOfWork(new CarApiContext(_dbContextOptionsBuilder.Options)))
            {
                unitOfWork.Companies.Update(message.Company);
                unitOfWork.Complete();
            }
            var response = new UpdateCompanyResponse()
            {
                DataId  = Guid.NewGuid(),
                Company = message.Company
            };

            var reply = context.Reply(response);

            return(reply);
        }
예제 #5
0
        public async Task UpdateCompanyAsync_ValidRequest_ShouldReturnUpdatedCompany()
        {
            // Arrange
            var existingCompany = new GetCompanyPayload
            {
                Id   = Guid.NewGuid().ToString(),
                Name = "TestName",
            };

            var updateCompanyRequest = new UpdateCompanyRequest
            {
                Name = "NewName",
            };

            var expectedUpdatedCompany = new UpdateCompanyResponse
            {
                Id   = existingCompany.Id,
                Name = updateCompanyRequest.Name,
            };

            var expectedResponseContent = new StringContent(JsonConvert.SerializeObject(expectedUpdatedCompany, this.fixture.JsonSerializerSettings));

            var expectedResponse = new HttpResponseMessage
            {
                Content = expectedResponseContent,
            };

            var companyApi = this.fixture.GetCompanyApi(expectedResponse);

            var updateCompanyResponse = new UpdateCompanyResponse();

            // Act
            Func <Task> act = async() =>
                              updateCompanyResponse = await companyApi.UpdateCompanyAsync(existingCompany.Id, updateCompanyRequest);

            // Assert
            await act.Should().NotThrowAsync();

            using (new AssertionScope())
            {
                updateCompanyResponse.Id.Should().Be(existingCompany.Id);
                updateCompanyResponse.Name.Should().Be(expectedUpdatedCompany.Name);
            }
        }