Exemplo n.º 1
0
        /// <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);
        }
Exemplo n.º 2
0
        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());
        }
Exemplo n.º 3
0
        /// <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);
        }