예제 #1
0
        public void TestCreateSingleItem(Enums.ResourceType resourceType, Enums.TextType textType, AlphabetLenght characterNumber)
        {
            string fieldValue = Util.GetRandomText(textType, AlphabetValueMapper.AlphabetMapper[characterNumber]);
            XmlResource resource = ResourceHelper.CreateSingleResourceItem(resourceType, $"{resourceType.ToResourceName()}.{AppField}",
                fieldValue, records);

            ErrorCode result = ResourceHelper.WriteResourceFail(resource, cleaner);
            Assert.That(result, MustBe.MatchingErrorCode(Enums.PublicAPIResultCode.InvalidParameterValue), Enums.Message.WRONG_ERROR_CODE);
        }
예제 #2
0
        public void TestCreateListItem(Enums.ResourceType resourceType, Enums.TextType textType, AlphabetLenght characterNumber)
        {
            string             fieldValue = Util.GetRandomText(textType, AlphabetValueMapper.AlphabetMapper[characterNumber]);
            List <XmlResource> resources  = ResourceHelper.CreateListResourceItem(resourceType, customFields.Data[$"{resourceType}"].Field.ToAlias(),
                                                                                  fieldValue, records);

            ErrorCode result = ResourceHelper.WriteResourcesFail(resources, cleaner);

            Assert.That(result, MustBe.MatchingErrorCode(Enums.PublicAPIResultCode.InvalidParameterValue), Enums.Message.WRONG_ERROR_CODE);
        }
예제 #3
0
        public void TestUpdateSingleItem(Enums.ResourceType resourceType, Enums.TextType textType, AlphabetLenght characterNumber)
        {
            XmlResource resource = ResourceHelper.CreateResourceInstance(records, resourceType);
            string id = ResourceHelper.WriteResource(resource, cleaner);
            Assume.That(id, Is.Not.Null.And.Not.Empty, string.Format(Enums.Message.CREATE_RESOURCE_ENTRY_FAILED, resourceType));

            string fieldAlias = resourceType.ToResourceName() + "." + AppField;
            string fieldValue = Util.GetRandomText(textType, AlphabetValueMapper.AlphabetMapper[characterNumber]);
            resource = ResourceHelper.CreateUpdatedResource(resourceType, id, fieldAlias, fieldValue);
            var error = ResourceHelper.WriteResourceFail(resource, null);
            Assert.That(error, MustBe.MatchingErrorCode(Enums.PublicAPIResultCode.InvalidParameterValue), Enums.Message.WRONG_ERROR_CODE);
        }
예제 #4
0
        public void TestUpdateListItem(Enums.ResourceType resourceType, Enums.TextType textType, AlphabetLenght characterNumber)
        {
            List<XmlResource> resourceList = new[] { 0, 1 }.Select(depKey => ResourceHelper.CreateResourceInstance(records, resourceType, depKey)).ToList();
            List<WriteResultItem> ids = ResourceHelper.WriteResources(resourceType, resourceList, cleaner);
            Assume.That(ids, MustBe.SuccessfullyWritten(resourceList.Count()), string.Format(Enums.Message.CREATE_RESOURCE_ENTRY_FAILED, resourceType));

            string fieldAlias = resourceType.ToResourceName() + "." + AppField;
            string fieldValue = Util.GetRandomText(textType, AlphabetValueMapper.AlphabetMapper[characterNumber]);
            resourceList = ids.Select(item => ResourceHelper.CreateUpdatedResource(resourceType, item.Id, fieldAlias, fieldValue)).ToList();
            ErrorCode result = ResourceHelper.WriteResourcesFail(resourceList);
            Assert.That(result, MustBe.MatchingErrorCode(Enums.PublicAPIResultCode.InvalidParameterValue), Enums.Message.WRONG_ERROR_CODE);
        }
