public void TestRemoveFeaturesByNumber() { SparseFormatWriter.RemoveFeaturesWithNumbers(new[] { 45, 46 }, @"Test\BuhFeatureVectors.txt", @"Test\RemovedBuhFeatureVectors.txt"); var removedBuhFeaturesFileInfo = new FileInfo(@"Test\RemovedBuhFeatureVectors.txt"); var expectedRemovedBuhFeaturesFileInfo = new FileInfo(@"Test\ExpectedRemovedBuhFeatureVectors.txt"); FileAssert.AreEqual(removedBuhFeaturesFileInfo, expectedRemovedBuhFeaturesFileInfo); }
public void TestSortFeatures() { const string sortedFeaturesFilepath = @"Test\SortedFeatureVectors.txt"; SparseFormatWriter.SortFeatures(@"Test\UnsortedFeatureVectors.txt", sortedFeaturesFilepath); var sortedFeaturesFileInfo = new FileInfo(sortedFeaturesFilepath); var expectedSortedFeatureVectors = new FileInfo(@"Test\ExpectedSortedFeatureVectors.txt"); FileAssert.AreEqual(sortedFeaturesFileInfo, expectedSortedFeatureVectors); }
public void TestSaveMetadata() { IEnumerable <Feature> features = new [] { new Feature { Name = "TestFeature1", Number = 1 }, new Feature { Name = "TestFeature2", Number = 2 } }; const string savedFeaturesMetadataFilepath = @"Test\FeaturesMetadata.txt"; SparseFormatWriter.SaveMetadata(features, savedFeaturesMetadataFilepath); var savedFeaturesFileInfo = new FileInfo(savedFeaturesMetadataFilepath); var expectedSavedFeaturesFileInfo = new FileInfo(@"Test\ExpectedSavedFeaturesMetadata.txt"); FileAssert.AreEqual(savedFeaturesFileInfo, expectedSavedFeaturesFileInfo); }
public void TestAddFeatureIsCorrect() { const string updatedFeaturesFilepath = @"Test\test.sparse"; var postData = new List <PostData> { new PostData { RequestId = 1, PostId = 328571, Features = new[] { new Feature { Number = 111, Value = 111 }, new Feature { Number = 222, Value = 222 } } }, new PostData { RequestId = 42, PostId = 271594, Features = new[] { new Feature { Number = 333, Value = 333 }, new Feature { Number = 444, Value = 444 } } } }; SparseFormatWriter.AddFeaturesToExisting(postData, sparseFeaturesFilepath, updatedFeaturesFilepath, true); var updatedTemplateFileInfo = new FileInfo(expectedUpdatedFeaturesFilepath); var updatedFeaturesFileInfo = new FileInfo(updatedFeaturesFilepath); FileAssert.AreEqual(updatedTemplateFileInfo, updatedFeaturesFileInfo); }
public void TestSaveFeaturesIsCorrect() { var featureData = new List <PostData> { new PostData { PostId = 201, RequestId = 2, Features = new[] { new Feature { Name = "queryWindowRatio", Value = 0.45454546809196472, Number = 51 }, new Feature { Name = "coveredQueryTermNumber", Value = 2.0, Number = 52 }, new Feature { Name = "hasQueryWordsSequence", Value = 0.0, Number = 53 }, new Feature { Name = "queryWordsTopicStarterRatio", Value = 0.0, Number = 54 }, new Feature { Name = "answerWordsTopicStarterRatio", Value = 1.0, Number = 55 } } }, new PostData { PostId = 102, RequestId = 3, Features = new[] { new Feature { Name = "queryWindowRatio", Value = 0.44117647409439087, Number = 51 }, new Feature { Name = "coveredQueryTermNumber", Value = 3.0, Number = 52 }, new Feature { Name = "hasQueryWordsSequence", Value = 0.0, Number = 53 }, new Feature { Name = "queryWordsTopicStarterRatio", Value = 0.3333333432674408, Number = 54 }, new Feature { Name = "answerWordsTopicStarterRatio", Value = 1.0, Number = 55 } } } }; const string savedFeaturesFilepath = @"Test\SavedFeatures.sparse"; const string expectedSavedFeaturesFilepath = @"Test\ExpectedSavedFeatures.sparse"; SparseFormatWriter.Save(savedFeaturesFilepath, featureData.Select( f => new SparseFormatWriter.SparseData { Features = f.Features, PostId = f.PostId, Qid = f.RequestId })); var savedFeaturesFileInfo = new FileInfo(savedFeaturesFilepath); var expectedFeaturesFileInfo = new FileInfo(expectedSavedFeaturesFilepath); FileAssert.AreEqual(savedFeaturesFileInfo, expectedFeaturesFileInfo); }