public void RecommendsTest(string digest, string guid, int user_id, string auth) { var client = new RestClient(TestConfiguration.API.Location); var request = new RestRequest("/recommends", Method.GET); request .AddParameter("digest", digest) .AddParameter("guid", guid) .AddParameter("user_id", user_id) .AddHeader("Authorization", auth); var response = client.Execute <RecommendsModel.RootObject>(request); EnsureOkResponseStatusCode(response, client, request); List <string> allErrorMessages = new List <string>(); ValidationResultModel <RecommendsModel.RootObject> recommendsMainResults; var isRecommendsDataValid = GlobalLogic.IsModelValid(response.Data, out recommendsMainResults); IList <ValidationResultModel <RecommendsModel.Item> > recommendsAndRecentlyAddedResults; var areRecommendsAndRecentlyAddedItemsValid = GlobalLogic.IsModelArrayValid(response.Data.RecentlyAdded.Concat(response.Data.Recommendations), out recommendsAndRecentlyAddedResults); if (!isRecommendsDataValid) { var message = $"Recommends with success: {recommendsMainResults.Model.Success}." .RequestInfo(client, request) .WithValidationErrors(recommendsMainResults.Results); allErrorMessages.Add(message); } if (!areRecommendsAndRecentlyAddedItemsValid) { foreach (var recommendsAndRecentlyAddedResult in recommendsAndRecentlyAddedResults.Where(x => x.Results.Any())) { var message = $"RecentlyAdded item with Guid: {recommendsAndRecentlyAddedResult.Model.Guid}" .RequestInfo(client, request) .WithValidationErrors(recommendsAndRecentlyAddedResult.Results); allErrorMessages.Add(message); } } if (allErrorMessages.Any()) { var allMessages = string.Join("\r\n\r\n", allErrorMessages); throw new Exception(allMessages); } }
public void DealerLeadsTest(string digest, string auth) { var client = new RestClient(TestConfiguration.API.Location); var request = new RestRequest("lead/list?digest={digest}", Method.GET); request .AddUrlSegment("digest", digest) .AddHeader("Authorization", auth); var response = client.Execute <DealerLeadsModel.RootObject>(request); EnsureOkResponseStatusCode(response, client, request); List <string> allErrorMessages = new List <string>(); ValidationResultModel <DealerLeadsModel.RootObject> dealerLeadsMainResults; var isDealerLeadsDataValid = GlobalLogic.IsModelValid(response.Data, out dealerLeadsMainResults); IList <ValidationResultModel <DealerLeadsModel.Item> > DealerLeadsItemResults; var areDealerLeadsDataItemsValid = GlobalLogic.IsModelArrayValid(response.Data.Items, out DealerLeadsItemResults); if (!isDealerLeadsDataValid) { var message = $"Dealer leads with success: {dealerLeadsMainResults.Model.Success} and results: {dealerLeadsMainResults.Model.Results}." .RequestInfo(client, request) .WithValidationErrors(dealerLeadsMainResults.Results); allErrorMessages.Add(message); } if (!areDealerLeadsDataItemsValid) { foreach (var DealerLeadsItemResult in DealerLeadsItemResults.Where(x => x.Results.Any())) { var message = $"Dealer lead item with Classified_id: {DealerLeadsItemResult.Model.Classified_id}" .RequestInfo(client, request) .WithValidationErrors(DealerLeadsItemResult.Results); allErrorMessages.Add(message); } } if (allErrorMessages.Any()) { var allMessages = string.Join("\r\n\r\n", allErrorMessages); throw new Exception(allMessages); } }
public void CertifiersTest(string digest, string auth) { var client = new RestClient(TestConfiguration.API.Location); var request = new RestRequest("/certifiers?digest={digest}", Method.GET); request .AddUrlSegment("digest", digest) .AddHeader("Authorization", auth); var response = client.Execute <CertifiersModel.RootObject>(request); EnsureOkResponseStatusCode(response, client, request); List <string> allErrorMessages = new List <string>(); ValidationResultModel <CertifiersModel.RootObject> certifiersMainResults; var isCertifiersDataValid = GlobalLogic.IsModelValid(response.Data, out certifiersMainResults); IList <ValidationResultModel <CertifiersModel.Item> > CertifiersItemResults; var areCertifiersDataItemsValid = GlobalLogic.IsModelArrayValid(response.Data.Items, out CertifiersItemResults); if (!isCertifiersDataValid) { var message = $"Certifiers with success: {certifiersMainResults.Model.Success} and results: {certifiersMainResults.Model.Results}." .RequestInfo(client, request) .WithValidationErrors(certifiersMainResults.Results); allErrorMessages.Add(message); } if (!areCertifiersDataItemsValid) { foreach (var CertifiersItemResult in CertifiersItemResults.Where(x => x.Results.Any())) { var message = $"Certifier item with Name: {CertifiersItemResult.Model.Name}" .RequestInfo(client, request) .WithValidationErrors(CertifiersItemResult.Results); allErrorMessages.Add(message); } } if (allErrorMessages.Any()) { var allMessages = string.Join("\r\n\r\n", allErrorMessages); throw new Exception(allMessages); } }
public void RegSourceTest(string digest, string auth) { var client = new RestClient(TestConfiguration.API.Location); var request = new RestRequest("/user/reg_request_source?digest={digest}", Method.GET); request .AddUrlSegment("digest", digest) .AddHeader("Authorization", auth); var response = client.Execute <RegSourceModel.RootObject>(request); EnsureOkResponseStatusCode(response, client, request); List <string> allErrorMessages = new List <string>(); ValidationResultModel <RegSourceModel.RootObject> regSourceMainResults; var isRegSourceDataValid = GlobalLogic.IsModelValid(response.Data, out regSourceMainResults); IList <ValidationResultModel <RegSourceModel.Item> > RegSourceItemResults; var areRegSourceDataItemsValid = GlobalLogic.IsModelArrayValid(response.Data.Items, out RegSourceItemResults); if (!isRegSourceDataValid) { var message = $"Registration source with success: {regSourceMainResults.Model.Success} and results: {regSourceMainResults.Model.Results}." .RequestInfo(client, request) .WithValidationErrors(regSourceMainResults.Results); allErrorMessages.Add(message); } if (!areRegSourceDataItemsValid) { foreach (var RegSourceItemResult in RegSourceItemResults.Where(x => x.Results.Any())) { var message = $"Source item with Name: {RegSourceItemResult.Model.Name}" .RequestInfo(client, request) .WithValidationErrors(RegSourceItemResult.Results); allErrorMessages.Add(message); } } if (allErrorMessages.Any()) { var allMessages = string.Join("\r\n\r\n", allErrorMessages); throw new Exception(allMessages); } }