Index: trunk/sources/HeuristicLab/3.3/Tests/GeneticAlgorithmSamplesTest.cs
===================================================================
--- trunk/sources/HeuristicLab/3.3/Tests/GeneticAlgorithmSamplesTest.cs	(revision 6442)
+++ trunk/sources/HeuristicLab/3.3/Tests/GeneticAlgorithmSamplesTest.cs	(revision 6468)
@@ -28,6 +28,22 @@
   [TestClass]
   public class GeneticAlgorithmSamplesTest {
-    [TestMethod]
-    public void CreateTSPSample() {
+    #region TSP
+    [TestMethod]
+    public void CreateTSPSampleTest() {
+      var ga = CreateTSPSample();
+      XmlGenerator.Serialize(ga, "../../GA_TSP.hl");
+    }
+    [TestMethod]
+    public void RunTSPSampleTest() {
+      var ga = CreateTSPSample();
+      ga.SetSeedRandomly.Value = false;
+      RunAlgorithm(ga);
+      Assert.AreEqual(12332, GetDoubleResult(ga, "BestQuality"));
+      Assert.AreEqual(13123.2, GetDoubleResult(ga, "CurrentAverageQuality"));
+      Assert.AreEqual(14538, GetDoubleResult(ga, "CurrentWorstQuality"));
+      Assert.AreEqual(99100, GetIntResult(ga, "EvaluatedSolutions"));
+    }
+
+    private GeneticAlgorithm CreateTSPSample() {
       GeneticAlgorithm ga = new GeneticAlgorithm();
       #region problem configuration
@@ -64,11 +80,27 @@
         .Single(), false);
       #endregion
-
-      XmlGenerator.Serialize(ga, "../../GA_TSP.hl");
-
+      return ga;
+    }
+
+    #endregion
+    #region VRP
+    [TestMethod]
+    public void CreateVRPSampleTest() {
+      var ga = CreateVRPSample();
+      XmlGenerator.Serialize(ga, "../../GA_VRP.hl");
+    }
+
+    [TestMethod]
+    public void RunVRPSampleTest() {
+      var ga = CreateVRPSample();
+      ga.SetSeedRandomly.Value = false;
       RunAlgorithm(ga);
-    }
-    [TestMethod]
-    public void CreateVRPSample() {
+      Assert.AreEqual(1828.9368669428336, GetDoubleResult(ga, "BestQuality"));
+      Assert.AreEqual(1832.0882694567929, GetDoubleResult(ga, "CurrentAverageQuality"));
+      Assert.AreEqual(1948.386456294867, GetDoubleResult(ga, "CurrentWorstQuality"));
+      Assert.AreEqual(99100, GetIntResult(ga, "EvaluatedSolutions"));
+    }
+
+    private GeneticAlgorithm CreateVRPSample() {
       GeneticAlgorithm ga = new GeneticAlgorithm();
       #region problem configuration
@@ -129,12 +161,28 @@
         .Single(), true);
       #endregion
-
-      XmlGenerator.Serialize(ga, "../../GA_VRP.hl");
-
+      return ga;
+    }
+
+    #endregion
+    #region ArtificialAnt
+
+    [TestMethod]
+    public void CreateArtificialAntSampleTest() {
+      var ga = CreateArtificialAntSample();
+      XmlGenerator.Serialize(ga, "../../SGP_SantaFe.hl");
+    }
+
+    [TestMethod]
+    public void RunArtificialAntSampleTest() {
+      var ga = CreateArtificialAntSample();
+      ga.SetSeedRandomly.Value = false;
       RunAlgorithm(ga);
-    }
-
-    [TestMethod]
-    public void CreateArtificialAntSample() {
+      Assert.AreEqual(89, GetDoubleResult(ga, "BestQuality"));
+      Assert.AreEqual(79.834, GetDoubleResult(ga, "CurrentAverageQuality"));
+      Assert.AreEqual(0, GetDoubleResult(ga, "CurrentWorstQuality"));
+      Assert.AreEqual(100900, GetIntResult(ga, "EvaluatedSolutions"));
+    }
+
+    public GeneticAlgorithm CreateArtificialAntSample() {
       GeneticAlgorithm ga = new GeneticAlgorithm();
       #region problem configuration
@@ -167,12 +215,26 @@
         .Single(), false);
       #endregion
