Merge pull request #5762 from BaronGreenback/networkTestHardening

Fix network test on dns failure
pull/5975/head
Bill Thornton 3 years ago committed by GitHub
commit 7d8fca92f9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -384,6 +384,9 @@ namespace Jellyfin.Networking.Tests
[InlineData("jellyfin.org", "eth16", false, "eth16")] [InlineData("jellyfin.org", "eth16", false, "eth16")]
// User on external network, no binding - so result is the 1st external. // User on external network, no binding - so result is the 1st external.
[InlineData("jellyfin.org", "", false, "eth11")] [InlineData("jellyfin.org", "", false, "eth11")]
// Dns failure - should skip the test.
// https://en.wikipedia.org/wiki/.test
[InlineData("invalid.domain.test", "", false, "eth11")]
// User assumed to be internal, no binding - so result is the 1st internal. // User assumed to be internal, no binding - so result is the 1st internal.
[InlineData("", "", false, "eth16")] [InlineData("", "", false, "eth16")]
public void TestBindInterfaces(string source, string bindAddresses, bool ipv6enabled, string result) public void TestBindInterfaces(string source, string bindAddresses, bool ipv6enabled, string result)
@ -416,10 +419,13 @@ namespace Jellyfin.Networking.Tests
_ = nm.TryParseInterface(result, out Collection<IPObject>? resultObj); _ = nm.TryParseInterface(result, out Collection<IPObject>? resultObj);
if (resultObj != null) // Check to see if dns resolution is working. If not, skip test.
_ = IPHost.TryParse(source, out var host);
if (resultObj != null && host?.HasAddress == true)
{ {
result = ((IPNetAddress)resultObj[0]).ToString(true); result = ((IPNetAddress)resultObj[0]).ToString(true);
var intf = nm.GetBindInterface(source, out int? _); var intf = nm.GetBindInterface(source, out _);
Assert.Equal(intf, result); Assert.Equal(intf, result);
} }

Loading…
Cancel
Save