public void ConvertGenerationInstanceCompositionReturnsCorrectOutput() { var targetAlgorithmFactory = new TargetAlgorithmFactoryTest.DummyTargetAlgorithmFactory < TargetAlgorithmFactoryTest.DummyTargetAlgorithm <InstanceSeedFile, TestResult>, InstanceSeedFile, TestResult>() as ITargetAlgorithmFactory <TargetAlgorithmFactoryTest.DummyTargetAlgorithm <InstanceSeedFile, TestResult>, InstanceSeedFile, TestResult>; // Read generation instance composition from file and convert it. GrayBoxUtils.TryToReadGenerationCompositionFromFile( GrayBoxUtilsTest.GenerationInstanceCompositionFile, out var generationInstanceComposition).ShouldBeTrue(); var(convertedGenerationInstanceComposition, instanceStringDictionary) = GrayBoxUtils.ConvertGenerationInstanceComposition(generationInstanceComposition, targetAlgorithmFactory); // Check counts. instanceStringDictionary.Count.ShouldBe(50); convertedGenerationInstanceComposition.Count.ShouldBe(3); convertedGenerationInstanceComposition[0].Count.ShouldBe(5); convertedGenerationInstanceComposition[1].Count.ShouldBe(46); convertedGenerationInstanceComposition[2].Count.ShouldBe(50); // Check all elements. var flatenGenerationInstanceComposition = generationInstanceComposition.SelectMany(x => x).ToList(); var flatenConvertedGenerationInstanceComposition = convertedGenerationInstanceComposition.SelectMany(x => x).ToList(); for (var index = 0; index < flatenConvertedGenerationInstanceComposition.Count; index++) { instanceStringDictionary[flatenConvertedGenerationInstanceComposition[index]].ShouldBe(flatenGenerationInstanceComposition[index]); } }
public void TryToReadDataRecordsFromFileReturnsFalseForBrokenFiles() { var targetAlgorithmFactory = new TargetAlgorithmFactoryTest.DummyTargetAlgorithmFactory < TargetAlgorithmFactoryTest.DummyTargetAlgorithm <TestInstance, RuntimeResult>, TestInstance, RuntimeResult>(); GrayBoxUtils.TryToReadDataRecordsFromFile(targetAlgorithmFactory, GrayBoxUtilsTest.BrokenDataLogFile, out var dataRecords) .ShouldBeFalse(); }
public void TryToReadDataRecordsFromFileWorksForValidFiles() { var targetAlgorithmFactory = new TargetAlgorithmFactoryTest.DummyTargetAlgorithmFactory < TargetAlgorithmFactoryTest.DummyTargetAlgorithm <TestInstance, RuntimeResult>, TestInstance, RuntimeResult>(); GrayBoxUtils.TryToReadDataRecordsFromFile(targetAlgorithmFactory, GrayBoxUtilsTest.ValidDataLogFile, out var dataRecords).ShouldBeTrue(); // Check count. dataRecords.Count.ShouldBe(1); // Check all values. GrayBoxUtilsTest.CheckDataRecordValues(dataRecords[0]); }
public void TryToReadDataRecordsFromDirectoryReturnsCorrectOutput() { var targetAlgorithmFactory = new TargetAlgorithmFactoryTest.DummyTargetAlgorithmFactory < TargetAlgorithmFactoryTest.DummyTargetAlgorithm <TestInstance, RuntimeResult>, TestInstance, RuntimeResult>(); GrayBoxUtils.TryToReadDataRecordsFromDirectory( targetAlgorithmFactory, GrayBoxUtilsTest.PathToRealTestDataDirectory, 0, 1, out var dataRecords) .ShouldBeTrue(); // Check count. dataRecords.Count.ShouldBe(2); // Check all values. foreach (var dataRecord in dataRecords) { GrayBoxUtilsTest.CheckDataRecordValues(dataRecord); } }