Fix network unit tests

This commit is contained in:
SirLynix 2024-02-24 20:38:42 +01:00
parent 7b0165a7df
commit f883305b3e
3 changed files with 24 additions and 13 deletions

View File

@ -1,5 +1,4 @@
#include <Nazara/Math/Vector3.hpp> #include <Nazara/Math/Vector3.hpp>
#include <Nazara/Network/NetPacket.hpp>
#include <Nazara/Network/SocketPoller.hpp> #include <Nazara/Network/SocketPoller.hpp>
#include <Nazara/Network/TcpClient.hpp> #include <Nazara/Network/TcpClient.hpp>
#include <Nazara/Network/TcpServer.hpp> #include <Nazara/Network/TcpServer.hpp>

View File

@ -1,5 +1,6 @@
#include <Nazara/Core/ByteArray.hpp>
#include <Nazara/Core/ByteStream.hpp>
#include <Nazara/Math/Vector3.hpp> #include <Nazara/Math/Vector3.hpp>
#include <Nazara/Network/NetPacket.hpp>
#include <Nazara/Network/TcpClient.hpp> #include <Nazara/Network/TcpClient.hpp>
#include <Nazara/Network/TcpServer.hpp> #include <Nazara/Network/TcpServer.hpp>
#include <catch2/catch_approx.hpp> #include <catch2/catch_approx.hpp>
@ -41,10 +42,14 @@ SCENARIO("TCP", "[NETWORK][TCP]")
{ {
CHECK(serverToClient.EndOfStream()); CHECK(serverToClient.EndOfStream());
Nz::NetPacket packet(1); Nz::ByteArray byteArray;
Nz::ByteStream packet(&byteArray);
Nz::Vector3f vector123(1.f, 2.f, 3.f); Nz::Vector3f vector123(1.f, 2.f, 3.f);
packet << vector123; packet << vector123;
REQUIRE(client.SendPacket(packet));
std::size_t sent;
REQUIRE(client.Send(byteArray.GetConstBuffer(), byteArray.GetSize(), &sent));
CHECK(sent == byteArray.GetSize());
std::this_thread::sleep_for(std::chrono::milliseconds(10)); std::this_thread::sleep_for(std::chrono::milliseconds(10));
@ -52,11 +57,15 @@ SCENARIO("TCP", "[NETWORK][TCP]")
{ {
CHECK(!serverToClient.EndOfStream()); CHECK(!serverToClient.EndOfStream());
Nz::NetPacket resultPacket; Nz::ByteArray resultPacket(byteArray.GetSize());
REQUIRE(serverToClient.ReceivePacket(&resultPacket));
std::size_t received;
REQUIRE(serverToClient.Receive(resultPacket.GetBuffer(), resultPacket.GetSize(), &received));
CHECK(received == resultPacket.GetSize());
Nz::ByteStream packetOut(&resultPacket);
Nz::Vector3f result; Nz::Vector3f result;
resultPacket >> result; packetOut >> result;
CHECK(result == vector123); CHECK(result == vector123);
} }

View File

@ -1,6 +1,7 @@
#include <Nazara/Core/ByteArray.hpp>
#include <Nazara/Core/ByteStream.hpp>
#include <Nazara/Math/Vector3.hpp> #include <Nazara/Math/Vector3.hpp>
#include <Nazara/Network/UdpSocket.hpp> #include <Nazara/Network/UdpSocket.hpp>
#include <Nazara/Network/NetPacket.hpp>
#include <catch2/catch_approx.hpp> #include <catch2/catch_approx.hpp>
#include <catch2/catch_test_macros.hpp> #include <catch2/catch_test_macros.hpp>
@ -22,19 +23,21 @@ SCENARIO("UdpSocket", "[NETWORK][UDPSOCKET]")
WHEN("We send data from client") WHEN("We send data from client")
{ {
Nz::NetPacket packet(1); Nz::ByteArray byteArray;
Nz::ByteStream packet(&byteArray);
Nz::Vector3f vector123(1.f, 2.f, 3.f); Nz::Vector3f vector123(1.f, 2.f, 3.f);
packet << vector123; packet << vector123;
REQUIRE(client.SendPacket(serverIP, packet)); REQUIRE(client.Send(serverIP, byteArray.GetConstBuffer(), byteArray.GetSize(), nullptr));
THEN("We should get it on the server") THEN("We should get it on the server")
{ {
Nz::NetPacket resultPacket; Nz::ByteArray resultPacket(byteArray.GetSize());
Nz::IpAddress fromIp; Nz::IpAddress fromIp;
REQUIRE(server.ReceivePacket(&resultPacket, &fromIp)); REQUIRE(server.Receive(resultPacket.GetBuffer(), resultPacket.GetSize(), &fromIp, nullptr));
Nz::ByteStream packetOut(&resultPacket);
Nz::Vector3f result; Nz::Vector3f result;
resultPacket >> result; packetOut >> result;
REQUIRE(result == vector123); REQUIRE(result == vector123);
} }
} }