Example #1
0
        public void Setup()
        {
            _tenant = new AppTenant("Treeze", "localhost:43500", null, null);

            _pageComponent = new PageComponent("Minha Página");

            _customForms        = new List <CustomForm>();
            _customFields       = new List <CustomField>();
            _customFieldOptions = new List <CustomFieldOption>();
            _formPageComponents = new List <FormPageComponent>();
            _customFormAnswers  = new List <CustomFormAnswer>();

            _mockCustomFormRepository        = new Mock <ICustomFormRepository>();
            _mockCustomFieldRepository       = new Mock <ICustomFieldRepository>();
            _mockCustomFieldOptionRepository = new Mock <ICustomFieldOptionRepository>();
            _mockFormPageComponentRepository = new Mock <IFormPageComponentRepository>();
            _mockCustomFormAnswerRepository  = new Mock <ICustomFormAnswerRepository>();


            _mockCustomFormRepository.Setup(mr => mr.Save(It.IsAny <CustomForm>())).Callback((CustomForm target) =>
            {
                _customForms.Add(target);
                if (target.Fields == null)
                {
                    return;
                }
                foreach (var targetField in target.Fields)
                {
                    _customFields.Add(targetField);

                    if (targetField.Options == null)
                    {
                        continue;
                    }
                    foreach (var targetFieldOption in targetField.Options)
                    {
                        _customFieldOptions.Add(targetFieldOption);
                    }
                }
            });

            _mockCustomFieldRepository.Setup(mr => mr.Save(It.IsAny <CustomField>())).Callback((CustomField target) => { _customFields.Add(target); });
            _mockCustomFieldRepository.Setup(mr => mr.Get(It.IsAny <Guid>())).Returns((Guid id) => _customFields.FirstOrDefault(x => x.Id == id && x.TenantId == _tenant.Id));

            _mockCustomFieldOptionRepository.Setup(mr => mr.Save(It.IsAny <CustomFieldOption>())).Callback((CustomFieldOption target) => { _customFieldOptions.Add(target); });
            _mockFormPageComponentRepository.Setup(mr => mr.Save(It.IsAny <FormPageComponent>())).Callback((FormPageComponent target) => { _formPageComponents.Add(target); });
            _mockCustomFormAnswerRepository.Setup(mr => mr.Save(It.IsAny <CustomFormAnswer>())).Callback((CustomFormAnswer target) => { _customFormAnswers.Add(target); });



            _customFormRepository        = _mockCustomFormRepository.Object;
            _customFieldRepository       = _mockCustomFieldRepository.Object;
            _customFieldOptionRepsitory  = _mockCustomFieldOptionRepository.Object;
            _formPageComponentRepository = _mockFormPageComponentRepository.Object;
            _customFormAnswerRepository  = _mockCustomFormAnswerRepository.Object;

            _handler = new CustomFormsHandler(_tenant, _customFormRepository, _customFieldRepository, _customFieldOptionRepsitory, _formPageComponentRepository, _customFormAnswerRepository);
        }
 /// <inheritdoc />
 public CustomFormsAnswerController(IUnitOfWork uow, CustomFormsHandler handler, ICustomFormAnswerRepository customFormAnswerRepository) : base(uow)
 {
     _handler = handler;
     _customFormAnswerRepository = customFormAnswerRepository;
 }