Пример #1
0
        public async Task <ActionResult <string> > Post([FromBody] CreateCompanyRequest request)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var companyToCreate = Mapper.Map <Company>(request);

            companyToCreate.Owner = new User {
                UserName = request.OwnerName
            };

            return(new JsonResult(
                       Mapper.Map <CompanyViewModel>(
                           await CompanyService.CreateCompanyAsync(companyToCreate))));
        }
Пример #2
0
        public async Task CreateCompanyAsync_withInvalidCompany_ShouldFails()
        {
            //arrange
            var mockRepo = new Mock <ICompanyRepository>();

            mockRepo.Setup(x => x.CreateCompanyAsync(null)).Throws <InvalidOperationException>();
            var service = new CompanyService(mockRepo.Object);

            //Act
            try
            {
                var result = await service.CreateCompanyAsync(null);

                Assert.IsTrue(result);
            }
            catch (Exception ex)
            {
                Assert.AreEqual("Invalid Company data", ex.Message);
            }
        }
Пример #3
0
        public async Task CreateCompanyAsync_WithValidCompany_ShouldSucceed()
        {
            //arrange
            var mockRepo = new Mock <ICompanyRepository>();
            var company  = new Company
            {
                ID      = 1,
                Name    = "Company A",
                Address = "29 good news street"
            };

            mockRepo.Setup(x => x.CreateCompanyAsync(It.IsAny <Company>())).Returns(Task.FromResult <bool>(true));
            var service = new CompanyService(mockRepo.Object);
            //Act
            var result = await service.CreateCompanyAsync(company);

            //Assert
            Assert.IsTrue(result, "Company Created Successfully");
            mockRepo.Verify(repo => repo.CreateCompanyAsync(company), Times.Once);
        }
Пример #4
0
        public async Task <IActionResult> Create(CompanyModel company)
        {
            var newCompany = await CompanyService.CreateCompanyAsync(company.Name, company.Slug);

            return(Ok(new { CompanyId = newCompany.Id }));
        }