From 0d37e36b0cfb68383886ac3d1b1c5a5423f0a09f Mon Sep 17 00:00:00 2001 From: SirLynix Date: Sat, 30 Dec 2023 11:14:38 +0100 Subject: [PATCH] Fix UnitTests --- .../Engine/Network/IpAddressTest.cpp | 34 +++++++++++++------ tests/UnitTests/xmake.lua | 2 +- 2 files changed, 24 insertions(+), 12 deletions(-) diff --git a/tests/UnitTests/Engine/Network/IpAddressTest.cpp b/tests/UnitTests/Engine/Network/IpAddressTest.cpp index 5cc436193..7f2d3defb 100644 --- a/tests/UnitTests/Engine/Network/IpAddressTest.cpp +++ b/tests/UnitTests/Engine/Network/IpAddressTest.cpp @@ -2,6 +2,8 @@ #include #include #include +#include +#include SCENARIO("IpAddress", "[NETWORK][IPADDRESS]") { @@ -128,21 +130,31 @@ SCENARIO("IpAddress", "[NETWORK][IPADDRESS]") CHECK_FALSE(Nz::IpAddress("::ffff:123.412.210.230").IsValid()); CHECK_FALSE(Nz::IpAddress("::ffff:127.0.0.0.1").IsValid()); CHECK_FALSE(Nz::IpAddress("::ffff:0:255.255.255.255").IsValid()); - - WHEN("We get the IP of Nazara") - { - std::vector hostnameInfos = Nz::IpAddress::ResolveHostname(Nz::NetProtocol::Any, "nazara.digitalpulse.software"); + } - THEN("Result is not null") - { - CHECK_FALSE(hostnameInfos.empty()); - } + WHEN("We resolve dns.google") + { + std::vector hostnameInfos = Nz::IpAddress::ResolveHostname(Nz::NetProtocol::Any, "dns.google"); + CHECK(!hostnameInfos.empty()); + + frozen::unordered_set expectedAddresses = frozen::make_unordered_set({ + "8.8.8.8", + "8.8.4.4", + "2001:4860:4860::8888", + "2001:4860:4860::8844" + }); + + for (const Nz::HostnameInfo& hostnameInfo : hostnameInfos) + { + const std::string& addressStr = hostnameInfo.address.ToString(false); + INFO(addressStr); + CHECK(expectedAddresses.count(frozen::string(addressStr)) > 0); } - WHEN("We resolve IP to hostname") + AND_WHEN("We resolve back the IP addresses to the hostname") { - CHECK(Nz::IpAddress::ResolveAddress(loopbackIpV4) == "localhost"); - CHECK(Nz::IpAddress::ResolveAddress(loopbackIpV6) == "localhost"); + CHECK(Nz::IpAddress::ResolveAddress(Nz::IpAddress("8.8.8.8")) == "dns.google"); + CHECK(Nz::IpAddress::ResolveAddress(Nz::IpAddress("2001:4860:4860::8888")) == "dns.google"); } } } diff --git a/tests/UnitTests/xmake.lua b/tests/UnitTests/xmake.lua index 85aeed8be..8f66b93f2 100644 --- a/tests/UnitTests/xmake.lua +++ b/tests/UnitTests/xmake.lua @@ -6,7 +6,7 @@ if has_config("asan") then end add_deps("NazaraAudio", "NazaraCore", "NazaraNetwork", "NazaraChipmunkPhysics2D") -add_packages("catch2", "entt") +add_packages("catch2", "entt", "frozen") add_headerfiles("Engine/**.hpp", { prefixdir = "private", install = false }) add_files("resources.cpp") add_files("Engine/**.cpp")