public void ShouldPostAndGetResult() { TestFactory factory = new TestFactory(); SavedQueryService savedQueryService = new SavedQueryService(); var url = "http://api.scb.se/OV0104/v1/doris/sv/ssd/START/JO/JO1104/F3ny"; var tableQuery = factory.GetTableQuery(); savedQueryService.PostService(url, tableQuery); }
public List <CompareResultApiModel> CompareApi(IEnumerable <MenuItem> level3Items, string level2qString, List <CompareResultApiModel> compareResultModelList) { var serverAddress1 = _appSettingsHandler.ReadSetting("WebApiAddress1"); // get url for api site 2 var serverAddress2 = _appSettingsHandler.ReadSetting("WebApiAddress2"); var resultFolder1 = _appSettingsHandler.ReadSetting("ResultFolder1") + "/Api/"; var resultFolder2 = _appSettingsHandler.ReadSetting("ResultFolder2") + "/Api/"; var fileRepo = new FileCompareRepo(); foreach (var level3Item in level3Items) { var lev3qString = level2qString + $"/{level3Item.Id}"; var queryResult1 = _savedQueryService.GetService(serverAddress1 + lev3qString); var queryResult2 = _savedQueryService.GetService(serverAddress2 + lev3qString); MetaTable metaTableResult; if (!string.IsNullOrEmpty(queryResult1) && !string.IsNullOrEmpty(queryResult2)) { metaTableResult = JsonConvert.DeserializeObject <MetaTable>(queryResult1); var compareResultModel = new CompareResultApiModel() { TableId = level3Item.Id }; //var outputFormats = Enum.GetValues(typeof(OutputFormatApi)).Cast<OutputFormatApi>(); var outputFormats = Enum.GetValues(typeof(OutputFormatApi)).Cast <OutputFormatApi>(); fileRepo.CreateFolder($"{resultFolder1}/{level3Item.Id}"); fileRepo.CreateFolder($"{resultFolder2}/{level3Item.Id}"); foreach (var outputFormat in outputFormats) { var tableQuery = MapToTableQuery(metaTableResult, outputFormat.ToString().Replace("_", "-")); bool?result; if (outputFormat == OutputFormatApi.xlsx) { bool res1; bool res2; res1 = _savedQueryService.PostAndSaveAsFile($"{serverAddress1}{lev3qString}", $"{level3Item.Id}_{outputFormat}", "xlsx", $"{resultFolder1}\\{level3Item.Id}\\" , tableQuery); res2 = _savedQueryService.PostAndSaveAsFile($"{serverAddress1}{lev3qString}", $"{level3Item.Id}_{outputFormat}", "xlsx", $"{resultFolder2}\\{level3Item.Id}\\", tableQuery); Thread.Sleep(5000); if (res1 && res2) { var resultList1 = _excelComparer.ReadExcelFile( $@"{resultFolder1}\{level3Item.Id}\{level3Item.Id}_{outputFormat}.xlsx"); var resultList2 = _excelComparer.ReadExcelFile( $@"{resultFolder2}\{level3Item.Id}\{level3Item.Id}_{outputFormat}.xlsx"); result = CompareArrayLists(resultList1, resultList2); } else { result = null; } } else { var res1 = _savedQueryService.PostService($"{serverAddress1 + lev3qString}", tableQuery); var res2 = _savedQueryService.PostService($"{serverAddress2 + lev3qString}", tableQuery); Thread.Sleep(5000); if (res1 != null && res2 != null) { _savedQueryService.SaveToFile(res1, level3Item.Id, outputFormat.ToString(), $"{resultFolder1}\\{level3Item.Id}\\"); _savedQueryService.SaveToFile(res2, level3Item.Id, outputFormat.ToString(), $"{resultFolder2}\\{level3Item.Id}\\"); result = CompareSavedQueryResults( $@"{resultFolder1}/{level3Item.Id}/{level3Item.Id}_{outputFormat}.txt", $@"{resultFolder2}/{level3Item.Id}/{level3Item.Id}_{outputFormat}.txt"); } else { result = null; } } compareResultModel.UpdateModel(outputFormat, result); } compareResultModelList.Add(compareResultModel); } } return(compareResultModelList); }