- Timestamp:
- 09/25/15 14:39:59 (9 years ago)
- Location:
- branches/gteufl
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/gteufl
- Property svn:ignore
-
old new 8 8 FxCopResults.txt 9 9 Google.ProtocolBuffers-0.9.1.dll 10 Google.ProtocolBuffers-2.4.1.473.dll 10 11 HeuristicLab 3.3.5.1.ReSharper.user 11 12 HeuristicLab 3.3.6.0.ReSharper.user 12 13 HeuristicLab.4.5.resharper.user 13 14 HeuristicLab.ExtLibs.6.0.ReSharper.user 15 HeuristicLab.Scripting.Development 14 16 HeuristicLab.resharper.user 15 17 ProtoGen.exe … … 17 19 _ReSharper.HeuristicLab 18 20 _ReSharper.HeuristicLab 3.3 21 _ReSharper.HeuristicLab 3.3 Tests 19 22 _ReSharper.HeuristicLab.ExtLibs 20 23 bin 21 24 protoc.exe 22 _ReSharper.HeuristicLab 3.3 Tests 23 Google.ProtocolBuffers-2.4.1.473.dll 25 obj
-
- Property svn:mergeinfo changed
-
Property
svn:global-ignores
set to
*.nuget
packages
- Property svn:ignore
-
branches/gteufl/HeuristicLab.Tests
- Property svn:mergeinfo changed
-
branches/gteufl/HeuristicLab.Tests/HeuristicLab-3.3/DeepCloneableCloningTest.cs
r9955 r12969 1 1 #region License Information 2 2 /* HeuristicLab 3 * Copyright (C) 2002-201 3Heuristic and Evolutionary Algorithms Laboratory (HEAL)3 * Copyright (C) 2002-2015 Heuristic and Evolutionary Algorithms Laboratory (HEAL) 4 4 * 5 5 * This file is part of HeuristicLab. … … 25 25 using HeuristicLab.Common; 26 26 using HeuristicLab.Core; 27 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding; 27 28 using HeuristicLab.Optimization; 28 29 using HeuristicLab.Persistence.Default.Xml; … … 31 32 32 33 namespace HeuristicLab.Tests { 33 /// <summary>34 /// Summary description for DeepCloneableCloningTest35 /// </summary>36 34 [TestClass] 37 35 public class DeepCloneableCloningTest { 38 39 [ClassInitialize]40 public static void MyClassInitialize(TestContext testContext) {41 PluginLoader.Assemblies.Any();42 }43 44 36 private TestContext testContextInstance; 45 37 public TestContext TestContext { … … 49 41 50 42 public DeepCloneableCloningTest() { 51 excludedTypes = new HashSet<Type>(); 52 excludedTypes.Add(typeof(HeuristicLab.Problems.DataAnalysis.Dataset)); 53 excludedTypes.Add(typeof(HeuristicLab.Problems.TravelingSalesman.DistanceMatrix)); 54 excludedTypes.Add(typeof(HeuristicLab.Problems.DataAnalysis.ClassificationEnsembleSolution)); 55 excludedTypes.Add(typeof(HeuristicLab.Problems.DataAnalysis.RegressionEnsembleSolution)); 43 excludedTypes = new HashSet<Type> { 44 typeof (HeuristicLab.Problems.DataAnalysis.Dataset), 45 typeof (HeuristicLab.Problems.TravelingSalesman.DistanceMatrix), 46 typeof (HeuristicLab.Problems.DataAnalysis.ClassificationEnsembleSolution), 47 typeof (HeuristicLab.Problems.DataAnalysis.RegressionEnsembleSolution), 48 typeof (HeuristicLab.Problems.Orienteering.DistanceMatrix) 49 }; 50 excludedTypes.Add(typeof(SymbolicExpressionGrammar).Assembly.GetType("HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.EmptySymbolicExpressionTreeGrammar")); 56 51 57 52 foreach (var symbolType in ApplicationManager.Manager.GetTypes(typeof(HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Symbol))) … … 94 89 try { 95 90 item = (IDeepCloneable)Activator.CreateInstance(deepCloneableType, nonPublic: false); 96 } 97 catch { continue; } // no default constructor 91 } catch { continue; } // no default constructor 98 92 99 93 IDeepCloneable clone = null; 100 94 try { 101 95 clone = (IDeepCloneable)item.Clone(new Cloner()); 102 } 103 catch (Exception e) { 96 } catch (Exception e) { 104 97 TestContext.WriteLine(Environment.NewLine + deepCloneableType.FullName + ":"); 105 98 TestContext.WriteLine("ERROR! " + e.GetType().Name + @" was thrown during cloning. … … 126 119 private bool ProcessEqualObjects(IDeepCloneable item, IEnumerable<object> intersections) { 127 120 bool success = true; 128 TestContext.WriteLine(Environment.NewLine + item.GetType().FullName + ":"); 121 bool headerWritten = false; 122 129 123 foreach (object o in intersections) { 130 124 string typeName = o.GetType().FullName; … … 133 127 } else if (o is IDeepCloneable) { 134 128 string info = (o is IItem) ? ((IItem)o).ItemName + ((o is INamedItem) ? ", " + ((INamedItem)o).Name : String.Empty) : String.Empty; 129 if (!headerWritten) { 130 TestContext.WriteLine(Environment.NewLine + item.GetType().FullName + ":"); 131 headerWritten = true; 132 } 135 133 TestContext.WriteLine("POTENTIAL ERROR! A DEEPCLONEABLE WAS NOT DEEP CLONED (" + info + "): " + typeName); 136 134 success = false; 137 } else 135 } else { 136 Array array = o as Array; 137 if (array != null && array.Length == 0) continue; //arrays of length 0 are used inside empty collections 138 if (!headerWritten) { 139 TestContext.WriteLine(Environment.NewLine + item.GetType().FullName + ":"); 140 headerWritten = true; 141 } 138 142 TestContext.WriteLine("WARNING: An object of type " + typeName + " is referenced in the original and in the clone."); 143 } 139 144 } 140 145 return success;
Note: See TracChangeset
for help on using the changeset viewer.