/// <summary>
        /// Send a request to read resource. Parse response's xml to ReadResponseData.
        /// </summary>
        /// <param name="resourceName"></param>
        /// <param name="urlParameters"></param>
        /// <returns>empty</returns>
        private void ReadAndVerifyData(string resourceName, Dictionary <string, object> urlParameters)
        {
            ReadResponseData <XmlResource> result = adapter.ReadSuccess(resourceName, urlParameters);

            Assert.IsNotNull(result, string.Format(Enums.Message.READ_RESOURCE_FAILED, resourceName));
            Assert.IsNotNull(result.Items, string.Format(Enums.Message.READ_RESOURCE_FAILED, resourceName));
            Assert.That(result.Code, Is.EqualTo(PublicAPIResultCode.Success), Enums.Message.WRONG_ERROR_CODE);
        }
        /// <summary>
        /// Send a request to read resource. Parse response's xml to ReadResponseData.
        /// </summary>
        /// <param name="adapter"></param>
        /// <param name="urlParameters"></param>
        /// <returns>empty</returns>
        private void ReadAndVerifyData <T>(PublicApiAdapter adapter, Dictionary <string, object> urlParameters) where T : XmlResource, new()
        {
            ReadResponseData <T> result = adapter.ReadSuccess <T>(urlParameters);

            Assert.That(result.Code, Is.EqualTo(PublicAPIResultCode.Success), Enums.Message.WRONG_ERROR_CODE);
            Assert.IsNotNull(result, string.Format(Enums.Message.READ_RESOURCE_FAILED, typeof(T).Name));
            Assert.IsNotNull(result.Items, string.Format(Enums.Message.READ_RESOURCE_FAILED, typeof(T).Name));
        }
        public void TestReadScopeAttachmentResourcesWithRegistedNoScope(ApplicationType appType)
        {
            InitPublicApiConnections(appType);
            Dictionary <string, object> parameters = new Dictionary <string, object>()
            {
                { Partition, appInfo.Company.Partition },
                { "resource", (int)Enums.ResourceType.Client },
                { "requestType", 1 }
            };
            ReadResponseData <Attachment> result = adapter.ReadSuccess <Attachment>(parameters);

            Assert.That(result.Code, Is.EqualTo(Enums.PublicAPIResultCode.NotHavePermissionToResource), Enums.Message.WRONG_ERROR_CODE);
        }
        public void TestReadScopeWithoutAttachmentRelatedScope(string scope, string withoutScope, ApplicationType appType)
        {
            // Init scope
            InitScopeAdapter(scope, appType);

            // Read
            Dictionary <string, object> parameters = new Dictionary <string, object>()
            {
                { Partition, appInfo.Company.Partition },
                { "requestType", 1 }
            };

            switch (withoutScope)
            {
            case "client_r":
                parameters.Add("resource", (int)Enums.ResourceType.Client);
                break;

            case "recruiter_r":
                parameters.Add("resource", (int)Enums.ResourceType.Recruiter);
                break;

            case "candidate_r":
                parameters.Add("resource", (int)Enums.ResourceType.Candidate);
                break;

            case "resume_r":
                parameters.Add("resource", (int)Enums.ResourceType.Resume);
                break;

            case "job_r":
                parameters.Add("resource", (int)Enums.ResourceType.Job);
                break;

            case "process_r":
                parameters.Add("resource", (int)Enums.ResourceType.Process);
                break;
            }

            ReadResponseData <Attachment> result = adapter.ReadSuccess <Attachment>(parameters);

            Assert.That(result.Code, Is.EqualTo(Enums.PublicAPIResultCode.NotHavePermissionToResource), Enums.Message.WRONG_ERROR_CODE);
        }
        public void TestReadAttachmentResourceSales()
        {
            Dictionary <string, object> parameters = new Dictionary <string, object>()
            {
                { Parttion, AuthenticationInfoProvider.Current.DefaultPartition },
                { "requestType", "0" },
                { "resource", "11" }
            };
            ReadResponseData <Attachment> result = publicApiAdapter.ReadSuccess <Attachment>(parameters);

            Assert.AreEqual(result.Code, Enums.PublicAPIResultCode.Success, "Assert request fail: Attachment By Param Valid Resource Sales");
            Assert.Greater(result.Total, 0, "The Total is not matching");
            Assert.Greater(result.Count, 0, "The Count is not matching");
            Assert.AreEqual(result.Start, 0, "The Start is not matching");
        }