Free cookie consent management tool by TermsFeed Policy Generator

source: trunk/sources/HeuristicLab.Encodings.RealVector/3.3/Tests/UniformOnePositionManipulatorTest.cs @ 2936

Last change on this file since 2936 was 2936, checked in by svonolfe, 14 years ago

Added heuristic, local, random convex crossover and added some initial unit tests for all RealVector operators (#890)

File size: 3.5 KB
Line 
1#region License Information
2/* HeuristicLab
3 * Copyright (C) 2002-2010 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
4 *
5 * This file is part of HeuristicLab.
6 *
7 * HeuristicLab is free software: you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation, either version 3 of the License, or
10 * (at your option) any later version.
11 *
12 * HeuristicLab is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15 * GNU General Public License for more details.
16 *
17 * You should have received a copy of the GNU General Public License
18 * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
19 */
20#endregion
21
22using Microsoft.VisualStudio.TestTools.UnitTesting;
23using HeuristicLab.Encodings.RealVector;
24using HeuristicLab.Data;
25
26namespace HeuristicLab.Encodings.RealVector_33.Tests {
27  /// <summary>
28  ///This is a test class for UniformOnePositionManipulator and is intended
29  ///to contain all UniformOnePositionManipulator Unit Tests
30  ///</summary>
31  [TestClass()]
32  public class UniformOnePositionManipulatorTest {
33
34
35    private TestContext testContextInstance;
36
37    /// <summary>
38    ///Gets or sets the test context which provides
39    ///information about and functionality for the current test run.
40    ///</summary>
41    public TestContext TestContext {
42      get {
43        return testContextInstance;
44      }
45      set {
46        testContextInstance = value;
47      }
48    }
49
50    #region Additional test attributes
51    //
52    //You can use the following additional attributes as you write your tests:
53    //
54    //Use ClassInitialize to run code before running the first test in the class
55    //[ClassInitialize()]
56    //public static void MyClassInitialize(TestContext testContext)
57    //{
58    //}
59    //
60    //Use ClassCleanup to run code after all tests in a class have run
61    //[ClassCleanup()]
62    //public static void MyClassCleanup()
63    //{
64    //}
65    //
66    //Use TestInitialize to run code before running each test
67    //[TestInitialize()]
68    //public void MyTestInitialize()
69    //{
70    //}
71    //
72    //Use TestCleanup to run code after each test has run
73    //[TestCleanup()]
74    //public void MyTestCleanup()
75    //{
76    //}
77    //
78    #endregion
79
80
81    /// <summary>
82    ///A test for Apply
83    ///</summary>
84    [TestMethod()]
85    public void UniformOnePositionManipulatorApplyTest() {
86      TestRandom random = new TestRandom();
87      DoubleArrayData parent, expected;
88      DoubleData min, max;
89      // The following test is not based on published examples
90      random.Reset();
91      random.IntNumbers = new int[] { 3 };
92      random.DoubleNumbers = new double[] { 0.2 };
93      parent = new DoubleArrayData(new double[] { 0.2, 0.2, 0.3, 0.5, 0.1 });
94      expected = new DoubleArrayData(new double[] { 0.2, 0.2, 0.3, 0.3, 0.1 });
95      min = new DoubleData(0.2);
96      max = new DoubleData(0.7);
97      UniformOnePositionManipulator.Apply(random, parent, min, max);
98      Assert.IsTrue(Auxiliary.RealVectorIsAlmostEqualByPosition(expected, parent));
99    }
100
101    /// <summary>
102    ///A test for UniformOnePositionManipulator Constructor
103    ///</summary>
104    [TestMethod()]
105    public void UniformOnePositionManipulatorConstructorTest() {
106      UniformOnePositionManipulator target = new UniformOnePositionManipulator();
107    }
108  }
109}
Note: See TracBrowser for help on using the repository browser.