Ejemplo n.º 1
0
        private CreateRecordRequest.IBuilderWithResource InitCreateResourceRequest(int resourceNumber, Func <Enums.ResourceType, IEnumerable <string> > getFieldList)
        {
            Dictionary <Enums.ResourceType, ulong> phaseList = new Dictionary <Enums.ResourceType, ulong>();

            foreach (var resourceType in Enum.GetValues(typeof(Enums.ResourceType)))
            {
                if ((Enums.ResourceType)resourceType != Enums.ResourceType.Contract)
                {
                    phaseList[(Enums.ResourceType)resourceType] =
                        ulong.Parse(OptionFieldHelper.GetOptionItem(OptionFieldHelper.GetOptionList($"Option.P_{((Enums.ResourceType)resourceType).ToResourceName()}Phase").First()).Id);
                }
            }

            CreateRecordRequest.IBuilder result = ResourceRequest.CreateRecords();
            foreach (var symbolType in Enum.GetValues(typeof(SameResultSymbolType)))
            {
                foreach (var resourceType in Enum.GetValues(typeof(Enums.ResourceType)))
                {
                    result.Append(((Enums.ResourceType)resourceType).ToPrivateEnum(),
                                  content =>
                    {
                        AppendCommonContent(content, (SameResultSymbolType)symbolType, (Enums.ResourceType)resourceType, phaseList);
                        foreach (var field in CommonConstant.NoneTelephoneTextField[(Enums.ResourceType)resourceType])
                        {
                            content.Append(field, KeywordHelper.GetFieldValueBasedOnSymbolType(field, (SameResultSymbolType)symbolType, GetSymbolIndex((SameResultSymbolType)symbolType)));
                        }
                        foreach (var field in CommonConstant.ApplicationNoneTelephoneTextField)
                        {
                            content.Append(field, KeywordHelper.GetFieldValueBasedOnSymbolType(field, (SameResultSymbolType)symbolType, GetSymbolIndex((SameResultSymbolType)symbolType)));
                        }
                    }, $"{resourceType}{symbolType}");
                }
            }
            return(result as CreateRecordRequest.IBuilderWithResource);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Create an instance of CreateRecordRequest.IBuilderWithResource that creates all type of Resources with list of field inputs.
        /// Use $"{ResourceId}{index}" to get the proper record.
        /// </summary>
        /// <param name="resourceNumber">Number of records created</param>
        /// <param name="testCaseData">Dictionary of test case data</param>
        /// <param name="fieldsName">List of field name</param>
        /// <returns>CreateRecordRequest.IBuilderWithResource</returns>
        public static CreateRecordRequest.IBuilderWithResource InitCreateAllResourceRequestWithField(HrbcFieldCreator customField, string[] applicationField)
        {
            CreateRecordRequest.IBuilder result = ResourceRequest.CreateRecords();
            List <string> processPhases         = OptionFieldHelper.GetOptionList(Enums.Options.ProcessPhase);
            Option        option   = OptionFieldHelper.GetOptionItem(processPhases.First());
            ulong         optionId = ulong.Parse(option.Id);

            foreach (var resourceType in Enum.GetValues(typeof(Enums.ResourceType)).Cast <Enums.ResourceType>())
            {
                result.Append(resourceType.ToPrivateEnum(),
                              content => PrepareContent(content, resourceType, customField, applicationField),
                              $"{resourceType.ToPrivateEnum()}");
            }

            return(result as CreateRecordRequest.IBuilderWithResource);
        }
        private static CreateRecordRequest.IBuilderWithResource InitCreateAllResourceRequestUserField(HrbcFieldCreator customField, int recordNumbers)
        {
            CreateRecordRequest.IBuilder result = ResourceRequest.CreateRecords();

            for (int i = 0; i < recordNumbers; i++)
            {
                for (int j = 0; j < UserKeywordInputs.Count; j++) //Create records for normal and special phone text
                {
                    foreach (var resourceType in Enum.GetValues(typeof(Enums.ResourceType)).Cast <Enums.ResourceType>())
                    {
                        result.Append(resourceType.ToPrivateEnum(),
                                      content => PrepareUserFieldContent(content, resourceType, customField, i * 2 + j, UserKeywordInputs.ElementAt(j).Value),
                                      $"{resourceType.ToPrivateEnum()}{i}{UserKeywordInputs.ElementAt(j).Key}");
                    }
                }
            }

            return(result as CreateRecordRequest.IBuilderWithResource);
        }
        private CreateRecordRequest.IBuilderWithResource InitCreateResourceRequest(int resourceNumber)
        {
            CreateRecordRequest.IBuilder result = ResourceRequest.CreateRecords();

            foreach (var symbolType in Enum.GetValues(typeof(SameResultSymbolType)))
            {
                foreach (var resourceType in Enum.GetValues(typeof(Enums.ResourceType)))
                {
                    result.Append(((Enums.ResourceType)resourceType).ToPrivateEnum(),
                                  content =>
                    {
                        AppendCommonContent(content, (SameResultSymbolType)symbolType, (Enums.ResourceType)resourceType);
                        foreach (var fieldType in NoneTelephoneTextField)
                        {
                            content.Append(customFields.Data[$"{resourceType}-{fieldType}"].Field.Name,
                                           KeywordHelper.GetFieldValueBasedOnSymbolType(customFields.Data[$"{resourceType}-{fieldType}"].Field.Name,
                                                                                        (SameResultSymbolType)symbolType, GetSymbolIndex((SameResultSymbolType)symbolType)));
                        }
                    }, $"{resourceType}{symbolType}");
                }
            }
            return(result as CreateRecordRequest.IBuilderWithResource);
        }
 private static CreateRecordRequest.IBuilderWithResource InitCreatePhoneResourceRequest(int resourceNumber, Dictionary <object, string> testCaseData)
 {
     CreateRecordRequest.IBuilder result = ResourceRequest.CreateRecords();
     for (int i = 0; i < resourceNumber; i++)
     {
         foreach (var test in testCaseData)
         {
             result
             .Append(ResourceId.Client,
                     content => content
                     .Append("P_Name", "Test Client")
                     .Append(KeywordSystemField.ClientTelephone, test.Value)
                     .Append(KeywordSystemField.ClientFax, test.Value)
                     .Append("P_Owner", DefaultUser),
                     $"{ResourceId.Client}{test.Key}{i}")
             .Append(ResourceId.Recruiter,
                     content => content
                     .Append("P_Name", "Test Recruiter")
                     .Append(KeywordSystemField.RecruiterTelephone, test.Value)
                     .Append(KeywordSystemField.RecruiterFax, test.Value)
                     .Append(KeywordSystemField.RecruiterMobile, test.Value)
                     .Append("P_Owner", DefaultUser)
                     .Append("P_Client", new CreateRecordRequest.Reference($"{ResourceId.Client}{test.Key}{i}")),
                     $"{ResourceId.Recruiter}{test.Key}{i}")
             .Append(ResourceId.Person,
                     content => content
                     .Append("P_Name", "Test Person")
                     .Append(KeywordSystemField.PersonTelephone, test.Value)
                     .Append(KeywordSystemField.PersonFax, test.Value)
                     .Append(KeywordSystemField.PersonMobile, test.Value)
                     .Append("P_Owner", DefaultUser),
                     $"{ResourceId.Person}{test.Key}{i}");
         }
     }
     return(result as CreateRecordRequest.IBuilderWithResource);
 }