コード例 #1
0
        public void Given_valid_request_When_copy_riskassessment_Then_calls_the_correct_methods()
        {
            //Given
            var riskAssessmentService = CreateRiskAssessmentService();

            var request = new CopyRiskAssessmentRequest()
                              {
                                  CompanyId = CompanyId,
                                  RiskAssessmentToCopyId = RiskAssessmentId,
                                  UserId = Guid.NewGuid(),
                                  Reference = "Test Reference",
                                  Title = "new title"
                              };

            _userRepository
                .Setup(x => x.GetByIdAndCompanyId(request.UserId, request.CompanyId))
                .Returns(_user);

            var mockRiskAssessment = new Mock<GeneralRiskAssessment>();
            mockRiskAssessment.Setup(x => x.Id).Returns(1);
            mockRiskAssessment
                .Setup(x => x.Copy(request.Title,request.Reference,  _user))
                .Returns(mockRiskAssessment.Object);

            _generalRiskAssessmentRepository
                .Setup(rr => rr.GetByIdAndCompanyId(RiskAssessmentId, CompanyId))
                .Returns(mockRiskAssessment.Object);

            _generalRiskAssessmentRepository
                .Setup(x => x.SaveOrUpdate(mockRiskAssessment.Object));

            _riskAssessmentRepository
                .Setup(x => x.DoesAssessmentExistWithTheSameReference<GeneralRiskAssessment> (It.IsAny<long>()
                                                                      , It.IsAny<string>()
                                                                      , It.IsAny<long?>()))
                .Returns(false);
            //When
            riskAssessmentService.CopyRiskAssessment(request);

            //Then
            mockRiskAssessment.VerifyAll();
            _generalRiskAssessmentRepository.VerifyAll();
            _userRepository.VerifyAll();
        }
        public long CopyRiskAssessment(CopyRiskAssessmentRequest copyRiskAssessmentRequest)
        {
            new CopyRiskAssessmentRequestValidator<HazardousSubstanceRiskAssessment>(_riskAssessmentRepository).ValidateAndThrow(copyRiskAssessmentRequest);

            var riskAssessment = _hazardousSubstanceRiskAssessmentRepository.GetByIdAndCompanyId(copyRiskAssessmentRequest.RiskAssessmentToCopyId, copyRiskAssessmentRequest.CompanyId);
            var user = _userForAuditingRepository.GetByIdAndCompanyId(copyRiskAssessmentRequest.UserId, copyRiskAssessmentRequest.CompanyId);

            var copiedRiskAssessment = riskAssessment.Copy(copyRiskAssessmentRequest.Title, copyRiskAssessmentRequest.Reference, user)as HazardousSubstanceRiskAssessment;
            _hazardousSubstanceRiskAssessmentRepository.SaveOrUpdate(copiedRiskAssessment);
            return copiedRiskAssessment.Id;

        }
コード例 #3
0
        public void Given_valid_request_When_copy_riskassessment_Then_should_return_correct_result()
        {
            //Given
            var riskAssessmentService = CreateRiskAssessmentService();

            var request = new CopyRiskAssessmentRequest()
            {
                CompanyId = CompanyId,
                RiskAssessmentToCopyId = RiskAssessmentId,
                UserId = Guid.NewGuid(),
                Reference = "Test Reference",
                Title = "new title"
            };

            _userRepository
                .Setup(x => x.GetByIdAndCompanyId(request.UserId, request.CompanyId))
                .Returns(_user);

            var mockRiskAssessment = new Mock<GeneralRiskAssessment>();
            mockRiskAssessment
                .Setup(x => x.Id)
                .Returns(200);

            mockRiskAssessment
                .Setup(x => x.Copy(request.Title, request.Reference, _user))
                .Returns(mockRiskAssessment.Object);

            _generalRiskAssessmentRepository
                .Setup(rr => rr.GetByIdAndCompanyId(RiskAssessmentId, CompanyId))
                .Returns(mockRiskAssessment.Object);

            _generalRiskAssessmentRepository
                .Setup(x => x.SaveOrUpdate(mockRiskAssessment.Object));


            //When
            var result = riskAssessmentService.CopyRiskAssessment(request);

            //Then
            Assert.That(result, Is.EqualTo(mockRiskAssessment.Object.Id));
        }
コード例 #4
0
        public long CopyRiskAssessment(CopyRiskAssessmentRequest copyRiskAssessmentRequest)
        {
            new CopyRiskAssessmentRequestValidator<FireRiskAssessment>(_riskAssessmentRepository).ValidateAndThrow(copyRiskAssessmentRequest);

            var riskAssessment = _fireRiskAssessmentRepository.GetByIdAndCompanyId(copyRiskAssessmentRequest.RiskAssessmentToCopyId, copyRiskAssessmentRequest.CompanyId);
            var user = _auditedUserRepository.GetByIdAndCompanyId(copyRiskAssessmentRequest.UserId, copyRiskAssessmentRequest.CompanyId);
            var copiedRiskAssessment = riskAssessment.Copy(copyRiskAssessmentRequest.Title, copyRiskAssessmentRequest.Reference, user) as FireRiskAssessment;
            _fireRiskAssessmentRepository.SaveOrUpdate(copiedRiskAssessment);
            return copiedRiskAssessment.Id;
        }