public void SaveAndLoadIndexData() { var expect = new Dictionary <string, List <int> > { { "0", new List <int> { 1, 2, 4 } }, { "東京", new List <int> { 2, 5, 9 } }, { "大阪", new List <int> { 4, 8 } } }; string saveFilePath = Path.Combine(TestSetup.RootDirectory, "TestResult", "Utilties", "IndexUtility", "SaveIndexData", "test.idx"); var encoding = Encoding.GetEncoding("Shift-JIS"); IndexUtility.SaveIndexData(saveFilePath, expect, encoding); var actual = IndexUtility.LoadIndexData(saveFilePath, encoding); CollectionAssert.AreEquivalent(expect, actual); }
/// <summary> /// インデックスの作成を行う処理です。 /// </summary> public void CreateIndex() { string zipFilePath = Path.Combine(_storageDirectoryPath, "download.zip"); FileUtility.DownloadZipFile(zipFilePath, DataSourceUrl); string extractDirectory = FileUtility.GetZipExtractDirectory(_storageDirectoryPath); string csvFilePath = FileUtility.ExtractCsvFile(zipFilePath, extractDirectory); var indexData = IndexUtility.GetIndexData(csvFilePath, Ngram, FileEncoding); string indexFilePath = csvFilePath + FileUtility.IndexFileExtension; IndexUtility.SaveIndexData(indexFilePath, indexData, FileEncoding); }
public void LoadIndexDataArgumentKeywords() { var indices = new Dictionary <string, List <int> > { { "0", new List <int> { 1, 2, 4 } }, { "関東", new List <int> { 2, 5, 9 } }, { "大阪", new List <int> { 4, 8 } }, { "京都", new List <int> { 5, 9 } } }; var expect = new Dictionary <string, List <int> >(); var keywords = new List <string> { "東", "京" }; foreach (var index in indices) { if (keywords.Any(keyword => index.Key.Contains(keyword))) { expect.Add(index.Key, index.Value); } } Assert.IsTrue(Directory.Exists(Path.Combine(TestSetup.RootDirectory, "TestResult", "Utilties"))); string saveFilePath = Path.Combine(TestSetup.RootDirectory, "TestResult", "Utilties", "IndexUtility", "SaveIndexData", "test.idx"); var encoding = Encoding.GetEncoding("Shift-JIS"); IndexUtility.SaveIndexData(saveFilePath, indices, encoding); var actual = IndexUtility.LoadIndexData(saveFilePath, encoding, keywords); CollectionAssert.AreEquivalent(expect, actual); }