VoxelEngine/dev/tests/network_udp.lua
MihailRis 3a40162f1e
Fix udp address resolve (#624)
* тест для udp + фикс udp

* fix udp addresses resolve

* update SocketUdpConnection::connect

* update SocketUdpServer::sendTo

* update udp test

* revert

* test

* test

* test

* test

* test

* test?

* update test

* cleanup

* cleanup

* update test

* update

* revert

* cleanup

* update test

* update test

* update

* fix test

* additional error handling

* update Network.cpp

* update Network.cpp 2

* fix the test

* cleanup Network.cpp

* revert network_tcp.lua extra changes

---------

Co-authored-by: Xertis <118364459+Xertis@users.noreply.github.com>
2025-09-25 17:02:42 +03:00

36 lines
1.2 KiB
Lua

math.randomseed(43172)
for i = 1, 15 do
debug.log(string.format("iteration %s", i))
local complete = false
local server = network.udp_open(8645 + i, function (address, port, data, srv)
debug.log(string.format("server received %s byte(s) from %s:%s", #data, address, port))
srv:send(address, port, "pong")
end)
app.tick()
network.udp_connect("localhost", 8645 + i, function (data)
debug.log(string.format("client received %s byte(s) from server", #data))
complete = true
end, function (socket)
debug.log("udp socket opened")
start_coroutine(function()
debug.log("udp data-sender started")
for k = 1, 15 do
local payload = ""
for j = 1, 16 do
payload = payload .. math.random(0, 9)
end
socket:send(payload)
debug.log(string.format("sent packet %s (%s bytes)", k, #payload))
coroutine.yield()
end
app.sleep_until(function () return complete end, nil, 5)
socket:close()
end, "udp-data-sender")
end)
app.sleep_until(function () return complete end, nil, 5)
server:close()
end