Skip to content

Commit 1f64a7b

Browse files
authored
Merge branch 'master' into master
2 parents 125cd74 + 33a747e commit 1f64a7b

File tree

7 files changed

+17
-9
lines changed

7 files changed

+17
-9
lines changed

src/OmniSharp.MSBuild/ProjectManager.cs

+3-3
Original file line numberDiff line numberDiff line change
@@ -670,8 +670,8 @@ private void UpdateProjectReferences(Project project, ImmutableArray<string> pro
670670
if (projectFileInfo.ProjectReferenceAliases.TryGetValue(projectReferencePath, out var projectReferenceAliases))
671671
{
672672
if (!string.IsNullOrEmpty(projectReferenceAliases))
673-
{
674-
aliases = projectReferenceAliases.Split(';').ToImmutableArray();
673+
{
674+
aliases = ImmutableArray.CreateRange(projectReferenceAliases.Split(new char[]{','},StringSplitOptions.RemoveEmptyEntries).Select(a => a.Trim()));
675675
_logger.LogDebug($"Setting aliases: {projectReferencePath}, {projectReferenceAliases} ");
676676
}
677677
}
@@ -740,7 +740,7 @@ private void UpdateReferences(Project project, ImmutableArray<string> projectRef
740740
{
741741
if (!string.IsNullOrEmpty(aliases))
742742
{
743-
reference = reference.WithAliases(aliases.Split(';'));
743+
reference = reference.WithAliases(aliases.Split(new char[]{','},StringSplitOptions.RemoveEmptyEntries).Select(a => a.Trim()));
744744
_logger.LogDebug($"setting aliases: {referencePath}, {aliases} ");
745745
}
746746
}

test-assets/test-projects/ExternAlias/ExternAlias.App/ExternAlias.App.csproj

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
<ItemGroup>
88
<Reference Include="ExternAlias.Lib">
99
<HintPath>$(ProjectDir)../ExternAlias.Lib/bin/$(Configuration)/netstandard2.0/ExternAlias.Lib.dll</HintPath>
10-
<Aliases>abc</Aliases>
10+
<Aliases>abc,def</Aliases>
1111
</Reference>
1212
</ItemGroup>
1313

test-assets/test-projects/ExternAlias/ExternAlias.App/Program.cs

+2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
extern alias abc;
2+
extern alias def;
23
using System;
34

45
namespace ExternAlias.App
@@ -8,6 +9,7 @@ class Program
89
static void Main(string[] args)
910
{
1011
new abc::ExternAlias.Lib.Class1();
12+
new def::ExternAlias.Lib.Class1();
1113
Console.WriteLine("Hello World!");
1214
}
1315
}

test-assets/test-projects/ExternAlias/ExternAlias.App2/ExternAlias.App2.csproj

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99
<ItemGroup>
1010
<ProjectReference Include="../ExternAlias.Lib/ExternAlias.Lib.csproj">
11-
<Aliases>abc</Aliases>
11+
<Aliases>abc,def</Aliases>
1212
</ProjectReference>
1313
</ItemGroup>
1414

test-assets/test-projects/ExternAlias/ExternAlias.App2/Program.cs

+2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
extern alias abc;
2+
extern alias def;
23
using System;
34

45
namespace ExternAlias.App
@@ -8,6 +9,7 @@ class Program
89
static void Main(string[] args)
910
{
1011
new abc::ExternAlias.Lib.Class1();
12+
new def::ExternAlias.Lib.Class1();
1113
Console.WriteLine("Hello World!");
1214
}
1315
}

tests/OmniSharp.MSBuild.Tests/ProjectFileInfoTests.cs

+2-2
Original file line numberDiff line numberDiff line change
@@ -159,7 +159,7 @@ public async Task ExternAliasWithReference()
159159

160160
var libpath = Path.Combine(testProject.Directory, "ExternAlias.Lib", "bin", "Debug", "netstandard2.0", "ExternAlias.Lib.dll");
161161
Assert.True(projectFileInfo.ReferenceAliases.ContainsKey(libpath));
162-
Assert.Equal("abc", projectFileInfo.ReferenceAliases[libpath]);
162+
Assert.Equal("abc,def", projectFileInfo.ReferenceAliases[libpath]);
163163
}
164164
}
165165

@@ -179,7 +179,7 @@ public async Task ExternAliasWithProjectReference()
179179

180180
var projectReferencePath = Path.Combine(testProject.Directory, "ExternAlias.Lib", "ExternAlias.Lib.csproj");
181181
Assert.True(projectFileInfo.ProjectReferenceAliases.ContainsKey(projectReferencePath));
182-
Assert.Equal("abc", projectFileInfo.ProjectReferenceAliases[projectReferencePath]);
182+
Assert.Equal("abc,def", projectFileInfo.ProjectReferenceAliases[projectReferencePath]);
183183
}
184184
}
185185

tests/OmniSharp.MSBuild.Tests/WorkspaceInformationTests.cs

+6-2
Original file line numberDiff line numberDiff line change
@@ -317,7 +317,9 @@ public async Task TestProjectWithAliasOnProjectReference()
317317
.ProjectReferences
318318
.Single(x => x.ProjectId == lib.Id);
319319

320-
Assert.Equal("abc", projectReference.Aliases.Single());
320+
Assert.Collection(projectReference.Aliases,
321+
referenceA => Assert.Equal("abc",referenceA),
322+
referenceB => Assert.Equal("def",referenceB));
321323
}
322324
}
323325

@@ -337,7 +339,9 @@ public async Task TestProjectWithAliasOnReference()
337339
.MetadataReferences
338340
.Single(x => x.Display == "ExternAlias.Lib.dll");
339341

340-
Assert.Equal("abc", reference.Properties.Aliases.Single());
342+
Assert.Collection(reference.Properties.Aliases,
343+
referenceA => Assert.Equal("abc",referenceA),
344+
referenceB => Assert.Equal("def",referenceB));
341345
}
342346
}
343347
}

0 commit comments

Comments
 (0)