Beispiel #1
0
        public async Task When_Create_NullPrincipal_Should_Fail()
        {
            Thread.CurrentPrincipal = null;

            var dto = new LocationBaseDto
            {
                Name           = "New Location",
                LocationTypeId = _mockContext.Object.LocationTypes.Single(x => x.I18NKeyName == "Distribution").Id
            };

            var commandResult = await _facade.Create(dto);

            Assert.That(commandResult.StatusCode, Is.EqualTo(FacadeStatusCode.Unauthorized));
        }
Beispiel #2
0
        public async Task When_Create_NoLocationTypeId_Should_Fail()
        {
            var dto = new LocationBaseDto
            {
                Name = "New Location"
            };

            var commandResult = await _facade.Create(dto);

            Assert.That(commandResult.StatusCode, Is.EqualTo(FacadeStatusCode.BadRequest));
            Assert.That(commandResult.GeneratedId, Is.EqualTo(Guid.Empty));
            Assert.That(commandResult.ErrorCodes.Count, Is.EqualTo(1));
            Assert.That(commandResult.ErrorCodes[0].Code, Is.EqualTo(ValidationErrorCode.PropertyRequired("LocationTypeId").Code));
            Assert.That(commandResult.ErrorCodes[0].Description, Is.EqualTo(ValidationErrorCode.PropertyRequired("LocationTypeId").Description));
        }
Beispiel #3
0
        public async Task When_Create_LocationTypeIdNoExist_Should_Fail()
        {
            var dto = new LocationBaseDto
            {
                Name           = "New Location",
                LocationTypeId = Guid.NewGuid()
            };

            var commandResult = await _facade.Create(dto);

            Assert.That(commandResult.StatusCode, Is.EqualTo(FacadeStatusCode.BadRequest));
            Assert.That(commandResult.GeneratedId, Is.EqualTo(Guid.Empty));
            Assert.That(commandResult.ErrorCodes.Count, Is.EqualTo(1));
            Assert.That(commandResult.ErrorCodes[0].Code, Is.EqualTo(ValidationErrorCode.ForeignKeyValueDoesNotExist("LocationTypeId").Code));
            Assert.That(commandResult.ErrorCodes[0].Description, Is.EqualTo(ValidationErrorCode.ForeignKeyValueDoesNotExist("LocationTypeId").Description));
        }
Beispiel #4
0
        public async Task When_Create_AlreadyExists_Should_Fail()
        {
            var operation01 = _mockContext.Object.Locations.Single(x => x.Name == "Operation_01");
            var dto         = new LocationBaseDto
            {
                Name           = operation01.Name,
                LocationTypeId = operation01.LocationTypeId
            };

            var commandResult = await _facade.Create(dto);

            Assert.That(commandResult.StatusCode, Is.EqualTo(FacadeStatusCode.BadRequest));
            Assert.That(commandResult.GeneratedId, Is.EqualTo(Guid.Empty));
            Assert.That(commandResult.ErrorCodes.Count, Is.EqualTo(1));
            Assert.That(commandResult.ErrorCodes[0].Code, Is.EqualTo(EntityErrorCode.EntityAlreadyExists.Code));
            Assert.That(commandResult.ErrorCodes[0].Description, Is.EqualTo(EntityErrorCode.EntityAlreadyExists.Description));
        }
Beispiel #5
0
        public async Task When_Create_ParentIdNoExist_Should_Fail()
        {
            var distributionType = _mockContext.Object.LocationTypes.Single(x => x.I18NKeyName == "Distribution");
            var dto = new LocationBaseDto
            {
                Name           = "New Location",
                LocationTypeId = distributionType.Id,
                ParentId       = Guid.NewGuid()
            };

            var commandResult = await _facade.Create(dto);

            Assert.That(commandResult.StatusCode, Is.EqualTo(FacadeStatusCode.BadRequest));
            Assert.That(commandResult.GeneratedId, Is.EqualTo(Guid.Empty));
            Assert.That(commandResult.ErrorCodes.Count, Is.EqualTo(1));
            Assert.That(commandResult.ErrorCodes[0].Code, Is.EqualTo(ValidationErrorCode.ForeignKeyValueDoesNotExist("ParentId").Code));
            Assert.That(commandResult.ErrorCodes[0].Description, Is.EqualTo(ValidationErrorCode.ForeignKeyValueDoesNotExist("ParentId").Description));
        }
Beispiel #6
0
        public async Task When_Create_WithParent_Should_Succeed()
        {
            var dto = new LocationBaseDto
            {
                Name           = "New Location",
                LocationTypeId = _mockContext.Object.LocationTypes.Single(x => x.I18NKeyName == "Sampling Site").Id,
                ParentId       = _mockContext.Object.Locations.Single(x => x.Name == "SamplingSite_Chemical").Id
            };

            var commandResult = await _facade.Create(dto);

            Assert.That(commandResult.StatusCode, Is.EqualTo(FacadeStatusCode.Created));
            Assert.That(commandResult.GeneratedId, Is.Not.EqualTo(Guid.Empty));

            var resultDto = _mockContext.Object.Locations.Single(x => x.Id == commandResult.GeneratedId);

            Assert.That(resultDto.Name, Is.EqualTo(dto.Name));
            Assert.That(resultDto.ParentId.HasValue, Is.EqualTo(dto.ParentId.HasValue));
        }