Skip to content

Commit cabb490

Browse files
committed
Fix tool order
1 parent 07c5d2f commit cabb490

File tree

5 files changed

+15
-4
lines changed

5 files changed

+15
-4
lines changed

readme.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,8 +72,8 @@ DiffEngine manages launching and cleanup of diff tools. It is designed to be use
7272
* **[Diffinity](/docs/diff-tool.md#diffinity)** Windows (Cost: Free with option to donate)
7373
* **[ExamDiff](/docs/diff-tool.md#examdiff)** Windows (Cost: Paid)
7474
* **[Guiffy](/docs/diff-tool.md#guiffy)** Windows/OSX (Cost: Paid)
75-
* **[KDiff3](/docs/diff-tool.md#kdiff3)** Windows/OSX (Cost: Free)
7675
* **[Kaleidoscope](/docs/diff-tool.md#kaleidoscope)** OSX (Cost: Paid)
76+
* **[KDiff3](/docs/diff-tool.md#kdiff3)** Windows/OSX (Cost: Free)
7777
* **[Meld](/docs/diff-tool.md#meld)** Windows/OSX/Linux (Cost: Free)
7878
* **[MsExcelDiff](/docs/diff-tool.md#msexceldiff)** Windows (Cost: Free)
7979
* **[MsWordDiff](/docs/diff-tool.md#msworddiff)** Windows (Cost: Free)

src/DiffEngine.Tests/DefinitionsTest.cs

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,14 @@ static string GetOsSupport(OsSupport osSupport)
6565
return builder.ToString();
6666
}
6767

68+
[Test]
69+
public async Task ToolOrderMatchesEnumOrder()
70+
{
71+
var definitionsOrder = Definitions.Tools.Select(_ => _.Tool).ToList();
72+
var enumOrder = Enum.GetValues(typeof(DiffTool)).Cast<DiffTool>().ToList();
73+
await Assert.That(definitionsOrder).IsEquivalentTo(enumOrder);
74+
}
75+
6876
[Test]
6977
public void WriteDefaultOrder()
7078
{

src/DiffEngine/Definitions.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ public static class Definitions
55
public static IReadOnlyCollection<Definition> Tools { get; }
66

77
static Definitions() =>
8+
// Order determines default tool priority. Keep in sync with the DiffTool enum.
89
Tools =
910
[
1011
Implementation.MsWordDiff(),

src/DiffEngine/DiffTool.cs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,11 @@
11
namespace DiffEngine;
22

3+
// The order of this enum determines the default tool priority in DiffTools.Resolved.
4+
// Keep this order in sync with Definitions.Tools.
35
public enum DiffTool
46
{
7+
MsWordDiff,
8+
MsExcelDiff,
59
BeyondCompare,
610
P4Merge,
711
Kaleidoscope,
@@ -25,6 +29,4 @@ public enum DiffTool
2529
VisualStudioCode,
2630
VisualStudio,
2731
Cursor,
28-
MsWordDiff,
29-
MsExcelDiff
3032
}

src/Directory.Build.props

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
<Project>
33
<PropertyGroup>
44
<NoWarn>CS1591;CS0649;NU1608;NU1109</NoWarn>
5-
<Version>19.1.1</Version>
5+
<Version>19.1.2</Version>
66
<AssemblyVersion>1.0.0</AssemblyVersion>
77
<PackageTags>Testing, Snapshot, Diff, Compare</PackageTags>
88
<Description>Launches diff tools based on file extensions. Designed to be consumed by snapshot testing libraries.</Description>

0 commit comments

Comments
 (0)