public void TestSearchFieldPhase(string fieldName, string condition) { Enums.ResourceType resourceType = Enums.ResourceType.Client; string id = records.Data[$"{resourceType.ToPrivateEnum()}{fields.First()}data2{1}"].Id.ToString(); var phaseList = new Dictionary <int, string> { { 0, testData["data1"] }, { 1, testData["data2"] }, { 2, testData["data3"] }, { 3, testData["data4"] }, { 4, testData["data5"] }, { 5, testData["data6"] } }.Select(item => { var phase = FieldHelper.CreatePhaseInstance(resourceType, id); phase.DictionaryValues[fieldName] = item.Value; return(phase); }).ToList(); List <string> ids = PublicApiAdapter.CreateAdapterForDefaultConnection().WriteSuccess(phaseList); Assume.That(ids, Is.Not.Null.And.Not.Empty, string.Format(Enums.Message.CREATE_RESOURCE_ENTRY_FAILED, resourceType)); Dictionary <string, string> parameters = new Dictionary <string, string>() { { DateTimeValidator.FieldAlias1, fieldName }, { DateTimeValidator.Condition1, condition }, { DateTimeValidator.ConditionValue1, testData.Random() }, { DateTimeValidator.ConditionValue2, testData.Random() }, }; //Read & verify the field's value DateTimeValidator.VerifySingleSearchSystemFieldPhase(resourceType, parameters); }
public void TestValidSingleSearchNumberField(string fieldName, string condition) { string conditionValue1 = PhaseHelper.GeneratePhaseNumberType(defaultResource, fieldName, indexFirstPhaseList); string conditionValue2 = PhaseHelper.GeneratePhaseNumberType(defaultResource, fieldName, indexSecondPhaseList); string tempCond = $"{fieldName}:{condition}={conditionValue1}"; string formatCond = condition == DateTimeValidator.Or ? $"{tempCond}:{conditionValue2}" : tempCond; Dictionary <string, object> parameters = new Dictionary <string, object>() { { PhaseApiFields.Partition, AuthenticationInfoProvider.Current.DefaultPartition }, { PhaseApiFields.Resource, (int)defaultResource }, { PhaseApiFields.Condition, formatCond }, { PhaseApiFields.Field, fieldName }, }; ReadResponseData <Phase> result = PublicApiAdapter.CreateAdapterForDefaultConnection().ReadSuccess <Phase>(parameters); Assert.That(result.Code, Is.EqualTo(Enums.PublicAPIResultCode.Success), string.Format(Enums.Message.READ_RESOURCE_FAILED, nameof(Phase))); //Read & verify the field's value if (fieldName == PhaseApiFields.RegistrationDate || fieldName == PhaseApiFields.UpdateDate || fieldName == PhaseApiFields.Date) { Dictionary <string, string> conditionParameters = new Dictionary <string, string>() { { DateTimeValidator.FieldAlias1, fieldName }, { DateTimeValidator.Condition1, condition }, { DateTimeValidator.ConditionValue1, conditionValue1 }, { DateTimeValidator.ConditionValue2, conditionValue2 }, }; DateTimeValidator.VerifySingleSearchSystemFieldPhase(defaultResource, conditionParameters); } else { foreach (var item in result.Items) { DateTimeValidator.ConditionalAssertions[condition](int.Parse(item.DictionaryValues[fieldName].ToString()), int.Parse(conditionValue1), int.Parse(conditionValue2)); } } }