From f4088029b486a04abf1598dd4ffcb2fe8d1fa6b8 Mon Sep 17 00:00:00 2001
From: Markus Quaritsch <markus.quaritsch@tugraz.at>
Date: Fri, 5 May 2017 09:52:12 +0200
Subject: [PATCH] report a component multiple times if multiple instances exist

---
 VectoCommon/VectoHashing/VectoHash.cs         | 6 ++----
 VectoCommon/VectoHashingTest/VectoHashTest.cs | 2 +-
 2 files changed, 3 insertions(+), 5 deletions(-)

diff --git a/VectoCommon/VectoHashing/VectoHash.cs b/VectoCommon/VectoHashing/VectoHash.cs
index d75be998d0..699c7b75b8 100644
--- a/VectoCommon/VectoHashing/VectoHash.cs
+++ b/VectoCommon/VectoHashing/VectoHash.cs
@@ -54,10 +54,8 @@ namespace TUGraz.VectoHashing
 		{
 			var retVal = new List<VectoComponents>();
 			foreach (var component in EnumHelper.GetValues<VectoComponents>()) {
-				if (Navigator.Select(string.Format("//*[local-name()='{0}']", component.XMLElementName()), Manager).Count == 0) {
-					continue;
-				}
-				if (!retVal.Contains(component)) {
+				var count = Navigator.Select(string.Format("//*[local-name()='{0}']", component.XMLElementName()), Manager).Count;
+				for (var i = 0; i < count; i++) {
 					retVal.Add(component);
 				}
 			}
diff --git a/VectoCommon/VectoHashingTest/VectoHashTest.cs b/VectoCommon/VectoHashingTest/VectoHashTest.cs
index ae10e8e7ae..3f1a5a438c 100644
--- a/VectoCommon/VectoHashingTest/VectoHashTest.cs
+++ b/VectoCommon/VectoHashingTest/VectoHashTest.cs
@@ -27,7 +27,7 @@ namespace VectoHashingTest
 			var h = VectoHash.Load(ReferenceXMLVehicle);
 			var components = h.GetContainigComponents().ToList();
 
-			Assert.AreEqual(9, components.Count);
+			Assert.AreEqual(10, components.Count);
 		}
 
 		[TestCase(ReferenceXMLEngine, VectoComponents.Engine, BasicHasingTests.HashEngineXML)]
-- 
GitLab