Free cookie consent management tool by TermsFeed Policy Generator

source: addons/HeuristicLab.PushGP/HeuristicLab.Tests/Interpreter/Expressions/IntegerVectorExpressionTests.cs @ 15822

Last change on this file since 15822 was 15017, checked in by pkimmesw, 7 years ago

#2665 Fixed Benchmark Problem Definition, Converted LoopExpressions to stateless expressions, Added several unit test to ensure funcionality, Fixed UI bugs

File size: 1.2 KB
Line 
1using System.Collections.Generic;
2using System.Linq;
3
4namespace HeuristicLab.Tests.Interpreter.Expressions {
5  using HeuristicLab.Problems.ProgramSynthesis.Push.Stack;
6
7  using Microsoft.VisualStudio.TestTools.UnitTesting;
8
9  [TestClass]
10  public class IntegerVectorExpressionTests : VectorExpressionTests<long> {
11    protected override string TypeName { get { return "INTEGER[]"; } }
12
13    protected override IPushStack<IReadOnlyList<long>> Stack { get { return interpreter.IntegerVectorStack; } }
14    protected override IPushStack<long> LiteralStack { get { return interpreter.IntegerStack; } }
15
16    protected override IReadOnlyList<long>[] GetValues(int count) {
17      return Enumerable
18        .Range(0, count)
19        .Select(x => GetLiterals(interpreter.Configuration.MaxVectorLength / 2 - 1))
20        .ToArray();
21    }
22
23    protected override IReadOnlyList<long> GetLiterals(int count) {
24      return Enumerable
25        .Range(0, count)
26        .Select(x => (long)interpreter.Configuration.ErcOptions.IntegerErcOptions.GetErcValue(interpreter.Random))
27        .ToArray();
28    }
29
30    protected override void CheckOtherStacksAreEmpty() {
31      TestStackCounts(integerVectorStack: null);
32    }
33  }
34}
Note: See TracBrowser for help on using the repository browser.