예제 #5
0
        public static string GetRandomText(Enums.TextType textType, uint characterNumber)
        {
            CharRangeItem charRangeItem = new CharRangeItem();

            switch (textType)
            {
            case Enums.TextType.BasicLatin:
                charRangeItem = GetUnicodeRange(Enums.UnicodeType.BasicLatin);
                break;

            case Enums.TextType.AsciiExtented:
                charRangeItem = GetUnicodeRange(Enums.UnicodeType.Latin1Supplement);
                break;

            case Enums.TextType.Hiragana:
                charRangeItem = GetUnicodeRange(Enums.UnicodeType.Hiragana);
                break;

            case Enums.TextType.Katakana:
                charRangeItem = GetUnicodeRange(Enums.UnicodeType.Katakana);
                break;

            case Enums.TextType.Kanji:
                charRangeItem = GetUnicodeRange(Enums.UnicodeType.KangxiRadicals);
                break;

            case Enums.TextType.Cyrillic:
                charRangeItem = GetUnicodeRange(Enums.UnicodeType.Cyrillic);
                break;
            }

            int        charCodesRange = charRangeItem.EndIndex - charRangeItem.StartIndex;
            List <int> characterSet   = Enumerable.Range(charRangeItem.StartIndex, charCodesRange).ToList();

            StringBuilder result = new StringBuilder();

            for (uint i = 0; i < characterNumber; i++)
            {
                result.Append(Convert.ToChar(characterSet[GetRandomNumber(charCodesRange)]));
            }
            return(result.ToString());
        }
        public void TestReadOtherValidInput(Enums.ResourceType resourceType, string lengthType, Enums.TextType textType)
        {
            string resourceName    = resourceType == Enums.ResourceType.Candidate ? "Person" : resourceType.ToString();
            string fieldAlias      = customFields.Data[$"{resourceType}"].Field.ToAlias();
            uint   characterNumber = GetStringLength(lengthType);
            string fieldValue      = Util.GetRandomText(textType, characterNumber);

            XmlResource resource = CreateResourceInstance(resourceType);

            resource.DictionaryValues[fieldAlias] = fieldValue;

            string id = PublicApiAdapter.CreateAdapterForDefaultConnection().WriteSuccess(resource, cleaner.Delete);

            Assert.That(id, Is.Not.Null.And.Not.Empty, string.Format(Enums.Message.CREATE_RESOURCE_ENTRY_FAILED, resourceType));

            //Read & verify the field's value
            ReadAndVerifyData(resourceType, id, fieldAlias, fieldValue);
        }
        public void TestReadValidInput(Enums.ResourceType resourceType, string lengthType, Enums.TextType textType)
        {
            string resourceName    = resourceType == Enums.ResourceType.Candidate ? "Person" : resourceType.ToString();
            string fieldAlias      = customFields.Data[$"{resourceType}"].Field.ToAlias();
            uint   characterNumber = GetStringLength(lengthType);
            string fieldValue      = Util.GetRandomText(textType, characterNumber);

            XmlResource resource = CreateResourceInstance(resourceType);

            resource.DictionaryValues[fieldAlias] = fieldValue;

            string id = WriteResource(resourceType, resource);

            Assert.That(id, Is.Not.Null.And.Not.Empty, string.Format(Enums.Message.CREATE_RESOURCE_ENTRY_FAILED, resourceType));

            //Read & verify the field's value
            Dictionary <string, object> urlParameter = new Dictionary <string, object>()
            {
                { "partition", AuthenticationInfoProvider.Current.DefaultPartition },
                { "condition", string.Format("{0}.P_Id:eq={1}", resourceName, id) },
                { "field", fieldAlias }
            };

            switch (resourceType)
            {
            case Enums.ResourceType.Activity:
                ReadData <Activity>(urlParameter, fieldAlias, fieldValue);
                break;

            case Enums.ResourceType.Client:
                ReadData <Client>(urlParameter, fieldAlias, fieldValue);
                break;

            case Enums.ResourceType.Candidate:
                ReadData <Candidate>(urlParameter, fieldAlias, fieldValue);
                break;

            case Enums.ResourceType.Contract:
                ReadData <Contract>(urlParameter, fieldAlias, fieldValue);
                break;

            case Enums.ResourceType.Job:
                ReadData <Job>(urlParameter, fieldAlias, fieldValue);
                break;

            case Enums.ResourceType.Process:
                ReadData <Process>(urlParameter, fieldAlias, fieldValue);
                break;

            case Enums.ResourceType.Recruiter:
                ReadData <Recruiter>(urlParameter, fieldAlias, fieldValue);
                break;

            case Enums.ResourceType.Resume:
                ReadData <Resume>(urlParameter, fieldAlias, fieldValue);
                break;

            case Enums.ResourceType.Sales:
                ReadData <Sales>(urlParameter, fieldAlias, fieldValue);
                break;
            }
        }
예제 #8
0
        public void TestUpdateSingleItem(Enums.ResourceType resourceType, LengthType lengthType, Enums.TextType textType)
        {
            var phase = new Phase
            {
                Id   = phaseReader.Data[$"{resourceType.ToPrivateEnum()}{0}"].FirstOrDefault().Id,
                Memo = Util.GetRandomText(textType, stringLength[lengthType]),
            };

            string result = PhaseHelper.WriteResource(phase);

            Assert.That(result, Is.Not.Null.And.Not.Empty, string.Format("Cannot update phase memo for {0}", resourceType));
        }
예제 #9
0
        public void TestUpdateListItem(Enums.ResourceType resourceType, LengthType lengthType, Enums.TextType textType)
        {
            var resourceList = new[] { 0, 1 }.Select(depKey =>
            {
                var phase = new Phase
                {
                    Id   = phaseReader.Data[$"{resourceType.ToPrivateEnum()}{depKey}"].FirstOrDefault().Id,
                    Memo = Util.GetRandomText(textType, stringLength[lengthType]),
                };
                return(phase);
            });

            List <WriteResultItem> result = PhaseHelper.WritePhases(resourceList);

            Assert.That(result, MustBe.SuccessfullyWritten(2), string.Format("Cannot update phase memo for {0}", resourceType));
        }
예제 #10
0
        public void TestCreateSingleItem(Enums.ResourceType resourceType, LengthType lengthType, Enums.TextType textType)
        {
            Phase phase = PhaseHelper.CreatePhaseInstance(creatingRequestRecords, resourceType);

            phase.Memo = Util.GetRandomText(textType, stringLength[lengthType]);

            string result = PhaseHelper.WriteResource(phase);

            Assert.That(result, Is.Not.Null.And.Not.Empty, string.Format("Cannot create phase for {0}", resourceType));
        }
예제 #11
0
        public void TestCreateListItem(Enums.ResourceType resourceType, LengthType lengthType, Enums.TextType textType)
        {
            var resourceList = new[] { 0, 1 }.Select(depKey =>
            {
                Phase phase = PhaseHelper.CreatePhaseInstance(creatingRequestRecords, resourceType, depKey);
                phase.Memo  = Util.GetRandomText(textType, stringLength[lengthType]);
                return(phase);
            }).ToList();

            List <WriteResultItem> result = PhaseHelper.WritePhases(resourceList);

            Assert.That(result, MustBe.SuccessfullyWritten(2), string.Format("Cannot create phase for {0}", resourceType));
        }