public ChecklistController(
     IFireRiskAssessmentChecklistViewModelFactory viewModelFactory,
     IFireRiskAssessmentChecklistService fireRiskAssessmentChecklistService,
     IFireRiskAssessmentService fireRiskAssessmentService,
     IFireRiskAssessmentFurtherControlMeasureTaskService furtherControlMeasureTaskService
     )
 {
     _viewModelFactory = viewModelFactory;
     _fireRiskAssessmentChecklistService = fireRiskAssessmentChecklistService;
     _fireRiskAssessmentService = fireRiskAssessmentService;
     _furtherControlMeasureTaskService = furtherControlMeasureTaskService;
 }
        public void Setup()
        {
            _viewModel = new FireRiskAssessmentChecklistViewModel
            {
                CompanyId = 41212L,
                FireRiskAssessmentChecklistId = 121L,
                RiskAssessmentId = 142L,
                Sections = new List<SectionViewModel>
                {
                    new SectionViewModel
                    {
                         Questions = new List<QuestionViewModel>
                         {
                             new QuestionViewModel
                             {
                                 Id = 80L,
                                 Answer = new FireAnswerViewModel
                                 {
                                     YesNoNotApplicableResponse = YesNoNotApplicableEnum.Yes,
                                     AdditionalInfo = "Test Additional Info 1"
                                 }
                             },
                             new QuestionViewModel
                             {
                                 Id = 81L,
                                 Answer = new FireAnswerViewModel
                                 {
                                     YesNoNotApplicableResponse = YesNoNotApplicableEnum.No
                                 }
                             },
                             new QuestionViewModel
                             {
                                 Id = 82L,
                                 Answer = new FireAnswerViewModel
                                 {
                                     YesNoNotApplicableResponse = YesNoNotApplicableEnum.NotApplicable
                                 }
                             },
                             new QuestionViewModel
                             {
                                 Id = 83L,
                                 Answer = new FireAnswerViewModel
                                 {
                                     YesNoNotApplicableResponse = null
                                 }
                             },
                         }
                    }
                }
            };

            _fireRiskAssessmentService = new Mock<IFireRiskAssessmentService>();
            _fireRiskAssessmentChecklistService = new Mock<IFireRiskAssessmentChecklistService>();

            _fireRiskAssessmentChecklistViewModelFactory = new FireRiskAssessmentChecklistViewModelFactory(_fireRiskAssessmentService.Object, null);
            _controller = new ChecklistController(
                _fireRiskAssessmentChecklistViewModelFactory,
                _fireRiskAssessmentChecklistService.Object,
                null,
                null
                );

            _controller = TestControllerHelpers.AddUserToController(_controller);
            _controller.SaveChecklistOnlyForAuditing(_viewModel);
        }
        public void Setup()
        {
            _fireRiskAssessmentId = 1832L;
            _companyId = 526L;

            _fireRiskAssessment = new FireRiskAssessmentDto
            {
                Id = _fireRiskAssessmentId,
                CompanyId = _companyId,
                LatestFireRiskAssessmentChecklist = new FireRiskAssessmentChecklistDto
                {
                    Id = _fireRiskAssessmentChecklistId,
                    Checklist = new ChecklistDto
                    {
                        Sections = new List<SectionDto>
                        {
                            new SectionDto
                            {
                                Id = 1L,
                                ShortTitle = "Test Section 1",
                                Questions = new List<QuestionDto>
                                {
                                    new QuestionDto
                                    {
                                        Id = 1L,
                                        ListOrder = 1,
                                        Text = "Test QuestionText 1",
                                        Information = "Test Information 1",
                                    },
                                    new QuestionDto
                                    {
                                        Id = 2L,
                                        ListOrder = 2,
                                        Text = "Test QuestionText 2",
                                        Information = "Test Information 2",
                                    }  
                                }
                            },
                            new SectionDto
                            {
                                Id = 2L,
                                ShortTitle = "Test Section 2",
                                Questions = new List<QuestionDto>
                                {
                                    new QuestionDto
                                    {
                                        Id = 3L,
                                        ListOrder = 3,
                                        Text = "Test QuestionText 3",
                                        Information = "Test Information 3",
                                    },
                                    new QuestionDto
                                    {
                                        Id = 4L,
                                        ListOrder = 4,
                                        Text = "Test QuestionText 4",
                                        Information = "Test Information 4",
                                    }  
                                }
                            } 
                        }
                    },
                    Answers = new List<FireAnswerDto>
                    {
                        new FireAnswerDto
                        {
                            Question = new QuestionDto
                            {
                                Id = 1L
                            },
                            YesNoNotApplicableResponse = YesNoNotApplicableEnum.Yes,
                            AdditionalInfo = "Test Additional Info 1"
                        },
                        new FireAnswerDto
                        {
                            Question = new QuestionDto
                            {
                                Id = 2L
                            },
                            YesNoNotApplicableResponse = YesNoNotApplicableEnum.No
                        },
                        new FireAnswerDto
                        {
                            Question = new QuestionDto
                            {
                                Id = 3L
                            }
                        } 
                    }
                }                                                              
            };

            _fireRiskAssessmentService = new Mock<IFireRiskAssessmentService>();
            _fireRiskAssessmentChecklistService = new Mock<IFireRiskAssessmentChecklistService>();

            _fireRiskAssessmentService
                .Setup(x => x.GetWithLatestFireRiskAssessmentChecklist(_fireRiskAssessmentId, _companyId))
                .Returns(_fireRiskAssessment);

            _fireRiskAssessmentChecklistViewModelFactory = new FireRiskAssessmentChecklistViewModelFactory(_fireRiskAssessmentService.Object, null);
        }