コード例 #1
0
        public async void AddOrganizationAsync_ParametersWithCountryCodeThatExist_ThrowsHttpStatusCodeException()
        {
            // Arrange
            using (var unitOfWork = new EFUnitOfWork(dbOptions))
            {
                var user = unitOfWork.UserRepository.Find(x => x.Email == userEmail);
                unitOfWork.OrganizationRepository.Add(new Organization
                {
                    Name = "Unique Organization",
                    Code = "UniqueOrg",
                    Type = OrganizationType.IncorporatedCompany,
                    User = user
                });
                unitOfWork.Save();
            }
            var organizationDto = new OrganizationDto
            {
                Name = "Ununique Organization",
                Code = "UniqueOrg",
                Type = OrganizationType.LimitedLiabilityCompany.GetStringName()
            };
            var organizationService = new OrganizationService(new EFUnitOfWork(dbOptions), mapper);

            // Act and Assert
            await Assert.ThrowsAsync <HttpStatusCodeException>(() => organizationService.AddOrganizationAsync(organizationDto, userEmail));
        }
コード例 #2
0
        public async void AddOrganizationAsync_CorrectParameters_CreateNewOrganization()
        {
            // Arrange
            var organizationType = OrganizationType.LimitedPartnership;
            var organizationDto  = new OrganizationDto
            {
                Name = "Organization",
                Code = "Org",
                Type = organizationType.GetStringName()
            };
            var organizationService = new OrganizationService(new EFUnitOfWork(dbOptions), mapper);

            // Act
            await organizationService.AddOrganizationAsync(organizationDto, userEmail);

            // Assert
            using (var unitOfWork = new EFUnitOfWork(dbOptions))
            {
                var organizationRepository = unitOfWork.OrganizationRepository;
                var organization           = organizationRepository.Find(x => x.Code == organizationDto.Code);
                Assert.Equal(organizationDto.Name, organization.Name);
                Assert.Equal(organizationDto.Code, organization.Code);
                Assert.Equal(organizationType, organization.Type);
                Assert.Equal(userEmail, organization.User.Email);
            }
        }