Skip to content
This repository was archived by the owner on Jun 21, 2023. It is now read-only.

Commit e98aa41

Browse files
authored
Merge pull request #2191 from github/fixes/2190-system-net-http-4-0
Ensure we only reference System.Net.Http v4.0.0.0
2 parents 337f266 + 760c7ab commit e98aa41

File tree

3 files changed

+34
-4
lines changed

3 files changed

+34
-4
lines changed

test/GitHub.VisualStudio.UnitTests/GitHub.VisualStudio.UnitTests.csproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
<ItemGroup>
2222
<PackageReference Include="Codecov" Version="1.1.0" />
2323
<PackageReference Include="Madskristensen.VisualStudio.SDK" Version="14.3.75-pre" />
24+
<PackageReference Include="NCrunch.Framework" Version="3.17.0" />
2425
<PackageReference Include="NSubstitute" Version="2.0.3" />
2526
<PackageReference Include="NUnit" version="3.9.0" />
2627
<PackageReference Include="OpenCover" Version="4.6.519" />

test/GitHub.VisualStudio.UnitTests/GitHubAssemblyTests.cs

Lines changed: 32 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
1-
using System.IO;
1+
using System;
2+
using System.IO;
3+
using System.Linq;
24
using System.Reflection;
5+
using NCrunch.Framework;
36
using NUnit.Framework;
47

58
public class GitHubAssemblyTests
@@ -15,8 +18,34 @@ public void GitHub_Assembly_Should_Not_Reference_DesignTime_Assembly(string asse
1518
}
1619
}
1720

21+
[Theory]
22+
public void GitHub_Assembly_Should_Not_Reference_System_Net_Http_Above_4_0(string assemblyFile)
23+
{
24+
var asm = Assembly.LoadFrom(assemblyFile);
25+
foreach (var referencedAssembly in asm.GetReferencedAssemblies())
26+
{
27+
if (referencedAssembly.Name == "System.Net.Http")
28+
{
29+
Assert.That(referencedAssembly.Version, Is.EqualTo(new Version("4.0.0.0")));
30+
}
31+
}
32+
}
33+
1834
[DatapointSource]
19-
string[] GitHubAssemblies => Directory.GetFiles(AssemblyDirectory, "GitHub.*.dll");
35+
string[] GetGitHubAssemblies()
36+
{
37+
var prefix = "GitHub.";
38+
if (NCrunchEnvironment.NCrunchIsResident())
39+
{
40+
return NCrunchEnvironment.GetAllAssemblyLocations()
41+
.Where(p => Path.GetFileName(p).StartsWith(prefix, StringComparison.OrdinalIgnoreCase))
42+
.ToArray();
43+
}
44+
else
45+
{
46+
var dir = Path.GetDirectoryName(GetType().Assembly.Location);
47+
return Directory.GetFiles(dir, $"{prefix}*.dll");
48+
}
49+
}
2050

21-
string AssemblyDirectory => Path.GetDirectoryName(GetType().Assembly.Location);
2251
}

0 commit comments

Comments
 (0)