• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

Razakhel / RaZ / 21179551844

19 Jan 2026 09:37PM UTC coverage: 74.437% (-0.004%) from 74.441%
21179551844

push

github

Razakhel
[Tests/Script/LuaNetwork] Added UDP client & server unit tests

1 of 2 new or added lines in 1 file covered. (50.0%)

8564 of 11505 relevant lines covered (74.44%)

1718.44 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

94.29
/src/RaZ/Script/LuaNetwork.cpp
1
#include "RaZ/Network/TcpClient.hpp"
2
#include "RaZ/Network/TcpServer.hpp"
3
#include "RaZ/Network/UdpClient.hpp"
4
#include "RaZ/Network/UdpServer.hpp"
5
#include "RaZ/Script/LuaWrapper.hpp"
6
#include "RaZ/Utils/TypeUtils.hpp"
7

8
#define SOL_ALL_SAFETIES_ON 1
9
#include "sol/sol.hpp"
10

11
namespace Raz {
12

13
using namespace TypeUtils;
14

15
void LuaWrapper::registerNetworkTypes() {
2✔
16
  sol::state& state = getState();
2✔
17

18
  {
19
    sol::usertype<TcpClient> tcpClient = state.new_usertype<TcpClient>("TcpClient",
20
                                                                       sol::constructors<TcpClient(),
×
21
                                                                                         TcpClient(const std::string&, unsigned short)>());
2✔
22
    tcpClient["isConnected"]               = &TcpClient::isConnected;
2✔
23
    tcpClient["connect"]                   = &TcpClient::connect;
2✔
24
    tcpClient["send"]                      = &TcpClient::send;
2✔
25
    tcpClient["recoverAvailableByteCount"] = &TcpClient::recoverAvailableByteCount;
2✔
26
    tcpClient["receive"]                   = sol::overload([] (TcpClient& c) { return c.receive(); },
2✔
27
                                                           PickOverload<bool>(&TcpClient::receive));
4✔
28
    tcpClient["receiveAtLeast"]            = sol::overload([] (TcpClient& c, std::size_t b) { return c.receiveAtLeast(b); },
2✔
29
                                                           PickOverload<std::size_t, bool>(&TcpClient::receiveAtLeast));
4✔
30
    tcpClient["receiveExactly"]            = sol::overload([] (TcpClient& c, std::size_t b) { return c.receiveExactly(b); },
2✔
31
                                                           PickOverload<std::size_t, bool>(&TcpClient::receiveExactly));
4✔
32
    tcpClient["receiveUntil"]              = sol::overload([] (TcpClient& c, std::string_view d) { return c.receiveUntil(d); },
2✔
33
                                                           PickOverload<std::string_view, bool>(&TcpClient::receiveUntil));
4✔
34
    tcpClient["disconnect"]                = &TcpClient::disconnect;
2✔
35
  }
2✔
36

37
  {
38
    sol::usertype<TcpServer> tcpServer = state.new_usertype<TcpServer>("TcpServer",
39
                                                                       sol::constructors<TcpServer()>());
2✔
40
    tcpServer["start"] = &TcpServer::start;
2✔
41
    tcpServer["stop"]  = &TcpServer::stop;
2✔
42
  }
2✔
43

44
  {
45
    sol::usertype<UdpClient> udpClient = state.new_usertype<UdpClient>("UdpClient",
NEW
46
                                                                       sol::constructors<UdpClient(),
×
47
                                                                                         UdpClient(const std::string&, unsigned short)>());
2✔
48
    udpClient["setDestination"]            = &UdpClient::setDestination;
2✔
49
    udpClient["send"]                      = &UdpClient::send;
2✔
50
    udpClient["recoverAvailableByteCount"] = &UdpClient::recoverAvailableByteCount;
2✔
51
    udpClient["receive"]                   = &UdpClient::receive;
2✔
52
    udpClient["close"]                     = &UdpClient::close;
2✔
53
  }
2✔
54

55
  {
56
    sol::usertype<UdpServer> udpServer = state.new_usertype<UdpServer>("UdpServer",
57
                                                                       sol::constructors<UdpServer()>());
2✔
58
    udpServer["start"] = &UdpServer::start;
2✔
59
    udpServer["stop"]  = &UdpServer::stop;
2✔
60
  }
2✔
61
}
2✔
62

63
} // namespace Raz
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc