From e6037e878b300b4dfc21b2497c3b580d67bee21e Mon Sep 17 00:00:00 2001 From: Markus Quaritsch <markus.quaritsch@tugraz.at> Date: Wed, 6 Dec 2017 16:33:16 +0100 Subject: [PATCH] also compare tabledata --- VECTO/MainModule.vb | 5 ++- VectoCore/VectoCoreTest/Utils/AssertHelper.cs | 35 +++++++++++++++++-- 2 files changed, 37 insertions(+), 3 deletions(-) diff --git a/VECTO/MainModule.vb b/VECTO/MainModule.vb index ae7a4e1282..25f0781d0d 100644 --- a/VECTO/MainModule.vb +++ b/VECTO/MainModule.vb @@ -60,9 +60,12 @@ Module MainModule End Function Public Function GetRelativePath(filePath As String, basePath As String) As String - If (String.IsNullOrEmpty(filePath) OrElse String.IsNullOrEmpty(basePath)) Then + If (String.IsNullOrEmpty(filePath)) then Return "" End If + If (string.isnullOrempty(basePath)) Then + Return filePath + End If If (Path.GetDirectoryName(filePath).StartsWith(basePath, StringComparison.OrdinalIgnoreCase)) Then Return Path.GetFullPath(filePath).Substring(basePath.Length + If(basePath.EndsWith("\"), 0, 1)) End If diff --git a/VectoCore/VectoCoreTest/Utils/AssertHelper.cs b/VectoCore/VectoCoreTest/Utils/AssertHelper.cs index c0f2f2f394..6fbbabf2fe 100644 --- a/VectoCore/VectoCoreTest/Utils/AssertHelper.cs +++ b/VectoCore/VectoCoreTest/Utils/AssertHelper.cs @@ -32,6 +32,7 @@ using System; using System.Collections; using System.Collections.Generic; +using System.Data; using System.Diagnostics; using System.Globalization; using System.Linq; @@ -153,8 +154,8 @@ namespace TUGraz.VectoCore.Tests.Utils if (expectedEnumerable.Length > 0) { IterateElements(expectedEnumerable, actualEnumerable, ignoredProperties); } - } else if(propertyType == typeof(TableData)) { - // todo! + } else if(propertyType == typeof(TableData)) { + TableDataEquals(expectedVal as TableData, actualVal as TableData); } else { PublicPropertiesEqual(propertyType, expectedVal, actualVal, ignoredProperties); } @@ -162,6 +163,36 @@ namespace TUGraz.VectoCore.Tests.Utils } + private static void TableDataEquals(TableData expected, TableData actual) + { + Assert.NotNull(expected); + Assert.NotNull(actual); + + Assert.AreEqual(expected.Columns.Count, actual.Columns.Count); + Assert.AreEqual(expected.Rows.Count, actual.Rows.Count); + + foreach (DataColumn expectedCol in expected.Columns) { + Assert.NotNull(actual.Columns[expectedCol.ColumnName]); + } + + //foreach (DataRow row in expected.Rows) { + for (var i = 0 ; i< expected.Rows.Count; i++) { + var expectedRow = expected.Rows[i]; + var actualRow = actual.Rows[i]; + foreach (DataColumn col in expected.Columns) { + var value = expectedRow[col]; + if (value is ConvertedSI) { + Assert.AreEqual((value as ConvertedSI).Value, (actualRow[col] as ConvertedSI).Value); + } + if (value.GetType().IsPrimitive) { + Assert.AreEqual(value, actualRow[col]); + } + } + } + //CollectionAssert.AreEqual(expected.Rows, actual.Rows); + + } + private static void IterateElements(IEnumerable<object> expected, IEnumerable<object> actual, string[] ignoredProperties = null) { foreach (var entry in expected.Zip(actual, Tuple.Create)) { -- GitLab