From 68bcb6ff2a45754629e4e64ba8874dec859a2979 Mon Sep 17 00:00:00 2001 From: Kamyar mofakhami <41609894+kawmy@users.noreply.github.com> Date: Sat, 22 Aug 2026 02:19:22 +0330 Subject: [PATCH 1/2] Add historical binary log replay coverage --- src/Build.UnitTests/BinaryLogger_Tests.cs | 55 ++++++++++++++++++ .../TestAssets/BinaryLogger/Canonical.proj | 27 +++++++++ .../TestAssets/BinaryLogger/version1.binlog | Bin 0 -> 3545 bytes .../TestAssets/BinaryLogger/version10.binlog | Bin 0 -> 4028 bytes .../TestAssets/BinaryLogger/version11.binlog | Bin 0 -> 4038 bytes .../TestAssets/BinaryLogger/version12.binlog | Bin 0 -> 3523 bytes .../TestAssets/BinaryLogger/version13.binlog | Bin 0 -> 3430 bytes .../TestAssets/BinaryLogger/version14.binlog | Bin 0 -> 3394 bytes .../TestAssets/BinaryLogger/version2.binlog | Bin 0 -> 3509 bytes .../TestAssets/BinaryLogger/version3.binlog | Bin 0 -> 4031 bytes .../TestAssets/BinaryLogger/version4.binlog | Bin 0 -> 4029 bytes .../TestAssets/BinaryLogger/version5.binlog | Bin 0 -> 4030 bytes .../TestAssets/BinaryLogger/version6.binlog | Bin 0 -> 4029 bytes .../TestAssets/BinaryLogger/version7.binlog | Bin 0 -> 3554 bytes .../TestAssets/BinaryLogger/version8.binlog | Bin 0 -> 3570 bytes .../TestAssets/BinaryLogger/version9.binlog | Bin 0 -> 3630 bytes 16 files changed, 82 insertions(+) create mode 100644 src/Build.UnitTests/TestAssets/BinaryLogger/Canonical.proj create mode 100644 src/Build.UnitTests/TestAssets/BinaryLogger/version1.binlog create mode 100644 src/Build.UnitTests/TestAssets/BinaryLogger/version10.binlog create mode 100644 src/Build.UnitTests/TestAssets/BinaryLogger/version11.binlog create mode 100644 src/Build.UnitTests/TestAssets/BinaryLogger/version12.binlog create mode 100644 src/Build.UnitTests/TestAssets/BinaryLogger/version13.binlog create mode 100644 src/Build.UnitTests/TestAssets/BinaryLogger/version14.binlog create mode 100644 src/Build.UnitTests/TestAssets/BinaryLogger/version2.binlog create mode 100644 src/Build.UnitTests/TestAssets/BinaryLogger/version3.binlog create mode 100644 src/Build.UnitTests/TestAssets/BinaryLogger/version4.binlog create mode 100644 src/Build.UnitTests/TestAssets/BinaryLogger/version5.binlog create mode 100644 src/Build.UnitTests/TestAssets/BinaryLogger/version6.binlog create mode 100644 src/Build.UnitTests/TestAssets/BinaryLogger/version7.binlog create mode 100644 src/Build.UnitTests/TestAssets/BinaryLogger/version8.binlog create mode 100644 src/Build.UnitTests/TestAssets/BinaryLogger/version9.binlog diff --git a/src/Build.UnitTests/BinaryLogger_Tests.cs b/src/Build.UnitTests/BinaryLogger_Tests.cs index 98dc214507a..20ef1fc2f61 100644 --- a/src/Build.UnitTests/BinaryLogger_Tests.cs +++ b/src/Build.UnitTests/BinaryLogger_Tests.cs @@ -93,6 +93,61 @@ public enum BinlogRoundtripTestReplayMode RawEvents } + [Theory] + [InlineData(1)] + [InlineData(2)] + [InlineData(3)] + [InlineData(4)] + [InlineData(5)] + [InlineData(6)] + [InlineData(7)] + [InlineData(8)] + [InlineData(9)] + [InlineData(10)] + [InlineData(11)] + [InlineData(12)] + [InlineData(13)] + [InlineData(14)] + public void CanReplayHistoricalBinaryLogFormats(int formatVersion) + { + string path = Path.Combine( + AppContext.BaseDirectory, + "TestAssets", + "BinaryLogger", + $"version{formatVersion}.binlog"); + + int eventCount = 0; + int projectCount = 0; + int targetCount = 0; + bool buildSucceeded = false; + var replay = new BinaryLogReplayEventSource(); + replay.AnyEventRaised += (_, args) => + { + eventCount++; + + if (args is ProjectStartedEventArgs) + { + projectCount++; + } + else if (args is TargetStartedEventArgs) + { + targetCount++; + } + else if (args is BuildFinishedEventArgs finished) + { + buildSucceeded = finished.Succeeded; + } + }; + + replay.Replay(path); + + replay.FileFormatVersion.ShouldBe(formatVersion); + eventCount.ShouldBeGreaterThan(0); + projectCount.ShouldBe(1); + targetCount.ShouldBe(2); + buildSucceeded.ShouldBeTrue(); + } + [Theory] [InlineData(s_testProject, BinlogRoundtripTestReplayMode.NoReplay)] [InlineData(s_testProject, BinlogRoundtripTestReplayMode.Structured)] diff --git a/src/Build.UnitTests/TestAssets/BinaryLogger/Canonical.proj b/src/Build.UnitTests/TestAssets/BinaryLogger/Canonical.proj new file mode 100644 index 00000000000..70dd29fdd18 --- /dev/null +++ b/src/Build.UnitTests/TestAssets/BinaryLogger/Canonical.proj @@ -0,0 +1,27 @@ + + + InitialValue + SecondValue + ReassignedValue + + + + DefaultValue + + + + + CustomValue + + + + + + InsideValue + + + + + + + diff --git a/src/Build.UnitTests/TestAssets/BinaryLogger/version1.binlog b/src/Build.UnitTests/TestAssets/BinaryLogger/version1.binlog new file mode 100644 index 0000000000000000000000000000000000000000..f21ef39ce2a3fd3419deb55c327e72f397cfcb7e GIT binary patch literal 3545 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 literal 0 HcmV?d00001 diff --git a/src/Build.UnitTests/TestAssets/BinaryLogger/version11.binlog b/src/Build.UnitTests/TestAssets/BinaryLogger/version11.binlog new file mode 100644 index 0000000000000000000000000000000000000000..23d0959d26efd67670ebb1a02e3b49c29aadb02f GIT binary patch literal 4038 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 literal 0 HcmV?d00001 diff --git a/src/Build.UnitTests/TestAssets/BinaryLogger/version12.binlog b/src/Build.UnitTests/TestAssets/BinaryLogger/version12.binlog new file mode 100644 index 0000000000000000000000000000000000000000..76b70a4c5ec2de6afdd2684a338c5b4cf6e2dcd7 GIT binary patch literal 3523 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 literal 0 HcmV?d00001 diff --git a/src/Build.UnitTests/TestAssets/BinaryLogger/version13.binlog b/src/Build.UnitTests/TestAssets/BinaryLogger/version13.binlog new file mode 100644 index 0000000000000000000000000000000000000000..f5269170abe01897042ecdb79588d51652f8f088 GIT binary patch literal 3430 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 I{l*^v098G|P5=M^ literal 0 HcmV?d00001 diff --git a/src/Build.UnitTests/TestAssets/BinaryLogger/version14.binlog b/src/Build.UnitTests/TestAssets/BinaryLogger/version14.binlog new file mode 100644 index 0000000000000000000000000000000000000000..a191a99efbea5a8b5173b37ef18b5a96826407e9 GIT binary patch literal 3394 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 Y%>1pNP>bKco5+~^KNBN~?};A(04Ls|rT_o{ literal 0 HcmV?d00001 diff --git a/src/Build.UnitTests/TestAssets/BinaryLogger/version2.binlog b/src/Build.UnitTests/TestAssets/BinaryLogger/version2.binlog new file mode 100644 index 0000000000000000000000000000000000000000..f04609760a21b2d101001ba67b3dd2815a7f9e8b GIT binary patch literal 3509 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 literal 0 HcmV?d00001 diff --git a/src/Build.UnitTests/TestAssets/BinaryLogger/version3.binlog b/src/Build.UnitTests/TestAssets/BinaryLogger/version3.binlog new file mode 100644 index 0000000000000000000000000000000000000000..a369a88d2b6b32823e1e79ad7013d2438672f4a3 GIT binary patch literal 4031 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 literal 0 HcmV?d00001 diff --git a/src/Build.UnitTests/TestAssets/BinaryLogger/version6.binlog b/src/Build.UnitTests/TestAssets/BinaryLogger/version6.binlog new file mode 100644 index 0000000000000000000000000000000000000000..c0ce596c7e28ae1269f9b739eb87f822003e9eff GIT binary patch literal 4029 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 literal 0 HcmV?d00001 diff --git a/src/Build.UnitTests/TestAssets/BinaryLogger/version9.binlog b/src/Build.UnitTests/TestAssets/BinaryLogger/version9.binlog new file mode 100644 index 0000000000000000000000000000000000000000..54bdf5ba98469eccdab37bd595a36772e65311b7 GIT binary patch literal 3630 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 Ag#Z8m literal 0 HcmV?d00001 From 8a5e59af1e0d5479e5ecb57b113408d0ec38bcc7 Mon Sep 17 00:00:00 2001 From: Kamyar mofakhami <41609894+kawmy@users.noreply.github.com> Date: Sat, 22 Aug 2026 03:20:10 +0330 Subject: [PATCH 2/2] Fix historical binlog replay test teardown --- src/Build.UnitTests/BinaryLogger_Tests.cs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/Build.UnitTests/BinaryLogger_Tests.cs b/src/Build.UnitTests/BinaryLogger_Tests.cs index 20ef1fc2f61..9c33498203a 100644 --- a/src/Build.UnitTests/BinaryLogger_Tests.cs +++ b/src/Build.UnitTests/BinaryLogger_Tests.cs @@ -146,6 +146,8 @@ public void CanReplayHistoricalBinaryLogFormats(int formatVersion) projectCount.ShouldBe(1); targetCount.ShouldBe(2); buildSucceeded.ShouldBeTrue(); + + CreateExpectedLogFile(); } [Theory]