예제 #1
0
        /// <summary>
        /// Create a WorkflowStepInstance record
        /// </summary>
        /// <param name="formsSentId"></param>
        /// <returns></returns>
        public WorkflowStepInstance CreateWorkflowStepInstance(int formsSentId)
        {
            var workflowStepInstance = new WorkflowStepInstance
            {
                FormsSentId = formsSentId,
                Status      = WorkflowStepInstanceStatus.Active,
                DateEntered = DateTime.Today
            };

            workflowStepInstance.Id = (int)_readWriteData.Create(workflowStepInstance, true);
            return(workflowStepInstance);
        }
        /// <summary>
        /// Set up records needed for a formInbox notification
        /// </summary>
        public void CreateNotificationData()
        {
            _form                   = FormDataAccessor.CreateForm(string.Join(" ", Faker.Lorem.Words(3)));
            _formSent               = FormDataAccessor.CreateFormSent(_form.Id);
            _wfStepInstance         = WorkflowDataAccessor.CreateWorkflowStepInstance(_formSent.Id);
            _wfStepInstanceAssignee = WorkflowDataAccessor.CreateWorkflowStepInstanceAssignee(_wfStepInstance.Id, TargetUser);

            ExpectedResult = new NotificationResult()
            {
                Title     = _form.Title,
                PopupInfo = new NotificationPopupResult
                {
                    FrameId = "MainContentsIFrame",
                    Url     = $"EForm.aspx?src=admin&NoInstructions=1&ID={_formSent.Guid}",
                    Content = string.Empty //TODO: Resolve data setup gap that is generating server error
                }
            };

            ValidateNotificationExistsForFormSentId();
        }