public void Setup_OkState()
        {
            _projectValidatorMock = new Mock <IProjectValidator>();
            _tagValidatorMock     = new Mock <ITagValidator>();
            _tagValidatorMock.Setup(v => v.ExistsRequirementAsync(TagId, ReqId, default))
            .Returns(Task.FromResult(true));
            _tagValidatorMock
            .Setup(v => v.ExistsFieldForRequirementAsync(TagId, ReqId, AttachmentFieldId, default))
            .Returns(Task.FromResult(true));
            _tagValidatorMock.Setup(v => v.HasRequirementWithActivePeriodAsync(TagId, ReqId, default))
            .Returns(Task.FromResult(true));
            _fieldValidatorMock = new Mock <IFieldValidator>();
            _fieldValidatorMock.Setup(r => r.IsValidForAttachmentAsync(AttachmentFieldId, default))
            .Returns(Task.FromResult(true));

            _command = new DeleteFieldValueAttachmentCommand(
                TagId,
                ReqId,
                AttachmentFieldId);

            _dut = new DeleteFieldValueAttachmentCommandValidator(
                _projectValidatorMock.Object,
                _tagValidatorMock.Object,
                _fieldValidatorMock.Object);
        }
コード例 #2
0
        public async Task <IActionResult> DeleteFieldValueAttachment(
            [FromHeader(Name = CurrentPlantMiddleware.PlantHeader)]
            [Required]
            [StringLength(PlantEntityBase.PlantLengthMax, MinimumLength = PlantEntityBase.PlantLengthMin)]
            string plant,
            [FromRoute] int id,
            [FromRoute] int requirementId,
            [FromRoute] int fieldId)
        {
            var command = new DeleteFieldValueAttachmentCommand(
                id,
                requirementId,
                fieldId);

            var result = await _mediator.Send(command);

            return(this.FromResult(result));
        }
        public void Setup()
        {
            var _tagId             = 1;
            var _attachmentFieldId = 12;
            var _reqId             = 21;

            _command = new DeleteFieldValueAttachmentCommand(
                _tagId,
                _reqId,
                _attachmentFieldId);

            _requirementDefinition = new Mock <RequirementDefinition>();
            _requirementDefinition.SetupGet(r => r.Id).Returns(_reqId);
            _requirementDefinition.SetupGet(r => r.Plant).Returns(TestPlant);

            var attachmentFieldMock = new Mock <Field>(TestPlant, "", FieldType.Attachment, 0, "", false);

            attachmentFieldMock.SetupGet(f => f.Id).Returns(_attachmentFieldId);
            attachmentFieldMock.SetupGet(f => f.Plant).Returns(TestPlant);
            _requirementDefinition.Object.AddField(attachmentFieldMock.Object);

            var requirementMock = new Mock <TagRequirement>(TestPlant, 2, _requirementDefinition.Object);

            requirementMock.SetupGet(r => r.Id).Returns(_reqId);
            requirementMock.SetupGet(r => r.Plant).Returns(TestPlant);
            _requirement = requirementMock.Object;

            var stepMock = new Mock <Step>();

            stepMock.SetupGet(s => s.Plant).Returns(TestPlant);
            var tag = new Tag(TestPlant, TagType.Standard, "", "", stepMock.Object, new List <TagRequirement>
            {
                _requirement
            });

            tag.StartPreservation();

            Assert.AreEqual(PreservationStatus.Active, tag.Status);
            Assert.IsTrue(_requirement.HasActivePeriod);

            var _projectRepositoryMock = new Mock <IProjectRepository>();

            _projectRepositoryMock
            .Setup(r => r.GetTagByTagIdAsync(_tagId))
            .Returns(Task.FromResult(tag));

            var _rtRepositoryMock = new Mock <IRequirementTypeRepository>();

            _rtRepositoryMock
            .Setup(r => r.GetRequirementDefinitionByIdAsync(_reqId))
            .Returns(Task.FromResult(_requirementDefinition.Object));

            _blobStorageMock = new Mock <IBlobStorage>();

            var attachmentOptionsMock = new Mock <IOptionsMonitor <AttachmentOptions> >();
            var options = new AttachmentOptions
            {
                MaxSizeMb         = 2,
                BlobContainer     = _blobContainer,
                ValidFileSuffixes = new[] { ".gif", ".jpg" }
            };

            attachmentOptionsMock
            .Setup(x => x.CurrentValue)
            .Returns(options);

            _dut = new DeleteFieldValueAttachmentCommandHandler(
                _projectRepositoryMock.Object,
                _rtRepositoryMock.Object,
                UnitOfWorkMock.Object,
                _blobStorageMock.Object,
                attachmentOptionsMock.Object);
        }