// Copyright (c) 2014-2018 Zano Project // Copyright (c) 2014-2018 The Louisdor Project // Copyright (c) 2012-2013 The Cryptonote developers // Distributed under the MIT/X11 software license, see the accompanying // file COPYING or http://www.opensource.org/licenses/mit-license.php. #pragma once #include "chaingen.h" /************************************************************************/ /* */ /************************************************************************/ class gen_ring_signature_1 : public test_chain_unit_base { public: gen_ring_signature_1(); bool generate(std::vector& events) const; bool check_balances_1(currency::core& c, size_t ev_index, const std::vector& events); bool check_balances_2(currency::core& c, size_t ev_index, const std::vector& events); private: currency::account_base m_bob_account; currency::account_base m_alice_account; }; /************************************************************************/ /* */ /************************************************************************/ class gen_ring_signature_2 : public test_chain_unit_base { public: gen_ring_signature_2(); bool generate(std::vector& events) const; bool check_balances_1(currency::core& c, size_t ev_index, const std::vector& events); bool check_balances_2(currency::core& c, size_t ev_index, const std::vector& events); private: currency::account_base m_bob_account; currency::account_base m_alice_account; }; /************************************************************************/ /* */ /************************************************************************/ class gen_ring_signature_big : public test_chain_unit_base { public: gen_ring_signature_big(); bool generate(std::vector& events) const; bool check_balances_1(currency::core& c, size_t ev_index, const std::vector& events); bool check_balances_2(currency::core& c, size_t ev_index, const std::vector& events); private: size_t m_test_size; uint64_t m_tx_amount; currency::account_base m_bob_account; currency::account_base m_alice_account; };