1
1
Fork 0
mirror of https://github.com/oxen-io/lokinet synced 2023-12-14 06:53:00 +01:00
lokinet/test/router/test_llarp_router_version.cpp

51 lines
1.1 KiB
C++
Raw Normal View History

#include <gtest/gtest.h>
#include <router_version.hpp>
#include "router/router.hpp"
class TestRouterVersion : public ::testing::Test
{
};
TEST_F(TestRouterVersion, TestCompatibilityWhenProtocolEqual)
{
llarp::RouterVersion v1( {0, 1, 2}, 1);
llarp::RouterVersion v2( {0, 1, 2}, 1);
EXPECT_TRUE(v1.IsCompatableWith(v2));
}
TEST_F(TestRouterVersion, TestCompatibilityWhenProtocolUnequal)
{
llarp::RouterVersion older( {0, 1, 2}, 1);
llarp::RouterVersion newer( {0, 1, 2}, 2);
EXPECT_FALSE(older.IsCompatableWith(newer));
EXPECT_FALSE(newer.IsCompatableWith(older));
}
TEST_F(TestRouterVersion, TestEmptyCompatibility)
{
llarp::RouterVersion v1( {0, 0, 1}, LLARP_PROTO_VERSION);
EXPECT_FALSE(v1.IsCompatableWith(llarp::emptyRouterVersion));
}
TEST_F(TestRouterVersion, TestIsEmpty)
{
llarp::RouterVersion notEmpty( {0, 0, 1}, LLARP_PROTO_VERSION);
EXPECT_FALSE(notEmpty.IsEmpty());
EXPECT_TRUE(llarp::emptyRouterVersion.IsEmpty());
}
TEST_F(TestRouterVersion, TestClear)
{
llarp::RouterVersion version( {0, 0, 1}, LLARP_PROTO_VERSION);
EXPECT_FALSE(version.IsEmpty());
version.Clear();
EXPECT_TRUE(version.IsEmpty());
}