コード例 #1
0
        public void Test_Do_ReturnsNumber()
        {
            // テスト用のファイルを用意
            var fileName     = MethodBase.GetCurrentMethod().Name;
            var filePath     = Path.Combine(this.DirectoryPath, fileName);
            var fileEncoding = Encoding.GetEncoding("shift-jis");

            using (var stream = File.Create(filePath))
                using (var writer = new StreamWriter(stream, fileEncoding))
                {
                    var script = @"

Sub a()
    
End Sub

Public Sub b()
    
End Sub

Private Sub c()
    
End Sub

Function d() As Object
    
End Function

Public Function e() As Object
    
End Function

Private Function f() As Object
    
End Function

";

                    writer.Write(script);
                    writer.Flush();
                }

            // テスト対象の処理を実行
            var method = new NumberOfVB6EmptyRowsInProcedureScoutingMethod();
            var actual = method.Do(new ScoutingClue()
            {
                FilePath = filePath,
                Encoding = fileEncoding
            });

            // テスト結果を検証
            Assert.AreEqual("6", actual);
        }
コード例 #2
0
        public void Test_Do_ReturnsZero_WhenFileIsBinary()
        {
            // テスト用のファイルを用意
            var fileName = MethodBase.GetCurrentMethod().Name;
            var filePath = Path.Combine(this.DirectoryPath, fileName);

            using (var stream = File.Create(filePath))
            {
                stream.Write(new byte[] { 0x0 }, 0, 1);
                stream.Flush();
            }

            // テスト対象の処理を実行
            var method = new NumberOfVB6EmptyRowsInProcedureScoutingMethod();
            var actual = method.Do(new ScoutingClue()
            {
                FilePath = filePath,
                Encoding = null,
            });

            // テスト結果を検証
            Assert.AreEqual("0", actual);
        }