lokinet/test/exit_unittest.cpp
2018-12-12 02:53:01 +00:00

31 lines
840 B
C++

#include <gtest/gtest.h>
#include <exit.hpp>
#include <router.hpp>
struct ExitTest : public ::testing::Test
{
ExitTest() : r(nullptr, nullptr, nullptr)
{
}
llarp::Router r;
};
TEST_F(ExitTest, AddMultipleIP)
{
llarp::PubKey pk;
pk.Randomize();
llarp::PathID_t firstPath, secondPath;
firstPath.Randomize();
secondPath.Randomize();
llarp::exit::Context::Config_t conf;
conf.emplace("exit", "true");
conf.emplace("type", "null");
conf.emplace("ifaddr", "10.0.0.1/24");
ASSERT_TRUE(r.exitContext.AddExitEndpoint("test-exit", conf));
ASSERT_TRUE(r.exitContext.ObtainNewExit(pk, firstPath, true));
ASSERT_TRUE(r.exitContext.ObtainNewExit(pk, secondPath, true));
ASSERT_TRUE(r.exitContext.FindEndpointForPath(firstPath)->LocalIP()
== r.exitContext.FindEndpointForPath(secondPath)->LocalIP());
};