/// <summary> /// レビューファイルのロード /// </summary> /// <param name="filePath"></param> /// <returns></returns> protected IReview ReadReviewFile(string version, string filePath) { var filepath = GetTestDataPath(version, filePath); var reader = new ReviewFileReader(); var review = reader.Read(filepath); return(review); }
public void ReadFolderTest(string version) { var folder = GetTestDataPath(version); var reader = new ReviewFileReader(); var reviews = reader.ReadFolder(folder); // 直下のフォルダ Assert.IsNotNull(reviews); Assert.AreEqual(2, reviews.Count()); // サブフォルダも対象 reviews = reader.ReadFolder(folder, true); Assert.AreEqual(4, reviews.Count()); }
/// <summary> /// 指定フォルダのレビューファイルを集計してJSONファイルに出力する /// </summary> /// <param name="revxFolder"></param> /// <param name="outputFilePath"></param> /// <param name="includeSubFolders"></param> public void Export(string revxFolder, string outputFilePath, bool includeSubFolders = false) { var reader = new ReviewFileReader(); var readReviews = reader.ReadFolder(revxFolder, includeSubFolders); // Jsonモデル var jsonModel = new JsonModel(readReviews); var options = new JsonSerializerOptions() { WriteIndented = true, }; // ログ出力 Logger?.Invoke($"{readReviews.Count()}件のレビューファイルが見つかりました。"); // JSONとして書き出しする var jsonString = JsonSerializer.Serialize(jsonModel, options); File.WriteAllText(outputFilePath, jsonString); }