mirror of
https://github.com/status-im/evmc.git
synced 2025-02-23 08:28:15 +00:00
test: Bring back the unit tests of deprecated features
This commit is contained in:
parent
7e4db85487
commit
87f2c680cb
@ -12,6 +12,7 @@ add_executable(
|
||||
evmc-unittests
|
||||
loader_mock.h
|
||||
test_cpp.cpp
|
||||
test_deprecated.cpp
|
||||
test_helpers.cpp
|
||||
test_instructions.cpp
|
||||
test_loader.cpp
|
||||
|
50
test/unittests/test_deprecated.cpp
Normal file
50
test/unittests/test_deprecated.cpp
Normal file
@ -0,0 +1,50 @@
|
||||
// EVMC: Ethereum Client-VM Connector API.
|
||||
// Copyright 2019 The EVMC Authors.
|
||||
// Licensed under the Apache License, Version 2.0.
|
||||
|
||||
#include <evmc/helpers.hpp>
|
||||
|
||||
#include <gtest/gtest.h>
|
||||
#include <map>
|
||||
#include <unordered_map>
|
||||
|
||||
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
|
||||
|
||||
TEST(helpers, fnv1a)
|
||||
{
|
||||
const uint8_t text[] = {'E', 'V', 'M', 'C'};
|
||||
const auto h = fnv1a(text, sizeof(text));
|
||||
EXPECT_EQ(h, sizeof(size_t) == 8 ? 0x15e05d6d22fed89a : 0xffaa6a9a);
|
||||
}
|
||||
|
||||
TEST(helpers, is_zero)
|
||||
{
|
||||
auto a = evmc_address{};
|
||||
EXPECT_TRUE(is_zero(a));
|
||||
a.bytes[0] = 1;
|
||||
EXPECT_FALSE(is_zero(a));
|
||||
|
||||
auto b = evmc_bytes32{};
|
||||
EXPECT_TRUE(is_zero(b));
|
||||
b.bytes[0] = 1;
|
||||
EXPECT_FALSE(is_zero(b));
|
||||
}
|
||||
|
||||
TEST(helpers, maps)
|
||||
{
|
||||
std::map<evmc_address, bool> addresses;
|
||||
addresses[{}] = true;
|
||||
ASSERT_EQ(addresses.size(), 1);
|
||||
|
||||
std::unordered_map<evmc_address, bool> unordered_addresses;
|
||||
unordered_addresses.emplace(*addresses.begin());
|
||||
EXPECT_EQ(unordered_addresses.size(), 1);
|
||||
|
||||
std::map<evmc_bytes32, bool> storage;
|
||||
storage[{}] = true;
|
||||
ASSERT_EQ(storage.size(), 1);
|
||||
|
||||
std::unordered_map<evmc_bytes32, bool> unordered_storage;
|
||||
unordered_storage.emplace(*storage.begin());
|
||||
EXPECT_EQ(unordered_storage.size(), 1);
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user