COOPENOMICS  v1
Кооперативная Экономика
blockinfo_tester.hpp
См. документацию.
1#pragma once
2
3#ifdef TEST_INCLUDE
4
5#include <fc/io/varint.hpp>
6#include <fc/time.hpp>
7
8#else
9
10#include <eosio/time.hpp>
11#include <eosio/varint.hpp>
12
14
15#endif
16
17#include <cstdint>
18#include <optional>
19#include <variant>
20
22
23#ifdef TEST_INCLUDE
24
26using varint = fc::unsigned_int;
27
28#else
29
31using varint = eosio::unsigned_int;
32
33#endif
34
42{
44 uint32_t batch_size;
45};
46
47#ifdef TEST_INCLUDE
48
50{
51 uint32_t batch_start_height;
55};
56
57#else
58
60
61#endif
62
67{
68 enum error_code_enum : uint32_t
69 {
74 };
75
76 std::optional<block_batch_info> result;
78
79 bool has_error() const { return !(error_code.value == no_error && result.has_value()); }
80
81 error_code_enum get_error() const { return static_cast<error_code_enum>(error_code.value); }
82
83#ifndef TEST_INCLUDE
84
86
87#endif
88};
89
90using input_type = std::variant<get_latest_block_batch_info>;
91
92using output_type = std::variant<latest_block_batch_info_result>;
93
94} // namespace system_contracts::testing::test_contracts::blockinfo_tester
95
96#ifdef TEST_INCLUDE
97
99 (batch_start_height_offset)(batch_size))
101 (batch_start_height)(batch_start_timestamp)(batch_current_end_height)(batch_current_end_timestamp))
102FC_REFLECT_ENUM(
104 (no_error)(invalid_input)(unsupported_version)(insufficient_data))
106 (result)(error_code))
107
108#endif
FC_REFLECT(powerup_config,(powerup_days)(min_powerup_fee)) struct powerup_state_resource
Definition: eosio.powerup_tests.cpp:22
eosio::unsigned_int varint
Definition: blockinfo_tester.hpp:31
std::variant< get_latest_block_batch_info > input_type
Definition: blockinfo_tester.hpp:90
std::variant< latest_block_batch_info_result > output_type
Definition: blockinfo_tester.hpp:92
eosio::time_point time_point
Definition: blockinfo_tester.hpp:30
Definition: block_info.hpp:37
uint32_t batch_current_end_height
Definition: block_info.hpp:40
uint32_t batch_start_height
Definition: block_info.hpp:38
eosio::time_point batch_current_end_timestamp
Definition: block_info.hpp:41
eosio::time_point batch_start_timestamp
Definition: block_info.hpp:39
Input data structure for get_latest_block_batch_info RPC.
Definition: blockinfo_tester.hpp:42
Output data structure for get_latest_block_batch_info RPC.
Definition: blockinfo_tester.hpp:67
std::optional< block_batch_info > result
Definition: blockinfo_tester.hpp:76
error_code_enum get_error() const
Definition: blockinfo_tester.hpp:81