public CompareViewModel(IDialogCoordinator instance) { FileLoc1 = ""; FileLoc2 = ""; IsReadyToCompare = false; dialogCoordinator = instance; ResultSetObsrvColl = new ObservableCollection <SpreadLogModel>(); appInitializer = new AppCompInitializer(); dataComparer = new DataComparer(); dataComparer.FileReaderObj.SetConfigReaderAndUserDataReaderFromDataBase(appInitializer.ConfigReader); ThresholdValueSet = StaticVariables.DiffThreshold; //IsDataFromDbSelectedRadioBtnFlag = true; //IsDataFromFileSelectedRadioBtnFlag = false; // SelectedDateFrom = DateTime.Now.ToString("dd/MM/yyyy"); // SelectedDateTo = DateTime.Now.ToString("dd/MM/yyyy") ; if (FillComboBox()) { SelectedIndexUser1CmbBox = 0; SelectedIndexUser2CmbBox = 1; } //IsBuildCacheBtnEnabled = false; //if (IsDataFromFileSelectedRadioBtnFlag) //{ // IsCacheSet = true; //} //else //{ // IsCacheSet = false; //} IsHist = true; }
protected override List <SearchData> MergeOrder(OrderSelectTask orderSelectTask, List <SingleServerSearchTask> searchTasks, OrderType orderType) { var ret = new List <SearchData>(); searchTasks.RemoveAll(x => !x.IsServersAvailbale); PreLoadPages(searchTasks); while (ret.Count < orderSelectTask.UserPage && !IsFinishMerge(searchTasks)) { var current = GetCurrent(orderSelectTask, searchTasks, orderType); if (ret.Count == 0 || DataComparer.Compare(current.GetData(), ret.Last(), orderSelectTask.ScriptDescription) != 0) { ret.Add(current.GetData()); } current.IncrementPosition(); ReadSameValue(orderSelectTask, searchTasks, ret.Last()); LoadPages(searchTasks); searchTasks.RemoveAll(x => !x.IsServersAvailbale); } return(ret); }
/// <summary> /// Build: /// - Apply /// - PersistDataContainer /// - PersistOperations /// - PersistKey /// - KeyComparer /// - KeyEqualityComparer /// /// instances from StructType, keySlotTypes & recordSlotTypes /// </summary> protected virtual void BuildMembers() { //apply switch (StructureType) { case STSdb4.Database.StructureType.XINDEX: Apply = new XIndexApply(this); break; case STSdb4.Database.StructureType.XFILE: Apply = new XStreamApply(this); break; } //comparer & equality comparer KeyComparer = new DataComparer(KeyDescriptor.DataType, KeyDescriptor.CompareOptions); KeyEqualityComparer = new DataEqualityComparer(KeyDescriptor.DataType, KeyDescriptor.CompareOptions); bool compressKeys = KeyDescriptor.CompressData; bool compressRecords = RecordDescriptor.CompressData; if (compressKeys || compressRecords) { PersistDataContainer = new IndexPersistDataContainer(this, KeyDescriptor.DataType, RecordDescriptor.DataType, compressKeys, compressRecords); } else { PersistDataContainer = new IndexPersistDataContainerRaw(this, KeyDescriptor.DataType, RecordDescriptor.DataType); } PersistOperations = new IndexPersistOperationCollection(this); PersistKey = new DataPersist(KeyDescriptor.DataType); }
public void A_TestSetup() { _moq = new Moqqer(); _comparer = IoC.Container.GetInstance <DataComparer>(); _left = Tables.Default; _right = Tables.Default; }
public ActionResult <ResultReport> Diff() { if (!ModelState.IsValid) { return(BadRequest()); } var response = new ResultReport(); var leftFile = $"{Directory.GetCurrentDirectory()}\\inputs\\left"; var rightFile = $"{Directory.GetCurrentDirectory()}\\inputs\\right"; var fileComparer = new DataComparer(); // Verifica se os dados são de diferente tamanho. if (!fileComparer.CompareLenght(leftFile, rightFile)) { response.Report = ReportEnum.DadosDiferentes; } // Comparar cada byte, já que são do mesmo tamanho. response = fileComparer.CompareBytes(leftFile, rightFile); return(Ok(response)); }
static SerializerPipeline() { #if DEBUG s_AssemblyBuilder = AssemblyBuilder.DefineDynamicAssembly(new AssemblyName(Resources.SerializerAssemblyName), AssemblyBuilderAccess.RunAndSave); s_ModuleBuilder = s_AssemblyBuilder.DefineDynamicModule(Resources.SerializerModuleName, Resources.SerializerAssemblyName); #else AssemblyBuilder builder = AssemblyBuilder.DefineDynamicAssembly(new AssemblyName(Resources.SerializerAssemblyName), AssemblyBuilderAccess.Run); s_ModuleBuilder = builder.DefineDynamicModule(Resources.SerializerModuleName); #endif s_TypeAttributes = TypeAttributes.Class | TypeAttributes.Sealed | TypeAttributes.Public; s_FieldBindingFlags = BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic; s_MessageCallbackBindingFlags = BindingFlags.Public | BindingFlags.Instance; s_InterfaceTypeArray = new Type[1]; s_FieldData = new List <FieldData>(10); s_MethodData = new List <MethodData>(2); s_Progress = new SerializerGenerationProgress[] { new CtorDefineProgress(), new SerializeMethodDefineProgress(), new DeserializeMethodDefineProgress() }; s_Comparer = new DataComparer(); }
public void A_TestInitialise() { _comparer = IoC.Container.GetInstance <DataComparer>(); _left = Tables.Default; _right = Tables.Default; Randomizer.Seed = new Random(1234566789); }
private SingleServerSearchTask GetCurrent(OrderSelectTask orderSelectTask, List <SingleServerSearchTask> searchTasks, OrderType orderType) { SingleServerSearchTask current = searchTasks.FirstOrDefault(x => !(x.IsAllDataRead && x.Length == 0)); if (current == null) { return(null); } foreach (var searchTask in searchTasks) { if (searchTask.IsAllDataRead && searchTask.Length == 0) { continue; } if (orderType == OrderType.Desc && DataComparer.Compare(current.GetData(), searchTask.GetData(), orderSelectTask.ScriptDescription) < 0) { current = searchTask; } if (orderType == OrderType.Asc && DataComparer.Compare(current.GetData(), searchTask.GetData(), orderSelectTask.ScriptDescription) > 0) { current = searchTask; } } return(current); }
private void ProcessData(string firstFileData, string secondFileData) { float[][] parsedFirstFileData = (JsonConvert.DeserializeObject(firstFileData) as JArray).ToObject <float[][]>(); float[][] parsedSecondFileData = (JsonConvert.DeserializeObject(secondFileData) as JArray).ToObject <float[][]>(); string source, target; Score.Text = DataComparer.CompareFileData(parsedFirstFileData, parsedSecondFileData, out source, out target); var sb = new StringBuilder(); var sourceList = source.Split(' ').ToList(); sourceList.ForEach(s => sb.Append(s.PadRight(2))); sourceNotes.Text = sb.ToString(); sb.Clear(); var targetList = target.Split(' ').ToList(); targetList.ForEach(s => sb.Append(s.PadRight(2))); targetNotes.Text = sb.ToString(); }
private void startBackup(int jobId, string source, string destination) { DataComparer comparer = new DataComparer(); FolderEntry sourceFolder = comparer.IndexDirectory(source); FolderEntry destinationFolder = comparer.IndexDirectory(destination); comparer.progress += Comparer_progress; comparer.SyncFolders(jobId, sourceFolder, destinationFolder); }
public void DeepClone(DataSet originalDataset) { DataSet cloned = originalDataset.DeepClone(); // Compare bool deepEquals = DataComparer.DataSetsEqual(originalDataset, cloned); bool referenceEquals = originalDataset == cloned; Assert.That(deepEquals, Is.True); Assert.That(referenceEquals, Is.False); }
public override bool GetCondition() { if (_values.Count == 0) { return(true); } if (_values.Count < 2) { throw new Exception(((XmlConditionTypes)_conditionType).ToString() + " 요소에는 반드시 Value 요소가 2개이상 들어가야 합니다."); } IXmlComponent loadingComponent = XmlComponent.NowLoading; for (int i = 1; i < _values.Count; i++) { String value1 = (_values[i].IsVariable) ? GetValue(_values[i].Value).ToString() : _values[i].Value; String value2 = (_values[i - 1].IsVariable) ? GetValue(_values[i - 1].Value).ToString() : _values[i - 1].Value; value1 = (_values[i].IsComponent) ? GetComponentValue(_values[i].Value) : _values[i].Value; value2 = (_values[i - 1].IsComponent) ? GetComponentValue(_values[i - 1].Value) : _values[i - 1].Value; String value1Type = _values[i].TypeName; String value2Type = _values[i - 1].TypeName; switch (_conditionType) { case XmlConditionTypes.Equal: if (value1.Trim().Equals(value2.Trim("\t \n\r".ToCharArray())) == false) { return(false); } break; case XmlConditionTypes.More: if (DataComparer.Minus(value1Type, value1, value2Type, value2) <= 0) { return(false); } break; case XmlConditionTypes.MoreOrEqual: if (DataComparer.Minus(value1Type, value1, value2Type, value2) < 0) { return(false); } break; default: break; } } return(true); }
private void ReadSameValue(OrderSelectTask orderSelectTask, List <SingleServerSearchTask> searchTasks, SearchData searchData) { foreach (var searchTask in searchTasks) { if (!searchTask.IsAllDataRead && searchTask.Length > 0 && DataComparer.Compare(searchTask.GetData(), searchData, orderSelectTask.ScriptDescription) == 0) { searchTask.IncrementPosition(); } } }
public void SerializationDeserialization(DataSet originalDataset) { // Serialize System.Data.DataSet to json string string jsonString = originalDataset.ToJSON(); // --> Transfer json string using (e.g.) HTTP transport --> // Deserialize back to System.Data.DataSet DataSet restoredDataSet = jsonString.ToDataSet(); // Compare bool equals = DataComparer.DataSetsEqual(originalDataset, restoredDataSet); Assert.That(equals, Is.True); }
public static IProvider Get(FileOptionsFromClause fileOptions, DataComparer dataComparer) { string fileName; if (fileOptions.FileName is ConstExpression<DataString>) fileName = fileOptions.FileName.EvaluateAsData (null).ToDataString (dataComparer.CultureInfo); else fileName = null; IProvider provider; if (fileName == null || fileName.Contains ("*") || fileName.Contains ("?") || fileOptions.Recurse) { provider = new MultiFileProvider ( fileOptions, dataComparer); } else { provider = Get (fileName, fileOptions.Skip); } return provider; }
public void RetornarTrueParaArquivosComMesmoTamanho() { // Arranje var guid = Guid.NewGuid(); var nameLeft = $"left-test-{guid}"; var nameRight = $"right-test-{guid}"; FileHelper.SaveData("dGlueQ==", nameLeft); FileHelper.SaveData("dGlueQ==", nameRight); var dc = new DataComparer(); var leftData = $"{Directory.GetCurrentDirectory()}\\inputs\\{nameLeft}"; var rightData = $"{Directory.GetCurrentDirectory()}\\inputs\\{nameRight}"; // Act var result = dc.CompareLenght(leftData, rightData); // Assert Assert.True(result); }
public void RetornaReportComOffsetsParaDadosDiferentesComMesmoTamanho() { // Arranje var guid = Guid.NewGuid(); var nameLeft = $"left-test-{guid}"; var nameRight = $"right-test-{guid}"; FileHelper.SaveData("dGlueQ==", nameLeft); FileHelper.SaveData("dGlxeQ==", nameRight); var dc = new DataComparer(); var leftData = $"{Directory.GetCurrentDirectory()}\\inputs\\{nameLeft}"; var rightData = $"{Directory.GetCurrentDirectory()}\\inputs\\{nameRight}"; // Act var result = dc.CompareBytes(leftData, rightData); // Assert Assert.True(result.OffsetDifferences.Any()); }
public void RetornaReportDadosIguaisParaDadosIguais() { // Arranje var guid = Guid.NewGuid(); var nameLeft = $"left-test-{guid}"; var nameRight = $"right-test-{guid}"; FileHelper.SaveData("dGlueQ==", nameLeft); FileHelper.SaveData("dGlueQ==", nameRight); var dc = new DataComparer(); var leftData = $"{Directory.GetCurrentDirectory()}\\inputs\\{nameLeft}"; var rightData = $"{Directory.GetCurrentDirectory()}\\inputs\\{nameRight}"; // Act var result = dc.CompareBytes(leftData, rightData); // Assert Assert.True(result.Report == ReportEnum.DadosIguais); }
public static void Main() { var list1 = new List <Data> { new Data("63245-8", 10), new Data("08657-5", 100), new Data("29995-0", 500), new Data("12345-0", 42) }; var list2 = new List <Data> { new Data("63245-8", 100), new Data("12345-0", 42), new Data("67455-1", 100), new Data("44187-10", 50), }; var comparer = new DataComparer(); var newItems = list2.Except(list1, comparer); // The second list without items from the first list = new items. var deletedItems = list1.Except(list2, comparer); // The first list without items from the second list = deleted items. var keptItems = list2.Intersect(list1, comparer); // Items in both lists = kept items (but note: Amount may have changed). List <ComparedData> result = new List <ComparedData>(); result.AddRange(newItems.Select(item => new ComparedData(item, ComparisonState.New, 0))); result.AddRange(deletedItems.Select(item => new ComparedData(item, ComparisonState.Deleted, 0))); // For each item in the kept list, determine if it changed by comparing it to the first list. // Note that the "list1.Find()` is an O(N) operation making this quite slow. // You could speed it up for large collections by putting list1 into a dictionary and looking items up in it - // but this is unlikely to be needed for smaller collections. result.AddRange(keptItems.Select(item => { var previous = list1.Find(other => other.Serial == item.Serial); return(new ComparedData(item, item.Amount == previous.Amount ? ComparisonState.Unchanged : ComparisonState.Changed, previous.Amount)); })); // Print the result, for illustration. foreach (var item in result) { Console.WriteLine(item); } }
public JsonResult DataCompare(string type, Guid oldVersion, Guid newVersion) { try { var oldGuid = oldVersion; var newGuid = newVersion; object a, d, c; switch (type.ToLower()) { default: throw new NotImplementedException(); case "card": { var oldData = new GameDataManager.CardDataManager(oldGuid).Preload(); var newData = new GameDataManager.CardDataManager(newGuid).Preload(); DataComparer.CardDataComparer(oldData, newData, out List <string> added, out List <string> deleted, out Dictionary <string, Dictionary <string, string[]> > changed); a = added.Select(m => newData.First(n => n.CardId.ToString() == m).CardName); d = deleted.Select(m => oldData.First(n => n.CardId.ToString() == m).CardName); c = changed; break; } case "rune": { var oldData = new GameDataManager.RuneDataManager(oldGuid).Preload(); var newData = new GameDataManager.RuneDataManager(newGuid).Preload(); DataComparer.RuneDataComparer(oldData, newData, out List <string> added, out List <string> deleted, out Dictionary <string, Dictionary <string, string[]> > changed); a = added.Select(m => newData.First(n => n.RuneId.ToString() == m).RuneName); d = deleted.Select(m => oldData.First(n => n.RuneId.ToString() == m).RuneName); c = changed; break; } case "skill": { var oldData = new GameDataManager.SkillDataManager(oldGuid).Preload(); var newData = new GameDataManager.SkillDataManager(newGuid).Preload(); DataComparer.SkillDataComparer(oldData, newData, out List <string> added, out List <string> deleted, out Dictionary <string, Dictionary <string, string[]> > changed); a = added.Select(m => newData.First(n => n.SkillId.ToString() == m).Name); d = deleted.Select(m => oldData.First(n => n.SkillId.ToString() == m).Name); c = changed; break; } //case "mapstage": // { // var oldData = RawMapStageData.ParseJsonString(dbContext.GameDataFiles.First(m => m.Id == oldGuid).FileContent).Select(m => new ParsedMapStageData(m)).ToList(); // var newData = RawMapStageData.ParseJsonString(dbContext.GameDataFiles.First(m => m.Id == newGuid).FileContent).Select(m => new ParsedMapStageData(m)).ToList(); // DataComparer.MapStageDataComparer(oldData, newData, out List<string> added, out List<string> deleted, out Dictionary<string, Dictionary<string, string[]>> changed); // a = added; // d = deleted; // c = changed; // break; // } case "keyword": { var oldData = new GameDataManager.KeywordDataManager(oldGuid).Preload(); var newData = new GameDataManager.KeywordDataManager(newGuid).Preload(); DataComparer.KeywordDataComparer(oldData, newData, out List <string> added, out List <string> deleted, out Dictionary <string, string> changed); a = added.Select(m => newData.First(n => n.key.ToString() == m).key); d = deleted.Select(m => oldData.First(n => n.key.ToString() == m).key); c = changed; break; } } return(new JsonResult(new { success = true, added = a, deleted = d, changed = c, })); } catch (Exception e) { return(new JsonResult(new { success = false, message = new { e.GetBaseException().Message, e.GetBaseException().Source, e.GetBaseException().StackTrace, }, })); } }
public DistinctProvider(IProvider provider, DataComparer dataComparer) { this.provider = provider; this.dataComparer = dataComparer; }
public async void ButtonClickCommandHandler(object param) { switch (param.ToString()) { case "GetFile": IsReadyToCompare = false; if (SelectedItemUser1CmbBox != "" && SelectedItemUser1CmbBox != null && SelectedItemUser2CmbBox != "" && SelectedItemUser2CmbBox != null) { if (SelectedItemUser1CmbBox == SelectedItemUser2CmbBox) { System.Windows.MessageBox.Show("Selected participants are same.Please choose different users to compare"); } else { //FileLoc1 = AppInitializer.GetFileLocation(SelectedItemUser1CmbBox); //FileLoc2 = AppInitializer.GetFileLocation(SelectedItemUser2CmbBox); FileLoc1 = AppInitializer.FileLocation1; FileLoc2 = AppInitializer.FileLocation2; if (FileLoc1.Length > 0 && FileLoc2.Length > 0) { IsReadyToCompare = true; IsCacheSet = true; } } } else { System.Windows.MessageBox.Show("Participants aren't properly loaded"); } break; case "Compare": DataComparer.FileReaderObj.User1DataObsrvColl.Clear(); DataComparer.FileReaderObj.User2DataObsrvColl.Clear(); ResultSetObsrvColl.Clear(); PercentageThroughPutUser1 = ""; PercentageThroughPutUser2 = ""; if (SelectedItemUser1CmbBox != "" && SelectedItemUser1CmbBox != null && SelectedItemUser2CmbBox != "" && SelectedItemUser2CmbBox != null) { ProgressDialogController controller = await dialogCoordinator.ShowProgressAsync(this, "Please Wait...Comparing participants", "Comparing participants"); if (IsDataFromFileSelectedRadioBtnFlag) { #region #Loading data from Xml or txt file // ProgressDialogController controller = await dialogCoordinator.ShowProgressAsync(this, "Please Wait...Comparing participants", "Comparing participants"); controller.SetIndeterminate(); controller.SetMessage("loading data for both participants."); await Task.Delay(1000); bool loadingDataForUser1 = DataComparer.FileReaderObj.LoadDataForUser(1, FileLoc1, true); #region #When 2nd participant is Console if (SelectedItemUser2CmbBox != "" && SelectedItemUser2CmbBox == "Console") { loadDataForUser2 = DataComparer.FileReaderObj.LoadDataForUser(3, FileLoc2, true); await Task.Delay(1000); controller.SetMessage("data has been loaded for both participants."); await Task.Delay(1000); controller.SetMessage("displaying result..."); await Task.Delay(1000); ResultSetObsrvColl = DataComparer.GetFinalResultSet(DataComparer.FileReaderObj.User1DataObsrvColl, DataComparer.FileReaderObj.ConsoleObsrvColl, false, true, "IsComparisonWithConsole"); int user2Count = 0; int user1Count = DataComparer.GetPercentage(ResultSetObsrvColl, SelectedItemUser1CmbBox, out user2Count); //PercentageThroughPutUser1 = SelectedItemUser1CmbBox + " % : " + DataComparer.GetPercentage(DataComparer.user1Counter, ResultSetObsrvColl.Count); PercentageThroughPutUser1 = SelectedItemUser1CmbBox + " % : " + DataComparer.GetPercentage(user1Count, ResultSetObsrvColl.Count) + " Total Matches : " + user1Count + " | " + ResultSetObsrvColl.Count; PercentageThroughPutUser2 = SelectedItemUser2CmbBox + " % : " + DataComparer.GetPercentage(user2Count, ResultSetObsrvColl.Count) + " Total Matches : " + user2Count + " | " + ResultSetObsrvColl.Count; await controller.CloseAsync(); } #endregion #region #When 2nd participant is Quantum user else if (SelectedItemUser2CmbBox != "" && SelectedItemUser2CmbBox != "Console" && SelectedItemUser2CmbBox != "Console_NSE") { loadDataForUser2 = DataComparer.FileReaderObj.LoadDataForUser(2, FileLoc2, true); await Task.Delay(1000); controller.SetMessage("data has been loaded for both participants."); await Task.Delay(1000); controller.SetMessage("displaying result..."); await Task.Delay(1000); ResultSetObsrvColl = DataComparer.GetFinalResultSet(DataComparer.FileReaderObj.User1DataObsrvColl, DataComparer.FileReaderObj.User2DataObsrvColl, false, true, "IsComparisonWithQuantum"); int user2Count = 0; int user1Count = DataComparer.GetPercentage(ResultSetObsrvColl, SelectedItemUser1CmbBox, out user2Count); //PercentageThroughPutUser1 = SelectedItemUser1CmbBox + " % : " + DataComparer.GetPercentage(DataComparer.user1Counter, ResultSetObsrvColl.Count); PercentageThroughPutUser1 = SelectedItemUser1CmbBox + " % : " + DataComparer.GetPercentage(user1Count, ResultSetObsrvColl.Count) + " Total Matches : " + user1Count + " | " + ResultSetObsrvColl.Count; PercentageThroughPutUser2 = SelectedItemUser2CmbBox + " % : " + DataComparer.GetPercentage(user2Count, ResultSetObsrvColl.Count) + " Total Matches : " + user2Count + " | " + ResultSetObsrvColl.Count; await controller.CloseAsync(); } #endregion else { System.Windows.MessageBox.Show("Error in selection made for the users OR there aren't any matches available in db for users " + SelectedItemUser1CmbBox + " | " + SelectedItemUser2CmbBox); await controller.CloseAsync(); } #endregion } else if (IsDataFromDbAndFileRadioBtnFlag) { #region #When data is from db and file controller.SetIndeterminate(); controller.SetMessage("loading data for both participants."); await Task.Delay(1000); bool loadingDataForUser1 = DataComparer.FileReaderObj.LoadDataForUserFromDataBase(Convert.ToInt16(SelectedItemUser1CmbBox.Remove(0, 1)), SelectedDateFrom, SelectedDateTo, 1, IsLive); if (SelectedItemUser2CmbBox != "" && SelectedItemUser2CmbBox == "Console_NSE") { loadDataForUser2 = DataComparer.FileReaderObj.LoadDataForUser(5, FileLoc2, true); await Task.Delay(1000); controller.SetMessage("data has been loaded for both participants."); await Task.Delay(1000); controller.SetMessage("displaying result..."); await Task.Delay(1000); ResultSetObsrvColl = DataComparer.GetFinalResultSet(DataComparer.FileReaderObj.User1DataObsrvColl, DataComparer.FileReaderObj.ConsoleObsrvColl, false, true, "IsComparisonWithConsole_NSE"); int user2Count = 0; int user1Count = DataComparer.GetPercentage(ResultSetObsrvColl, SelectedItemUser1CmbBox, out user2Count); //PercentageThroughPutUser1 = SelectedItemUser1CmbBox + " % : " + DataComparer.GetPercentage(DataComparer.user1Counter, ResultSetObsrvColl.Count); PercentageThroughPutUser1 = SelectedItemUser1CmbBox + " % : " + DataComparer.GetPercentage(user1Count, ResultSetObsrvColl.Count) + " Total Matches : " + user1Count + " | " + ResultSetObsrvColl.Count; PercentageThroughPutUser2 = SelectedItemUser2CmbBox + " % : " + DataComparer.GetPercentage(user2Count, ResultSetObsrvColl.Count) + " Total Matches : " + user2Count + " | " + ResultSetObsrvColl.Count; await controller.CloseAsync(); } #endregion } else if (IsDataFromDbSelectedRadioBtnFlag) { #region #Loading data from database // ProgressDialogController controller = await dialogCoordinator.ShowProgressAsync(this, "Please Wait...Comparing participants", "Comparing participants"); controller.SetIndeterminate(); controller.SetMessage("loading data for both participants."); await Task.Delay(1000); //bool loadingDataForUser1 = DataComparer.FileReaderObj.LoadDataForUser(1, FileLoc1, true); bool loadingDataForUser1 = DataComparer.FileReaderObj.LoadDataForUserFromDataBase(Convert.ToInt16(SelectedItemUser1CmbBox.Remove(0, 1)), SelectedDateFrom, SelectedDateTo, 1, IsLive); if (SelectedItemUser2CmbBox != "" && SelectedItemUser2CmbBox != "Console" && loadingDataForUser1) { loadDataForUser2 = DataComparer.FileReaderObj.LoadDataForUserFromDataBase(Convert.ToInt16(SelectedItemUser2CmbBox.Remove(0, 1)), SelectedDateFrom, SelectedDateTo, 2, IsLive); await Task.Delay(1000); controller.SetMessage("data has been loaded for both participants."); await Task.Delay(1000); controller.SetMessage("displaying result..."); await Task.Delay(1000); ResultSetObsrvColl = DataComparer.GetFinalResultSet(DataComparer.FileReaderObj.User1DataObsrvColl, DataComparer.FileReaderObj.User2DataObsrvColl, false, true, "IsComparisonWithQuantum"); int user2Count = 0; int user1Count = DataComparer.GetPercentage(ResultSetObsrvColl, SelectedItemUser1CmbBox, out user2Count); //PercentageThroughPutUser1 = SelectedItemUser1CmbBox + " % : " + DataComparer.GetPercentage(DataComparer.user1Counter, ResultSetObsrvColl.Count); PercentageThroughPutUser1 = SelectedItemUser1CmbBox + " % : " + DataComparer.GetPercentage(user1Count, ResultSetObsrvColl.Count) + " Total Matches : " + user1Count + " | " + ResultSetObsrvColl.Count; PercentageThroughPutUser2 = SelectedItemUser2CmbBox + " % : " + DataComparer.GetPercentage(user2Count, ResultSetObsrvColl.Count) + " Total Matches : " + user2Count + " | " + ResultSetObsrvColl.Count; await controller.CloseAsync(); } else { System.Windows.MessageBox.Show("Error in selection made for the users OR there aren't result available in db for user : "******" | " + SelectedItemUser2CmbBox); await controller.CloseAsync(); } #endregion } else { await controller.CloseAsync(); System.Windows.MessageBox.Show("Radiobutton is not selected"); } } else { System.Windows.MessageBox.Show("Participants aren't properly loaded"); } if (DataComparer.FileReaderObj.ListOfErrorneousConsoleRecord.Count > 0) { foreach (var item in DataComparer.FileReaderObj.ListOfErrorneousConsoleRecord) { System.Windows.MessageBox.Show(item); } } break; case "Cache": #region #Loading Cahce from database DataComparer.FileReaderObj.User1DataObsrvColl.Clear(); DataComparer.FileReaderObj.User2DataObsrvColl.Clear(); ResultSetObsrvColl.Clear(); PercentageThroughPutUser1 = ""; PercentageThroughPutUser2 = ""; ProgressDialogController controller_buildCache = await dialogCoordinator.ShowProgressAsync(this, "Please Wait...", "building cache"); controller_buildCache.SetIndeterminate(); controller_buildCache.SetMessage("Building cache from all the fetched records"); await Task.Delay(1000); if (SelectedDateTo != null && SelectedDateTo != "" && SelectedDateFrom != null && SelectedDateFrom != "") { bool loadCache = DataComparer.FileReaderObj.LoadDataForUserFromDataBase(3, SelectedDateFrom, SelectedDateTo, 3, IsLive); if (loadCache) { controller_buildCache.SetMessage("Cahche download finished. Dowloaded records within the selected date range is : " + DataComparer.FileReaderObj.UserDataReaderDataBase.AlphaDataTable.Rows.Count); await Task.Delay(2000); controller_buildCache.SetMessage("System ready for comparison"); if (DataComparer.FileReaderObj.UserDataReaderDataBase.AlphaDataTable.Rows.Count > 0) { IsCacheSet = true; } await Task.Delay(1000); await controller_buildCache.CloseAsync(); } else { controller_buildCache.SetMessage("Failed to load cache."); await Task.Delay(1000); await controller_buildCache.CloseAsync(); } } else { controller_buildCache.SetMessage("Problem encountered with selected dates.Kindly check selected date ranges."); await Task.Delay(1000); await controller_buildCache.CloseAsync(); } #endregion break; } }
public MultiFileProvider(FileOptionsFromClause fileOptions, DataComparer dataComparer) { this.fileOptions = fileOptions; this.dataComparer = dataComparer; }
public void A_TestSetup() { _comparer = IoC.Container.GetInstance <DataComparer>(); left = Tables.Default; right = Tables.Default; }