-
-      XmlGenerator.Serialize(ga, "../../SGP_SantaFe.hl");
-
+      return ga;
+    }
+
+    #endregion
+    #region symbolic regression
+    [TestMethod]
+    public void CreateSymbolicRegressionSampleTest() {
+      var ga = CreateSymbolicRegressionSample();
+      XmlGenerator.Serialize(ga, "../../SGP_SymbReg.hl");
+    }
+    [TestMethod]
+    public void RunSymbolicRegressionSampleTest() {
+      var ga = CreateSymbolicRegressionSample();
+      ga.SetSeedRandomly.Value = false;
       RunAlgorithm(ga);
-    }
-
-    [TestMethod]
-    public void CreateSymbolicRegressionSample() {
+      Assert.AreEqual(0.87577096276191879, GetDoubleResult(ga, "BestQuality"));
+      Assert.AreEqual(0.65140971696668726, GetDoubleResult(ga, "CurrentAverageQuality"));
+      Assert.AreEqual(0, GetDoubleResult(ga, "CurrentWorstQuality"));
+      Assert.AreEqual(100900, GetIntResult(ga, "EvaluatedSolutions"));
+    }
+
+    private GeneticAlgorithm CreateSymbolicRegressionSample() {
       GeneticAlgorithm ga = new GeneticAlgorithm();
       #region problem configuration
@@ -269,12 +331,27 @@
         .Single(), false);
       #endregion
-
-      XmlGenerator.Serialize(ga, "../../SGP_SymbReg.hl");
-
+      return ga;
+    }
+    #endregion
+    #region symbolic classification
+
+    [TestMethod]
+    public void CreateSymbolicClassificationSampleTest() {
+      var ga = CreateSymbolicClassificationSample();
+      XmlGenerator.Serialize(ga, "../../SGP_SymbClass.hl");
+    }
+
+    [TestMethod]
+    public void RunSymbolicClassificationSampleTest() {
+      var ga = CreateSymbolicClassificationSample();
+      ga.SetSeedRandomly.Value = false;
       RunAlgorithm(ga);
-    }
-
-    [TestMethod]
-    public void CreateSymbolicClassificationSample() {
+      Assert.AreEqual(0.1385094551576456, GetDoubleResult(ga, "BestQuality"));
+      Assert.AreEqual(2.8817699057253576, GetDoubleResult(ga, "CurrentAverageQuality"));
+      Assert.AreEqual(100.62175156249987, GetDoubleResult(ga, "CurrentWorstQuality"));
+      Assert.AreEqual(100900, GetIntResult(ga, "EvaluatedSolutions"));
+    }
+
+    private GeneticAlgorithm CreateSymbolicClassificationSample() {
       GeneticAlgorithm ga = new GeneticAlgorithm();
       #region problem configuration
@@ -366,9 +443,7 @@
         .Single(), false);
       #endregion
-
-      XmlGenerator.Serialize(ga, "../../SGP_SymbClass.hl");
-
-      RunAlgorithm(ga);
-    }
+      return ga;
+    }
+    #endregion
 
     private void ConfigureGeneticAlgorithmParameters<S, C, M>(GeneticAlgorithm ga, int popSize, int elites, int maxGens, double mutationRate, int tournGroupSize = 0)
@@ -413,4 +488,11 @@
       Assert.AreEqual(ex, null);
     }
+
+    private double GetDoubleResult(GeneticAlgorithm ga, string resultName) {
+      return ((DoubleValue)ga.Results[resultName].Value).Value;
+    }
+    private int GetIntResult(GeneticAlgorithm ga, string resultName) {
+      return ((IntValue)ga.Results[resultName].Value).Value;
+    }
   }
 }
