Microsoft.CodeAnalysis.Sarif.ToolFormatConverterTests.ToolFormatConverter_TruncatesOutputFileInOverwriteMode C# (CSharp) Method

ToolFormatConverter_TruncatesOutputFileInOverwriteMode() private method

        public void ToolFormatConverter_TruncatesOutputFileInOverwriteMode()
        {
            // Using CPPCheck because its empty file format is the simplest
            string emptyCppCheckLog = @"<?xml version=""1.0"" encoding=""UTF-8""?>
            <results version=""2"">
            <cppcheck version=""1.66""/>
            <errors />
            </results>";

            using (var tempDir = new TempDirectory())
            {
                var inputFileName = tempDir.Write("input.xml", emptyCppCheckLog);
                var expectedOutputFileName = tempDir.Combine("output_expected.xml");
                _converter.ConvertToStandardFormat(ToolFormat.CppCheck, inputFileName, expectedOutputFileName);

                string expectedOutput = File.ReadAllText(expectedOutputFileName, Encoding.UTF8);
                var actualOutputFileName = tempDir.Write("output_actual.xml", new string('a', expectedOutput.Length + 4096));
                _converter.ConvertToStandardFormat(ToolFormat.CppCheck, inputFileName, actualOutputFileName, ToolFormatConversionOptions.OverwriteExistingOutputFile);
                string actualOutput = File.ReadAllText(actualOutputFileName, Encoding.UTF8);
                Assert.AreEqual(expectedOutput, actualOutput);
            }
        }