diff --git a/external/gtest/include/gtest/gtest-spi.h b/external/gtest/include/gtest/gtest-spi.h index f63fa9a1..f59ec6d7 100644 --- a/external/gtest/include/gtest/gtest-spi.h +++ b/external/gtest/include/gtest/gtest-spi.h @@ -75,7 +75,7 @@ class GTEST_API_ ScopedFakeTestPartResultReporter // // This method is from the TestPartResultReporterInterface // interface. - virtual void ReportTestPartResult(const TestPartResult& result); + virtual void ReportTestPartResult(const TestPartResult& result) override; private: void Init(); diff --git a/external/gtest/include/gtest/gtest-test-part.h b/external/gtest/include/gtest/gtest-test-part.h index 77eb8448..b93b114f 100644 --- a/external/gtest/include/gtest/gtest-test-part.h +++ b/external/gtest/include/gtest/gtest-test-part.h @@ -162,8 +162,8 @@ class GTEST_API_ HasNewFatalFailureHelper : public TestPartResultReporterInterface { public: HasNewFatalFailureHelper(); - virtual ~HasNewFatalFailureHelper(); - virtual void ReportTestPartResult(const TestPartResult& result); + virtual ~HasNewFatalFailureHelper() override; + virtual void ReportTestPartResult(const TestPartResult& result) override; bool has_new_fatal_failure() const { return has_new_fatal_failure_; } private: bool has_new_fatal_failure_; diff --git a/external/gtest/include/gtest/gtest.h b/external/gtest/include/gtest/gtest.h index 6fa0a392..82b58dc7 100644 --- a/external/gtest/include/gtest/gtest.h +++ b/external/gtest/include/gtest/gtest.h @@ -1011,21 +1011,21 @@ class TestEventListener { // above. class EmptyTestEventListener : public TestEventListener { public: - virtual void OnTestProgramStart(const UnitTest& /*unit_test*/) {} + virtual void OnTestProgramStart(const UnitTest& /*unit_test*/) override {} virtual void OnTestIterationStart(const UnitTest& /*unit_test*/, - int /*iteration*/) {} - virtual void OnEnvironmentsSetUpStart(const UnitTest& /*unit_test*/) {} - virtual void OnEnvironmentsSetUpEnd(const UnitTest& /*unit_test*/) {} - virtual void OnTestCaseStart(const TestCase& /*test_case*/) {} - virtual void OnTestStart(const TestInfo& /*test_info*/) {} - virtual void OnTestPartResult(const TestPartResult& /*test_part_result*/) {} - virtual void OnTestEnd(const TestInfo& /*test_info*/) {} - virtual void OnTestCaseEnd(const TestCase& /*test_case*/) {} - virtual void OnEnvironmentsTearDownStart(const UnitTest& /*unit_test*/) {} - virtual void OnEnvironmentsTearDownEnd(const UnitTest& /*unit_test*/) {} + int /*iteration*/) override {} + virtual void OnEnvironmentsSetUpStart(const UnitTest& /*unit_test*/) override {} + virtual void OnEnvironmentsSetUpEnd(const UnitTest& /*unit_test*/) override {} + virtual void OnTestCaseStart(const TestCase& /*test_case*/) override {} + virtual void OnTestStart(const TestInfo& /*test_info*/) override {} + virtual void OnTestPartResult(const TestPartResult& /*test_part_result*/) override {} + virtual void OnTestEnd(const TestInfo& /*test_info*/) override {} + virtual void OnTestCaseEnd(const TestCase& /*test_case*/) override {} + virtual void OnEnvironmentsTearDownStart(const UnitTest& /*unit_test*/) override {} + virtual void OnEnvironmentsTearDownEnd(const UnitTest& /*unit_test*/) override {} virtual void OnTestIterationEnd(const UnitTest& /*unit_test*/, - int /*iteration*/) {} - virtual void OnTestProgramEnd(const UnitTest& /*unit_test*/) {} + int /*iteration*/) override {} + virtual void OnTestProgramEnd(const UnitTest& /*unit_test*/) override {} }; // TestEventListeners lets users add listeners to track events in Google Test. diff --git a/external/gtest/include/gtest/internal/gtest-death-test-internal.h b/external/gtest/include/gtest/internal/gtest-death-test-internal.h index 2b3a78f5..a82aec1f 100644 --- a/external/gtest/include/gtest/internal/gtest-death-test-internal.h +++ b/external/gtest/include/gtest/internal/gtest-death-test-internal.h @@ -148,7 +148,7 @@ class DeathTestFactory { class DefaultDeathTestFactory : public DeathTestFactory { public: virtual bool Create(const char* statement, const RE* regex, - const char* file, int line, DeathTest** test); + const char* file, int line, DeathTest** test) override; }; // Returns true if exit_status describes a process that was terminated diff --git a/external/gtest/include/gtest/internal/gtest-internal.h b/external/gtest/include/gtest/internal/gtest-internal.h index 0dcc3a31..064fcfa4 100644 --- a/external/gtest/include/gtest/internal/gtest-internal.h +++ b/external/gtest/include/gtest/internal/gtest-internal.h @@ -451,7 +451,7 @@ class TestFactoryBase { template class TestFactoryImpl : public TestFactoryBase { public: - virtual Test* CreateTest() { return new TestClass; } + virtual Test* CreateTest() override { return new TestClass; } }; #if GTEST_OS_WINDOWS @@ -1138,7 +1138,7 @@ class GTEST_TEST_CLASS_NAME_(test_case_name, test_name) : public parent_class {\ public:\ GTEST_TEST_CLASS_NAME_(test_case_name, test_name)() {}\ private:\ - virtual void TestBody();\ + virtual void TestBody() override;\ static ::testing::TestInfo* const test_info_ GTEST_ATTRIBUTE_UNUSED_;\ GTEST_DISALLOW_COPY_AND_ASSIGN_(\ GTEST_TEST_CLASS_NAME_(test_case_name, test_name));\ diff --git a/external/gtest/include/gtest/internal/gtest-param-util.h b/external/gtest/include/gtest/internal/gtest-param-util.h index d5e1028b..86ac88f7 100644 --- a/external/gtest/include/gtest/internal/gtest-param-util.h +++ b/external/gtest/include/gtest/internal/gtest-param-util.h @@ -270,12 +270,12 @@ class ValuesInIteratorRangeGenerator : public ParamGeneratorInterface { template ValuesInIteratorRangeGenerator(ForwardIterator begin, ForwardIterator end) : container_(begin, end) {} - virtual ~ValuesInIteratorRangeGenerator() {} + virtual ~ValuesInIteratorRangeGenerator() override {} - virtual ParamIteratorInterface* Begin() const { + virtual ParamIteratorInterface* Begin() const override { return new Iterator(this, container_.begin()); } - virtual ParamIteratorInterface* End() const { + virtual ParamIteratorInterface* End() const override { return new Iterator(this, container_.end()); } @@ -287,16 +287,16 @@ class ValuesInIteratorRangeGenerator : public ParamGeneratorInterface { Iterator(const ParamGeneratorInterface* base, typename ContainerType::const_iterator iterator) : base_(base), iterator_(iterator) {} - virtual ~Iterator() {} + virtual ~Iterator() override {} - virtual const ParamGeneratorInterface* BaseGenerator() const { + virtual const ParamGeneratorInterface* BaseGenerator() const override { return base_; } - virtual void Advance() { + virtual void Advance() override { ++iterator_; value_.reset(); } - virtual ParamIteratorInterface* Clone() const { + virtual ParamIteratorInterface* Clone() const override { return new Iterator(*this); } // We need to use cached value referenced by iterator_ because *iterator_ @@ -306,12 +306,12 @@ class ValuesInIteratorRangeGenerator : public ParamGeneratorInterface { // can advance iterator_ beyond the end of the range, and we cannot // detect that fact. The client code, on the other hand, is // responsible for not calling Current() on an out-of-range iterator. - virtual const T* Current() const { + virtual const T* Current() const override { if (value_.get() == NULL) value_.reset(new T(*iterator_)); return value_.get(); } - virtual bool Equals(const ParamIteratorInterface& other) const { + virtual bool Equals(const ParamIteratorInterface& other) const override { // Having the same base generator guarantees that the other // iterator is of the same type and we can downcast. GTEST_CHECK_(BaseGenerator() == other.BaseGenerator()) @@ -355,7 +355,7 @@ class ParameterizedTestFactory : public TestFactoryBase { typedef typename TestClass::ParamType ParamType; explicit ParameterizedTestFactory(ParamType parameter) : parameter_(parameter) {} - virtual Test* CreateTest() { + virtual Test* CreateTest() override { TestClass::SetParam(¶meter_); return new TestClass(); } @@ -454,9 +454,9 @@ class ParameterizedTestCaseInfo : public ParameterizedTestCaseInfoBase { : test_case_name_(name) {} // Test case base name for display purposes. - virtual const string& GetTestCaseName() const { return test_case_name_; } + virtual const string& GetTestCaseName() const override { return test_case_name_; } // Test case id to verify identity. - virtual TypeId GetTestCaseTypeId() const { return GetTypeId(); } + virtual TypeId GetTestCaseTypeId() const override { return GetTypeId(); } // TEST_P macro uses AddTestPattern() to record information // about a single test in a LocalTestInfo structure. // test_case_name is the base name of the test case (without invocation @@ -484,7 +484,7 @@ class ParameterizedTestCaseInfo : public ParameterizedTestCaseInfoBase { // This method should not be called more then once on any single // instance of a ParameterizedTestCaseInfoBase derived class. // UnitTest has a guard to prevent from calling this method more then once. - virtual void RegisterTests() { + virtual void RegisterTests() override { for (typename TestInfoContainer::iterator test_it = tests_.begin(); test_it != tests_.end(); ++test_it) { linked_ptr test_info = *test_it; diff --git a/external/gtest/include/gtest/internal/gtest-port.h b/external/gtest/include/gtest/internal/gtest-port.h index dc4fe0cb..2c87972d 100644 --- a/external/gtest/include/gtest/internal/gtest-port.h +++ b/external/gtest/include/gtest/internal/gtest-port.h @@ -1296,7 +1296,7 @@ class ThreadWithParam : public ThreadWithParamBase { } } - virtual void Run() { + virtual void Run() override { if (thread_can_start_ != NULL) thread_can_start_->WaitForNotification(); func_(param_); diff --git a/external/gtest/src/gtest-death-test.cc b/external/gtest/src/gtest-death-test.cc index a6023fce..c158d0b8 100644 --- a/external/gtest/src/gtest-death-test.cc +++ b/external/gtest/src/gtest-death-test.cc @@ -373,8 +373,8 @@ class DeathTestImpl : public DeathTest { // read_fd_ is expected to be closed and cleared by a derived class. ~DeathTestImpl() { GTEST_DEATH_TEST_CHECK_(read_fd_ == -1); } - void Abort(AbortReason reason); - virtual bool Passed(bool status_ok); + void Abort(AbortReason reason) override; + virtual bool Passed(bool status_ok) override; const char* statement() const { return statement_; } const RE* regex() const { return regex_; } @@ -778,7 +778,7 @@ class ForkingDeathTest : public DeathTestImpl { ForkingDeathTest(const char* statement, const RE* regex); // All of these virtual functions are inherited from DeathTest. - virtual int Wait(); + virtual int Wait() override; protected: void set_child_pid(pid_t child_pid) { child_pid_ = child_pid; } @@ -814,7 +814,7 @@ class NoExecDeathTest : public ForkingDeathTest { public: NoExecDeathTest(const char* a_statement, const RE* a_regex) : ForkingDeathTest(a_statement, a_regex) { } - virtual TestRole AssumeRole(); + virtual TestRole AssumeRole() override; }; // The AssumeRole process for a fork-and-run death test. It implements a @@ -870,7 +870,7 @@ class ExecDeathTest : public ForkingDeathTest { ExecDeathTest(const char* a_statement, const RE* a_regex, const char* file, int line) : ForkingDeathTest(a_statement, a_regex), file_(file), line_(line) { } - virtual TestRole AssumeRole(); + virtual TestRole AssumeRole() override; private: static ::std::vector GetArgvsForDeathTestChildProcess() { diff --git a/external/gtest/src/gtest-internal-inl.h b/external/gtest/src/gtest-internal-inl.h index 35df303c..65561806 100644 --- a/external/gtest/src/gtest-internal-inl.h +++ b/external/gtest/src/gtest-internal-inl.h @@ -441,10 +441,10 @@ class OsStackTraceGetter : public OsStackTraceGetterInterface { public: OsStackTraceGetter() : caller_frame_(NULL) {} - virtual string CurrentStackTrace(int max_depth, int skip_count) + virtual string CurrentStackTrace(int max_depth, int skip_count) override GTEST_LOCK_EXCLUDED_(mutex_); - virtual void UponLeavingGTest() GTEST_LOCK_EXCLUDED_(mutex_); + virtual void UponLeavingGTest() override GTEST_LOCK_EXCLUDED_(mutex_); // This string is inserted in place of stack frames that are part of // Google Test's implementation. @@ -477,7 +477,7 @@ class DefaultGlobalTestPartResultReporter explicit DefaultGlobalTestPartResultReporter(UnitTestImpl* unit_test); // Implements the TestPartResultReporterInterface. Reports the test part // result in the current test. - virtual void ReportTestPartResult(const TestPartResult& result); + virtual void ReportTestPartResult(const TestPartResult& result) override; private: UnitTestImpl* const unit_test_; @@ -493,7 +493,7 @@ class DefaultPerThreadTestPartResultReporter explicit DefaultPerThreadTestPartResultReporter(UnitTestImpl* unit_test); // Implements the TestPartResultReporterInterface. The implementation just // delegates to the current global test part result reporter of *unit_test_. - virtual void ReportTestPartResult(const TestPartResult& result); + virtual void ReportTestPartResult(const TestPartResult& result) override; private: UnitTestImpl* const unit_test_; @@ -1100,7 +1100,7 @@ class StreamingListener : public EmptyTestEventListener { } // Sends a string to the socket. - virtual void Send(const string& message) { + virtual void Send(const string& message) override { GTEST_CHECK_(sockfd_ != -1) << "Send() can be called only when there is a connection."; @@ -1117,7 +1117,7 @@ class StreamingListener : public EmptyTestEventListener { void MakeConnection(); // Closes the socket. - void CloseConnection() { + void CloseConnection() override { GTEST_CHECK_(sockfd_ != -1) << "CloseConnection() can be called only when there is a connection."; @@ -1141,11 +1141,11 @@ class StreamingListener : public EmptyTestEventListener { explicit StreamingListener(AbstractSocketWriter* socket_writer) : socket_writer_(socket_writer) { Start(); } - void OnTestProgramStart(const UnitTest& /* unit_test */) { + void OnTestProgramStart(const UnitTest& /* unit_test */) override { SendLn("event=TestProgramStart"); } - void OnTestProgramEnd(const UnitTest& unit_test) { + void OnTestProgramEnd(const UnitTest& unit_test) override { // Note that Google Test current only report elapsed time for each // test iteration, not for the entire test program. SendLn("event=TestProgramEnd&passed=" + FormatBool(unit_test.Passed())); @@ -1154,39 +1154,39 @@ class StreamingListener : public EmptyTestEventListener { socket_writer_->CloseConnection(); } - void OnTestIterationStart(const UnitTest& /* unit_test */, int iteration) { + void OnTestIterationStart(const UnitTest& /* unit_test */, int iteration) override { SendLn("event=TestIterationStart&iteration=" + StreamableToString(iteration)); } - void OnTestIterationEnd(const UnitTest& unit_test, int /* iteration */) { + void OnTestIterationEnd(const UnitTest& unit_test, int /* iteration */) override { SendLn("event=TestIterationEnd&passed=" + FormatBool(unit_test.Passed()) + "&elapsed_time=" + StreamableToString(unit_test.elapsed_time()) + "ms"); } - void OnTestCaseStart(const TestCase& test_case) { + void OnTestCaseStart(const TestCase& test_case) override { SendLn(std::string("event=TestCaseStart&name=") + test_case.name()); } - void OnTestCaseEnd(const TestCase& test_case) { + void OnTestCaseEnd(const TestCase& test_case) override { SendLn("event=TestCaseEnd&passed=" + FormatBool(test_case.Passed()) + "&elapsed_time=" + StreamableToString(test_case.elapsed_time()) + "ms"); } - void OnTestStart(const TestInfo& test_info) { + void OnTestStart(const TestInfo& test_info) override { SendLn(std::string("event=TestStart&name=") + test_info.name()); } - void OnTestEnd(const TestInfo& test_info) { + void OnTestEnd(const TestInfo& test_info) override { SendLn("event=TestEnd&passed=" + FormatBool((test_info.result())->Passed()) + "&elapsed_time=" + StreamableToString((test_info.result())->elapsed_time()) + "ms"); } - void OnTestPartResult(const TestPartResult& test_part_result) { + void OnTestPartResult(const TestPartResult& test_part_result) override { const char* file_name = test_part_result.file_name(); if (file_name == NULL) file_name = ""; diff --git a/external/gtest/src/gtest.cc b/external/gtest/src/gtest.cc index 6de53dd0..e3ad4f35 100644 --- a/external/gtest/src/gtest.cc +++ b/external/gtest/src/gtest.cc @@ -2697,19 +2697,19 @@ class PrettyUnitTestResultPrinter : public TestEventListener { } // The following methods override what's in the TestEventListener class. - virtual void OnTestProgramStart(const UnitTest& /*unit_test*/) {} - virtual void OnTestIterationStart(const UnitTest& unit_test, int iteration); - virtual void OnEnvironmentsSetUpStart(const UnitTest& unit_test); - virtual void OnEnvironmentsSetUpEnd(const UnitTest& /*unit_test*/) {} - virtual void OnTestCaseStart(const TestCase& test_case); - virtual void OnTestStart(const TestInfo& test_info); - virtual void OnTestPartResult(const TestPartResult& result); - virtual void OnTestEnd(const TestInfo& test_info); - virtual void OnTestCaseEnd(const TestCase& test_case); - virtual void OnEnvironmentsTearDownStart(const UnitTest& unit_test); - virtual void OnEnvironmentsTearDownEnd(const UnitTest& /*unit_test*/) {} - virtual void OnTestIterationEnd(const UnitTest& unit_test, int iteration); - virtual void OnTestProgramEnd(const UnitTest& /*unit_test*/) {} + virtual void OnTestProgramStart(const UnitTest& /*unit_test*/) override {} + virtual void OnTestIterationStart(const UnitTest& unit_test, int iteration) override; + virtual void OnEnvironmentsSetUpStart(const UnitTest& unit_test) override; + virtual void OnEnvironmentsSetUpEnd(const UnitTest& /*unit_test*/) override {} + virtual void OnTestCaseStart(const TestCase& test_case) override; + virtual void OnTestStart(const TestInfo& test_info) override; + virtual void OnTestPartResult(const TestPartResult& result) override; + virtual void OnTestEnd(const TestInfo& test_info) override; + virtual void OnTestCaseEnd(const TestCase& test_case) override; + virtual void OnEnvironmentsTearDownStart(const UnitTest& unit_test) override; + virtual void OnEnvironmentsTearDownEnd(const UnitTest& /*unit_test*/) override {} + virtual void OnTestIterationEnd(const UnitTest& unit_test, int iteration) override; + virtual void OnTestProgramEnd(const UnitTest& /*unit_test*/) override {} private: static void PrintFailedTests(const UnitTest& unit_test); @@ -2908,19 +2908,19 @@ class TestEventRepeater : public TestEventListener { bool forwarding_enabled() const { return forwarding_enabled_; } void set_forwarding_enabled(bool enable) { forwarding_enabled_ = enable; } - virtual void OnTestProgramStart(const UnitTest& unit_test); - virtual void OnTestIterationStart(const UnitTest& unit_test, int iteration); - virtual void OnEnvironmentsSetUpStart(const UnitTest& unit_test); - virtual void OnEnvironmentsSetUpEnd(const UnitTest& unit_test); - virtual void OnTestCaseStart(const TestCase& test_case); - virtual void OnTestStart(const TestInfo& test_info); - virtual void OnTestPartResult(const TestPartResult& result); - virtual void OnTestEnd(const TestInfo& test_info); - virtual void OnTestCaseEnd(const TestCase& test_case); - virtual void OnEnvironmentsTearDownStart(const UnitTest& unit_test); - virtual void OnEnvironmentsTearDownEnd(const UnitTest& unit_test); - virtual void OnTestIterationEnd(const UnitTest& unit_test, int iteration); - virtual void OnTestProgramEnd(const UnitTest& unit_test); + virtual void OnTestProgramStart(const UnitTest& unit_test) override; + virtual void OnTestIterationStart(const UnitTest& unit_test, int iteration) override; + virtual void OnEnvironmentsSetUpStart(const UnitTest& unit_test) override; + virtual void OnEnvironmentsSetUpEnd(const UnitTest& unit_test) override; + virtual void OnTestCaseStart(const TestCase& test_case) override; + virtual void OnTestStart(const TestInfo& test_info) override; + virtual void OnTestPartResult(const TestPartResult& result) override; + virtual void OnTestEnd(const TestInfo& test_info) override; + virtual void OnTestCaseEnd(const TestCase& test_case) override; + virtual void OnEnvironmentsTearDownStart(const UnitTest& unit_test) override; + virtual void OnEnvironmentsTearDownEnd(const UnitTest& unit_test) override; + virtual void OnTestIterationEnd(const UnitTest& unit_test, int iteration) override; + virtual void OnTestProgramEnd(const UnitTest& unit_test) override; private: // Controls whether events will be forwarded to listeners_. Set to false @@ -3013,7 +3013,7 @@ class XmlUnitTestResultPrinter : public EmptyTestEventListener { public: explicit XmlUnitTestResultPrinter(const char* output_file); - virtual void OnTestIterationEnd(const UnitTest& unit_test, int iteration); + virtual void OnTestIterationEnd(const UnitTest& unit_test, int iteration) override; private: // Is c a whitespace character that is normalized to a space character diff --git a/src/BlockchainExplorer/BlockchainExplorer.cpp b/src/BlockchainExplorer/BlockchainExplorer.cpp index 2a522aba..f918d1ad 100755 --- a/src/BlockchainExplorer/BlockchainExplorer.cpp +++ b/src/BlockchainExplorer/BlockchainExplorer.cpp @@ -550,12 +550,10 @@ void BlockchainExplorer::poolChanged() { for (const Hash hash : *removedTransactionsPtr) { auto iter = knownPoolState.find(hash); if (iter != knownPoolState.end()) { - removedTransactionsHashesPtr->push_back( - std::move(std::make_pair( - hash, - TransactionRemoveReason::INCLUDED_IN_BLOCK //Can't have real reason here. - )) - ); + removedTransactionsHashesPtr->push_back({ + hash, + TransactionRemoveReason::INCLUDED_IN_BLOCK // Can't have real reason here. + }); knownPoolState.erase(iter); } } diff --git a/src/BlockchainExplorer/BlockchainExplorerDataBuilder.cpp b/src/BlockchainExplorer/BlockchainExplorerDataBuilder.cpp index f0b7b640..f80b81ec 100755 --- a/src/BlockchainExplorer/BlockchainExplorerDataBuilder.cpp +++ b/src/BlockchainExplorer/BlockchainExplorerDataBuilder.cpp @@ -67,7 +67,7 @@ bool BlockchainExplorerDataBuilder::fillTxExtra(const std::vector& rawE } else if (typeid(TransactionExtraPublicKey) == field.type()) { extraDetails.publicKey.push_back(std::move(boost::get(field).publicKey)); } else if (typeid(TransactionExtraNonce) == field.type()) { - extraDetails.nonce.push_back(std::move(Common::toHex(boost::get(field).nonce.data(), boost::get(field).nonce.size()))); + extraDetails.nonce.push_back(Common::toHex(boost::get(field).nonce.data(), boost::get(field).nonce.size())); } } return true; diff --git a/src/BlockchainExplorer/BlockchainExplorerErrors.h b/src/BlockchainExplorer/BlockchainExplorerErrors.h index fc02f317..6e54af53 100644 --- a/src/BlockchainExplorer/BlockchainExplorerErrors.h +++ b/src/BlockchainExplorer/BlockchainExplorerErrors.h @@ -34,15 +34,15 @@ class BlockchainExplorerErrorCategory : public std::error_category { public: static BlockchainExplorerErrorCategory INSTANCE; - virtual const char* name() const throw() { + virtual const char* name() const throw() override { return "BlockchainExplorerErrorCategory"; } - virtual std::error_condition default_error_condition(int ev) const throw() { + virtual std::error_condition default_error_condition(int ev) const throw() override { return std::error_condition(ev, *this); } - virtual std::string message(int ev) const { + virtual std::string message(int ev) const override { switch (ev) { case static_cast(BlockchainExplorerErrorCodes::NOT_INITIALIZED): return "Object was not initialized"; case static_cast(BlockchainExplorerErrorCodes::ALREADY_INITIALIZED): return "Object has been already initialized"; diff --git a/src/Common/StringBuffer.h b/src/Common/StringBuffer.h index 4b293180..ba9e1f44 100755 --- a/src/Common/StringBuffer.h +++ b/src/Common/StringBuffer.h @@ -32,6 +32,8 @@ public: const static Size MAXIMUM_SIZE = MAXIMUM_SIZE_VALUE; const static Size INVALID; + static_assert(MAXIMUM_SIZE != 0, "StringBuffer's size must not be zero"); + // Default constructor. // After construction, 'StringBuffer' is empty, that is 'size' == 0 StringBuffer() : size(0) { @@ -202,7 +204,6 @@ public: // Compare two strings character-wise. bool operator<(StringView other) const { - assert(data != nullptr || size == 0); Size count = other.getSize() < size ? other.getSize() : size; for (Size i = 0; i < count; ++i) { Object char1 = *(data + i); @@ -354,7 +355,6 @@ public: // Looks for the last occurence of 'object' in 'StringView', // returns index or INVALID if there are no occurences. Size findLast(const Object& object) const { - assert(data != nullptr || size == 0); for (Size i = 0; i < size; ++i) { if (*(data + (size - 1 - i)) == object) { return size - 1 - i; diff --git a/src/CryptoNoteConfig.h b/src/CryptoNoteConfig.h index ad261adf..f2908bed 100644 --- a/src/CryptoNoteConfig.h +++ b/src/CryptoNoteConfig.h @@ -166,7 +166,8 @@ const CheckpointData CHECKPOINTS[] = { {816000, "32b7fdd4e4d715db81f8f09f4ba5e5c78e8113f2804d61a57378baee479ce745"}, {822000, "a3c9603c6813a0dc0efc40db288c356d1a7f02d1d2e47bee04346e73715f8984"}, {841000, "2cffb6504ee38f708a6256a63585f9382b3b426e64b4504236c70678bd160dce"}, - {890000, "a7132932ea31236ce6b8775cd1380edf90b5e536ee4202c77b69a3d62445fcd2"} + {890000, "a7132932ea31236ce6b8775cd1380edf90b5e536ee4202c77b69a3d62445fcd2"}, + {894000, "ae2624ea1472ecc36de0d812f21a32da2d4afc7d5770830083cbaf652209d316"} }; } // CryptoNote diff --git a/src/CryptoNoteCore/Blockchain.cpp b/src/CryptoNoteCore/Blockchain.cpp index 0485da74..7118705f 100644 --- a/src/CryptoNoteCore/Blockchain.cpp +++ b/src/CryptoNoteCore/Blockchain.cpp @@ -775,7 +775,7 @@ bool Blockchain::switch_to_alternative_blockchain(std::list f) {} - virtual uint64_t get_connections_count() { return 0; } - virtual void externalRelayNotifyToAll(int command, const BinaryArray& data_buff) {} + virtual void relay_notify_to_all(int command, const BinaryArray& data_buff, const net_connection_id* excludeConnection) override {} + virtual bool invoke_notify_to_peer(int command, const BinaryArray& req_buff, const CryptoNote::CryptoNoteConnectionContext& context) override { return true; } + virtual void for_each_connection(std::function f) override {} + virtual uint64_t get_connections_count() override { return 0; } + virtual void externalRelayNotifyToAll(int command, const BinaryArray& data_buff) override {} }; } diff --git a/src/PaymentGate/WalletServiceErrorCategory.h b/src/PaymentGate/WalletServiceErrorCategory.h index efee7b71..8d7cb212 100644 --- a/src/PaymentGate/WalletServiceErrorCategory.h +++ b/src/PaymentGate/WalletServiceErrorCategory.h @@ -35,15 +35,15 @@ class WalletServiceErrorCategory : public std::error_category { public: static WalletServiceErrorCategory INSTANCE; - virtual const char* name() const throw() { + virtual const char* name() const throw() override { return "WalletServiceErrorCategory"; } - virtual std::error_condition default_error_condition(int ev) const throw() { + virtual std::error_condition default_error_condition(int ev) const throw() override { return std::error_condition(ev, *this); } - virtual std::string message(int ev) const { + virtual std::string message(int ev) const override { WalletServiceErrorCode code = static_cast(ev); switch (code) { diff --git a/src/System/InterruptedException.h b/src/System/InterruptedException.h index b0085525..0b8f4a9e 100755 --- a/src/System/InterruptedException.h +++ b/src/System/InterruptedException.h @@ -23,7 +23,7 @@ namespace System { class InterruptedException : public std::exception { public: - const char* what() const throw() { + virtual const char* what() const throw() override { return "interrupted"; } }; diff --git a/src/Wallet/WalletErrors.h b/src/Wallet/WalletErrors.h index 93149a95..2a02b9aa 100644 --- a/src/Wallet/WalletErrors.h +++ b/src/Wallet/WalletErrors.h @@ -58,15 +58,15 @@ class WalletErrorCategory : public std::error_category { public: static WalletErrorCategory INSTANCE; - virtual const char* name() const throw() { + virtual const char* name() const throw() override { return "WalletErrorCategory"; } - virtual std::error_condition default_error_condition(int ev) const throw() { + virtual std::error_condition default_error_condition(int ev) const throw() override { return std::error_condition(ev, *this); } - virtual std::string message(int ev) const { + virtual std::string message(int ev) const override { switch (ev) { case NOT_INITIALIZED: return "Object was not initialized"; case WRONG_PASSWORD: return "The password is wrong"; diff --git a/src/WalletLegacy/WalletLegacy.cpp b/src/WalletLegacy/WalletLegacy.cpp index 752f7025..e231c89b 100755 --- a/src/WalletLegacy/WalletLegacy.cpp +++ b/src/WalletLegacy/WalletLegacy.cpp @@ -94,7 +94,7 @@ public: SyncStarter(BlockchainSynchronizer& sync) : m_sync(sync) {} virtual ~SyncStarter() {} - virtual void initCompleted(std::error_code result) { + virtual void initCompleted(std::error_code result) override { if (!result) { m_sync.start(); } diff --git a/src/WalletLegacy/WalletLegacyEvent.h b/src/WalletLegacy/WalletLegacyEvent.h index b1d97061..4760ccf7 100755 --- a/src/WalletLegacy/WalletLegacyEvent.h +++ b/src/WalletLegacy/WalletLegacyEvent.h @@ -38,7 +38,7 @@ public: WalletTransactionUpdatedEvent(TransactionId transactionId) : m_id(transactionId) {}; virtual ~WalletTransactionUpdatedEvent() {}; - virtual void notify(Tools::ObserverManager& observer) + virtual void notify(Tools::ObserverManager& observer) override { observer.notify(&IWalletLegacyObserver::transactionUpdated, m_id); } @@ -53,7 +53,7 @@ public: WalletSendTransactionCompletedEvent(TransactionId transactionId, std::error_code result) : m_id(transactionId), m_error(result) {}; virtual ~WalletSendTransactionCompletedEvent() {}; - virtual void notify(Tools::ObserverManager& observer) + virtual void notify(Tools::ObserverManager& observer) override { observer.notify(&IWalletLegacyObserver::sendTransactionCompleted, m_id, m_error); } @@ -69,7 +69,7 @@ public: WalletExternalTransactionCreatedEvent(TransactionId transactionId) : m_id(transactionId) {}; virtual ~WalletExternalTransactionCreatedEvent() {}; - virtual void notify(Tools::ObserverManager& observer) + virtual void notify(Tools::ObserverManager& observer) override { observer.notify(&IWalletLegacyObserver::externalTransactionCreated, m_id); } @@ -83,7 +83,7 @@ public: WalletSynchronizationProgressUpdatedEvent(uint32_t current, uint32_t total) : m_current(current), m_total(total) {}; virtual ~WalletSynchronizationProgressUpdatedEvent() {}; - virtual void notify(Tools::ObserverManager& observer) + virtual void notify(Tools::ObserverManager& observer) override { observer.notify(&IWalletLegacyObserver::synchronizationProgressUpdated, m_current, m_total); } @@ -98,7 +98,7 @@ public: WalletSynchronizationCompletedEvent(uint32_t current, uint32_t total, std::error_code result) : m_ec(result) {}; virtual ~WalletSynchronizationCompletedEvent() {}; - virtual void notify(Tools::ObserverManager& observer) { + virtual void notify(Tools::ObserverManager& observer) override { observer.notify(&IWalletLegacyObserver::synchronizationCompleted, m_ec); } @@ -112,7 +112,7 @@ public: WalletActualBalanceUpdatedEvent(uint64_t balance) : m_balance(balance) {}; virtual ~WalletActualBalanceUpdatedEvent() {}; - virtual void notify(Tools::ObserverManager& observer) + virtual void notify(Tools::ObserverManager& observer) override { observer.notify(&IWalletLegacyObserver::actualBalanceUpdated, m_balance); } @@ -126,7 +126,7 @@ public: WalletPendingBalanceUpdatedEvent(uint64_t balance) : m_balance(balance) {}; virtual ~WalletPendingBalanceUpdatedEvent() {}; - virtual void notify(Tools::ObserverManager& observer) + virtual void notify(Tools::ObserverManager& observer) override { observer.notify(&IWalletLegacyObserver::pendingBalanceUpdated, m_balance); } diff --git a/src/WalletLegacy/WalletRequest.h b/src/WalletLegacy/WalletRequest.h index b29ee323..8185ce81 100644 --- a/src/WalletLegacy/WalletRequest.h +++ b/src/WalletLegacy/WalletRequest.h @@ -48,7 +48,7 @@ public: virtual ~WalletGetRandomOutsByAmountsRequest() {}; - virtual void perform(INode& node, std::function cb) + virtual void perform(INode& node, std::function cb) override { node.getRandomOutsByAmounts(std::move(m_amounts), m_outsCount, std::ref(m_context->outs), std::bind(cb, m_cb, std::placeholders::_1)); }; @@ -66,7 +66,7 @@ public: WalletRelayTransactionRequest(const CryptoNote::Transaction& tx, Callback cb) : m_tx(tx), m_cb(cb) {}; virtual ~WalletRelayTransactionRequest() {}; - virtual void perform(INode& node, std::function cb) + virtual void perform(INode& node, std::function cb) override { node.relayTransaction(m_tx, std::bind(cb, m_cb, std::placeholders::_1)); } diff --git a/src/version.h.in b/src/version.h.in index 38ba5460..62c51d6f 100644 --- a/src/version.h.in +++ b/src/version.h.in @@ -1,4 +1,4 @@ #define BUILD_COMMIT_ID "@VERSION@" -#define PROJECT_VERSION "1.0.9" -#define PROJECT_VERSION_BUILD_NO "661" +#define PROJECT_VERSION "1.0.9.1" +#define PROJECT_VERSION_BUILD_NO "662" #define PROJECT_VERSION_LONG PROJECT_VERSION "." PROJECT_VERSION_BUILD_NO "(" BUILD_COMMIT_ID ")" diff --git a/tests/IntegrationTestLib/TestWalletLegacy.cpp b/tests/IntegrationTestLib/TestWalletLegacy.cpp index 0f6b1f23..15a61238 100644 --- a/tests/IntegrationTestLib/TestWalletLegacy.cpp +++ b/tests/IntegrationTestLib/TestWalletLegacy.cpp @@ -70,7 +70,7 @@ namespace { m_waiting = false; } - virtual void sendTransactionCompleted(TransactionId transactionId, std::error_code result) { + virtual void sendTransactionCompleted(TransactionId transactionId, std::error_code result) override { m_dispatcher.remoteSpawn([this, transactionId, result]() { if (m_waiting && m_expectedTxId == transactionId) { m_result = result; diff --git a/tests/IntegrationTests/main.cpp b/tests/IntegrationTests/main.cpp index e014a706..a00b7b3e 100755 --- a/tests/IntegrationTests/main.cpp +++ b/tests/IntegrationTests/main.cpp @@ -120,7 +120,7 @@ public: public: WaitForActualGrowObserver(Tests::Common::Semaphore& GotActual, uint64_t lastFunds) : m_GotActual(GotActual), m_lastFunds(lastFunds) { } - virtual void actualBalanceUpdated(uint64_t actualBalance) { + virtual void actualBalanceUpdated(uint64_t actualBalance) override { if (m_lastFunds < actualBalance) { m_GotActual.notify(); } @@ -136,7 +136,7 @@ public: public: WaitForActualDwindleObserver(Tests::Common::Semaphore& GotActual, uint64_t lastFunds) : m_GotActual(GotActual), m_lastFunds(lastFunds) { } - virtual void actualBalanceUpdated(uint64_t actualBalance) { + virtual void actualBalanceUpdated(uint64_t actualBalance) override { if (m_lastFunds > actualBalance) { m_GotActual.notify(); } @@ -152,7 +152,7 @@ public: public: WaitForPendingGrowObserver(Tests::Common::Semaphore& GotActual, uint64_t lastFunds) : m_GotActual(GotActual), m_lastFunds(lastFunds) { } - virtual void pendingBalanceUpdated(uint64_t pendingBalance) { + virtual void pendingBalanceUpdated(uint64_t pendingBalance) override { if (m_lastFunds < pendingBalance) { m_GotActual.notify(); } diff --git a/tests/System/EventTests.cpp b/tests/System/EventTests.cpp index 82ab65f1..c1764f85 100755 --- a/tests/System/EventTests.cpp +++ b/tests/System/EventTests.cpp @@ -42,7 +42,7 @@ TEST(EventTests, eventIsWorking) { TEST(EventTests, movedEventIsWorking) { Dispatcher dispatcher; - Event event(std::move(Event(dispatcher))); + Event event{Event(dispatcher)}; Context<> context(dispatcher, [&]() { event.set(); }); diff --git a/tests/System/TimerTests.cpp b/tests/System/TimerTests.cpp index 061b64c6..98f37118 100755 --- a/tests/System/TimerTests.cpp +++ b/tests/System/TimerTests.cpp @@ -47,7 +47,7 @@ TEST_F(TimerTests, timerIsWorking) { } TEST_F(TimerTests, movedTimerIsWorking) { - Timer t(std::move(Timer(dispatcher))); + Timer t{Timer{dispatcher}}; bool done = false; contextGroup.spawn([&]() { done = true; @@ -143,7 +143,7 @@ TEST_F(TimerTests, movedTimerIsWorking2) { bool done = false; contextGroup.spawn([&] { Timer t(dispatcher); - t = std::move(Timer(dispatcher)); + t = Timer{dispatcher}; //contextGroup.spawn([&]() { done = true; }); ASSERT_FALSE(done); diff --git a/tests/TransfersTests/TestNodeRpcProxy.cpp b/tests/TransfersTests/TestNodeRpcProxy.cpp index 89181878..094a976f 100755 --- a/tests/TransfersTests/TestNodeRpcProxy.cpp +++ b/tests/TransfersTests/TestNodeRpcProxy.cpp @@ -47,7 +47,7 @@ namespace { class PoolChangedObserver : public INodeObserver { public: - virtual void poolChanged() { + virtual void poolChanged() override { std::unique_lock lk(mutex); ready = true; cv.notify_all(); diff --git a/tests/TransfersTests/Tests.cpp b/tests/TransfersTests/Tests.cpp index f0af6f5c..ffd9d6f1 100644 --- a/tests/TransfersTests/Tests.cpp +++ b/tests/TransfersTests/Tests.cpp @@ -43,13 +43,13 @@ public: class WalletLegacyObserver : public IWalletLegacyObserver { public: - virtual void actualBalanceUpdated(uint64_t actualBalance) { + virtual void actualBalanceUpdated(uint64_t actualBalance) override { std::cout << "Actual balance updated = " << currency.formatAmount(actualBalance) << std::endl; m_actualBalance = actualBalance; m_sem.notify(); } - virtual void sendTransactionCompleted(TransactionId transactionId, std::error_code result) { + virtual void sendTransactionCompleted(TransactionId transactionId, std::error_code result) override { std::cout << "Transaction sent, result = " << result << std::endl; } diff --git a/tests/UnitTests/BlockReward.cpp b/tests/UnitTests/BlockReward.cpp index f671b961..17709465 100755 --- a/tests/UnitTests/BlockReward.cpp +++ b/tests/UnitTests/BlockReward.cpp @@ -93,7 +93,7 @@ namespace protected: static const uint64_t alreadyGeneratedCoins = 0; - virtual void SetUp() { + virtual void SetUp() override { m_blockTooBig = !m_currency.getBlockReward(0, 0, alreadyGeneratedCoins, 0, false, m_standardBlockReward, m_emissionChange); ASSERT_FALSE(m_blockTooBig); @@ -190,7 +190,7 @@ namespace static const size_t testMedian = 7 * TEST_GRANTED_FULL_REWARD_ZONE; static const uint64_t alreadyGeneratedCoins = 0; - virtual void SetUp() { + virtual void SetUp() override { m_blockTooBig = !m_currency.getBlockReward(testMedian, 0, alreadyGeneratedCoins, 0, false, m_standardBlockReward, m_emissionChange); @@ -293,7 +293,7 @@ namespace } protected: - virtual void SetUp() { + virtual void SetUp() override { uint64_t blockReward; int64_t emissionChange; diff --git a/tests/UnitTests/ICryptoNoteProtocolQueryStub.h b/tests/UnitTests/ICryptoNoteProtocolQueryStub.h index 8a0b41ac..84fd9abb 100644 --- a/tests/UnitTests/ICryptoNoteProtocolQueryStub.h +++ b/tests/UnitTests/ICryptoNoteProtocolQueryStub.h @@ -26,11 +26,11 @@ class ICryptoNoteProtocolQueryStub: public CryptoNote::ICryptoNoteProtocolQuery public: ICryptoNoteProtocolQueryStub() : peers(0), observedHeight(0), synchronized(false) {} - virtual bool addObserver(CryptoNote::ICryptoNoteProtocolObserver* observer); - virtual bool removeObserver(CryptoNote::ICryptoNoteProtocolObserver* observer); - virtual uint32_t getObservedHeight() const; - virtual size_t getPeerCount() const; - virtual bool isSynchronized() const; + virtual bool addObserver(CryptoNote::ICryptoNoteProtocolObserver* observer) override; + virtual bool removeObserver(CryptoNote::ICryptoNoteProtocolObserver* observer) override; + virtual uint32_t getObservedHeight() const override; + virtual size_t getPeerCount() const override; + virtual bool isSynchronized() const override; void setPeerCount(uint32_t count); void setObservedHeight(uint32_t height); diff --git a/tests/UnitTests/TestBcS.cpp b/tests/UnitTests/TestBcS.cpp index 2a468c1a..1c1fabad 100755 --- a/tests/UnitTests/TestBcS.cpp +++ b/tests/UnitTests/TestBcS.cpp @@ -390,10 +390,10 @@ TEST_F(BcSTest, stopIsWaiting) { bool flag = false; - o1.updFunc = std::move([&e, &flag](uint32_t, uint32_t) { + o1.updFunc = [&e, &flag](uint32_t, uint32_t) { e.notify(); std::this_thread::sleep_for(std::chrono::milliseconds(1000)); flag = true; - }); + }; m_sync.addObserver(&o1); m_sync.start(); @@ -413,9 +413,9 @@ TEST_F(BcSTest, syncCompletedError) { IBlockchainSynchronizerFunctorialObserver o1; EventWaiter e; - o1.updFunc = std::move([&e](uint32_t curr, uint32_t total) { + o1.updFunc = [&e](uint32_t curr, uint32_t total) { e.notify(); std::this_thread::sleep_for(std::chrono::milliseconds(200)); - }); + }; m_sync.addObserver(&o); m_sync.addObserver(&o1); @@ -434,9 +434,9 @@ TEST_F(BcSTest, onLastKnownBlockHeightUpdated) { generator.generateEmptyBlocks(20); IBlockchainSynchronizerFunctorialObserver o1; EventWaiter e; - o1.syncFunc = std::move([&e](std::error_code) { + o1.syncFunc = [&e](std::error_code) { e.notify(); - }); + }; m_sync.addObserver(&o1); m_sync.start(); @@ -460,9 +460,9 @@ TEST_F(BcSTest, onPoolChanged) { generator.generateEmptyBlocks(20); IBlockchainSynchronizerFunctorialObserver o1; EventWaiter e; - o1.syncFunc = std::move([&e](std::error_code) { + o1.syncFunc = [&e](std::error_code) { e.notify(); - }); + }; m_sync.addObserver(&o1); m_sync.start(); @@ -594,9 +594,9 @@ TEST_F(BcSTest, firstPoolSynchronizationCheck) { IBlockchainSynchronizerFunctorialObserver o1; EventWaiter e; - o1.syncFunc = std::move([&e](std::error_code) { + o1.syncFunc = [&e](std::error_code) { e.notify(); - }); + }; m_sync.addObserver(&o1); m_sync.start(); @@ -635,9 +635,9 @@ TEST_F(BcSTest, firstPoolSynchronizationCheckNonActual) { IBlockchainSynchronizerFunctorialObserver o1; EventWaiter e; - o1.syncFunc = std::move([&e](std::error_code) { + o1.syncFunc = [&e](std::error_code) { e.notify(); - }); + }; m_sync.addObserver(&o1); m_sync.start(); @@ -671,9 +671,9 @@ TEST_F(BcSTest, firstPoolSynchronizationCheckGetPoolErr) { IBlockchainSynchronizerFunctorialObserver o1; EventWaiter e; - o1.syncFunc = std::move([&e](std::error_code) { + o1.syncFunc = [&e](std::error_code) { e.notify(); - }); + }; m_sync.addObserver(&o1); m_sync.start(); @@ -692,9 +692,9 @@ TEST_F(BcSTest, poolSynchronizationCheckActual) { IBlockchainSynchronizerFunctorialObserver o1; EventWaiter e; - o1.syncFunc = std::move([&e](std::error_code) { + o1.syncFunc = [&e](std::error_code) { e.notify(); - }); + }; m_sync.addObserver(&o1); m_sync.start(); @@ -730,10 +730,10 @@ TEST_F(BcSTest, poolSynchronizationCheckError) { IBlockchainSynchronizerFunctorialObserver o1; EventWaiter e; std::error_code errc; - o1.syncFunc = std::move([&](std::error_code ec) { + o1.syncFunc = [&](std::error_code ec) { e.notify(); errc = ec; - }); + }; m_sync.addObserver(&o1); m_sync.start(); @@ -778,9 +778,9 @@ TEST_F(BcSTest, poolSynchronizationCheckTxAdded) { IBlockchainSynchronizerFunctorialObserver o1; EventWaiter e; - o1.syncFunc = std::move([&e](std::error_code) { + o1.syncFunc = [&e](std::error_code) { e.notify(); - }); + }; m_sync.addObserver(&o1); m_sync.start(); @@ -836,9 +836,9 @@ TEST_F(BcSTest, poolSynchronizationCheckTxDeleted) { IBlockchainSynchronizerFunctorialObserver o1; EventWaiter e; - o1.syncFunc = std::move([&e](std::error_code) { + o1.syncFunc = [&e](std::error_code) { e.notify(); - }); + }; m_sync.addObserver(&o1); m_sync.start(); @@ -892,9 +892,9 @@ TEST_F(BcSTest, poolSynchronizationCheckNotification) { IBlockchainSynchronizerFunctorialObserver o1; EventWaiter e; - o1.syncFunc = std::move([&e](std::error_code) { + o1.syncFunc = [&e](std::error_code) { e.notify(); - }); + }; m_sync.addObserver(&o1); m_sync.start(); @@ -920,9 +920,9 @@ TEST_F(BcSTest, poolSynchronizationCheckConsumersNotififcation) { IBlockchainSynchronizerFunctorialObserver o1; EventWaiter e; - o1.syncFunc = std::move([&e](std::error_code) { + o1.syncFunc = [&e](std::error_code) { e.notify(); - }); + }; m_sync.addObserver(&o1); m_sync.addConsumer(&c1); @@ -956,10 +956,10 @@ TEST_F(BcSTest, poolSynchronizationCheckConsumerReturnError) { IBlockchainSynchronizerFunctorialObserver o1; EventWaiter e; std::error_code errc; - o1.syncFunc = std::move([&](std::error_code ec) { + o1.syncFunc = [&](std::error_code ec) { e.notify(); errc = ec; - }); + }; m_sync.addObserver(&o1); m_sync.addConsumer(&c1); @@ -996,10 +996,10 @@ TEST_F(BcSTest, checkINodeError) { IBlockchainSynchronizerFunctorialObserver o1; EventWaiter e; std::error_code errc; - o1.syncFunc = std::move([&](std::error_code ec) { + o1.syncFunc = [&](std::error_code ec) { e.notify(); errc = ec; - }); + }; m_node.queryBlocksFunctor = [](const std::vector& knownBlockIds, uint64_t timestamp, std::vector& newBlocks, uint32_t& startHeight, const INode::Callback& callback) -> bool { callback(std::make_error_code(std::errc::invalid_argument)); @@ -1021,10 +1021,10 @@ TEST_F(BcSTest, checkConsumerError) { IBlockchainSynchronizerFunctorialObserver o1; EventWaiter e; std::error_code errc; - o1.syncFunc = std::move([&](std::error_code ec) { + o1.syncFunc = [&](std::error_code ec) { e.notify(); errc = ec; - }); + }; generator.generateEmptyBlocks(10); @@ -1048,10 +1048,10 @@ TEST_F(BcSTest, checkBlocksRequesting) { IBlockchainSynchronizerFunctorialObserver o1; EventWaiter e; std::error_code errc; - o1.syncFunc = std::move([&](std::error_code ec) { + o1.syncFunc = [&](std::error_code ec) { e.notify(); errc = ec; - }); + }; size_t blocksExpected = 20; @@ -1082,10 +1082,10 @@ TEST_F(BcSTest, checkConsumerHeightReceived) { IBlockchainSynchronizerFunctorialObserver o1; EventWaiter e; std::error_code errc; - o1.syncFunc = std::move([&](std::error_code ec) { + o1.syncFunc = [&](std::error_code ec) { e.notify(); errc = ec; - }); + }; uint32_t firstlySnchronizedHeight = 20; @@ -1127,10 +1127,10 @@ TEST_F(BcSTest, checkConsumerOldBlocksNotIvoked) { IBlockchainSynchronizerFunctorialObserver o1; EventWaiter e; std::error_code errc; - o1.syncFunc = std::move([&](std::error_code ec) { + o1.syncFunc = [&](std::error_code ec) { e.notify(); errc = ec; - }); + }; generator.generateEmptyBlocks(20); m_node.setGetNewBlocksLimit(50); @@ -1169,10 +1169,10 @@ TEST_F(BcSTest, checkConsumerHeightReceivedOnDetach) { IBlockchainSynchronizerFunctorialObserver o1; EventWaiter e; std::error_code errc; - o1.syncFunc = std::move([&](std::error_code ec) { + o1.syncFunc = [&](std::error_code ec) { e.notify(); errc = ec; - }); + }; generator.generateEmptyBlocks(20); m_node.setGetNewBlocksLimit(50); @@ -1218,10 +1218,10 @@ TEST_F(BcSTest, checkStatePreservingBetweenSynchronizations) { IBlockchainSynchronizerFunctorialObserver o1; EventWaiter e; std::error_code errc; - o1.syncFunc = std::move([&](std::error_code ec) { + o1.syncFunc = [&](std::error_code ec) { e.notify(); errc = ec; - }); + }; generator.generateEmptyBlocks(20); @@ -1255,10 +1255,10 @@ TEST_F(BcSTest, checkBlocksRerequestingOnError) { IBlockchainSynchronizerFunctorialObserver o1; EventWaiter e; std::error_code errc; - o1.syncFunc = std::move([&](std::error_code ec) { + o1.syncFunc = [&](std::error_code ec) { e.notify(); errc = ec; - }); + }; generator.generateEmptyBlocks(20); m_node.setGetNewBlocksLimit(10); @@ -1325,10 +1325,10 @@ TEST_F(BcSTest, checkTxOrder) { IBlockchainSynchronizerFunctorialObserver o1; EventWaiter e; std::error_code errc; - o1.syncFunc = std::move([&](std::error_code ec) { + o1.syncFunc = [&](std::error_code ec) { e.notify(); errc = ec; - }); + }; auto tx1ptr = createTransaction(); auto tx2ptr = createTransaction(); diff --git a/tests/UnitTests/TestBlockchainExplorer.cpp b/tests/UnitTests/TestBlockchainExplorer.cpp index 1b099e75..67c99fe7 100755 --- a/tests/UnitTests/TestBlockchainExplorer.cpp +++ b/tests/UnitTests/TestBlockchainExplorer.cpp @@ -104,8 +104,8 @@ public: nodeStub(generator), blockchainExplorer(nodeStub, logger) { } - void SetUp(); - void TearDown(); + void SetUp() override; + void TearDown() override; protected: Currency currency; diff --git a/tests/UnitTests/TestInprocessNode.cpp b/tests/UnitTests/TestInprocessNode.cpp index 3c75b0e7..bf49abb6 100644 --- a/tests/UnitTests/TestInprocessNode.cpp +++ b/tests/UnitTests/TestInprocessNode.cpp @@ -62,7 +62,7 @@ public: node(coreStub, protocolQueryStub), currency(CryptoNote::CurrencyBuilder(logger).currency()), generator(currency) {} - void SetUp(); + void SetUp() override; protected: void initNode(); diff --git a/tests/UnitTests/TestMessageQueue.cpp b/tests/UnitTests/TestMessageQueue.cpp index a1a68251..15e4f873 100644 --- a/tests/UnitTests/TestMessageQueue.cpp +++ b/tests/UnitTests/TestMessageQueue.cpp @@ -41,8 +41,8 @@ public: void sendBlockchainMessage(const BlockchainMessage& message); void interruptBlockchainMessageWaiting(); - void SetUp(); - void TearDown(); + void SetUp() override; + void TearDown() override; protected: System::Dispatcher dispatcher; @@ -97,7 +97,7 @@ TEST_F(MessageQueueTest, singleNewBlockMessage) { ASSERT_NO_THROW(queue.pop()); }); - ASSERT_NO_THROW(sendBlockchainMessage(BlockchainMessage(std::move(NewBlockMessage(randomHash))))); + ASSERT_NO_THROW(sendBlockchainMessage(BlockchainMessage(NewBlockMessage(randomHash)))); contextGroup.wait(); } @@ -120,7 +120,7 @@ TEST_F(MessageQueueTest, singleNewAlternativeBlockMessage) { ASSERT_NO_THROW(queue.pop()); }); - ASSERT_NO_THROW(sendBlockchainMessage(BlockchainMessage(std::move(NewAlternativeBlockMessage(randomHash))))); + ASSERT_NO_THROW(sendBlockchainMessage(BlockchainMessage(NewAlternativeBlockMessage(randomHash)))); contextGroup.wait(); } @@ -150,7 +150,7 @@ TEST_F(MessageQueueTest, singleChainSwitchMessage) { std::vector copy = randomHashes; - ASSERT_NO_THROW(sendBlockchainMessage(BlockchainMessage(std::move(ChainSwitchMessage(std::move(copy)))))); + ASSERT_NO_THROW(sendBlockchainMessage(BlockchainMessage(ChainSwitchMessage(std::move(copy))))); contextGroup.wait(); } @@ -181,7 +181,7 @@ TEST_F(MessageQueueTest, manyMessagesOneListener) { }); for (auto h : randomHashes) { - ASSERT_NO_THROW(sendBlockchainMessage(BlockchainMessage(std::move(NewBlockMessage(h))))); + ASSERT_NO_THROW(sendBlockchainMessage(BlockchainMessage(NewBlockMessage(h)))); } contextGroup.wait(); @@ -193,8 +193,8 @@ TEST_F(MessageQueueTest, manyMessagesManyListeners) { std::array>, NUMBER_OF_LISTENERS> quards; for (size_t i = 0; i < NUMBER_OF_LISTENERS; ++i) { - queues[i] = std::move(std::unique_ptr>(new MessageQueue(dispatcher))); - quards[i] = std::move(std::unique_ptr>(new MesageQueueGuard(*this, *queues[i]))); + queues[i] = std::unique_ptr>(new MessageQueue(dispatcher)); + quards[i] = std::unique_ptr>(new MesageQueueGuard(*this, *queues[i])); } const size_t NUMBER_OF_BLOCKS = 10; @@ -222,7 +222,7 @@ TEST_F(MessageQueueTest, manyMessagesManyListeners) { for (auto h : randomHashes) { - ASSERT_NO_THROW(sendBlockchainMessage(BlockchainMessage(std::move(NewBlockMessage(h))))); + ASSERT_NO_THROW(sendBlockchainMessage(BlockchainMessage(NewBlockMessage(h)))); } contextGroup.wait(); @@ -234,8 +234,8 @@ TEST_F(MessageQueueTest, interruptWaiting) { std::array>, NUMBER_OF_LISTENERS> quards; for (size_t i = 0; i < NUMBER_OF_LISTENERS; ++i) { - queues[i] = std::move(std::unique_ptr>(new MessageQueue(dispatcher))); - quards[i] = std::move(std::unique_ptr>(new MesageQueueGuard(*this, *queues[i]))); + queues[i] = std::unique_ptr>(new MessageQueue(dispatcher)); + quards[i] = std::unique_ptr>(new MesageQueueGuard(*this, *queues[i])); } const size_t NUMBER_OF_BLOCKS = 10; @@ -272,7 +272,7 @@ TEST_F(MessageQueueTest, interruptWaiting) { }); for (auto h : randomHashes) { - ASSERT_NO_THROW(sendBlockchainMessage(BlockchainMessage(std::move(NewBlockMessage(h))))); + ASSERT_NO_THROW(sendBlockchainMessage(BlockchainMessage(NewBlockMessage(h)))); } interruptBlockchainMessageWaiting(); diff --git a/tests/UnitTests/TestWallet.cpp b/tests/UnitTests/TestWallet.cpp index 28d63879..493a1661 100755 --- a/tests/UnitTests/TestWallet.cpp +++ b/tests/UnitTests/TestWallet.cpp @@ -1599,7 +1599,7 @@ class INodeNoRelay : public INodeTrivialRefreshStub { public: INodeNoRelay(TestBlockchainGenerator& generator) : INodeTrivialRefreshStub(generator) {} - virtual void relayTransaction(const CryptoNote::Transaction& transaction, const Callback& callback) { + virtual void relayTransaction(const CryptoNote::Transaction& transaction, const Callback& callback) override { m_asyncCounter.addAsyncContext(); std::thread task(&INodeNoRelay::doNoRelayTransaction, this, transaction, callback); task.detach(); diff --git a/tests/UnitTests/TestWalletLegacy.cpp b/tests/UnitTests/TestWalletLegacy.cpp index b5c04c0f..5ae8e1fe 100644 --- a/tests/UnitTests/TestWalletLegacy.cpp +++ b/tests/UnitTests/TestWalletLegacy.cpp @@ -158,7 +158,7 @@ public: WalletLegacyApi() : m_currency(CryptoNote::CurrencyBuilder(m_logger).currency()), generator(m_currency) { } - void SetUp(); + void SetUp() override; protected: void prepareAliceWallet(); diff --git a/tests/UnitTests/TestWalletService.cpp b/tests/UnitTests/TestWalletService.cpp index 3c2fc482..2eef6285 100644 --- a/tests/UnitTests/TestWalletService.cpp +++ b/tests/UnitTests/TestWalletService.cpp @@ -75,7 +75,7 @@ struct IWalletBaseStub : public CryptoNote::IWallet { virtual uint64_t getPendingBalance(const std::string& address) const override { return 0; } virtual size_t getTransactionCount() const override { return 0; } - virtual WalletTransaction getTransaction(size_t transactionIndex) const { return WalletTransaction(); } + virtual WalletTransaction getTransaction(size_t transactionIndex) const override { return WalletTransaction(); } virtual size_t getTransactionTransferCount(size_t transactionIndex) const override { return 0; } virtual WalletTransfer getTransactionTransfer(size_t transactionIndex, size_t transferIndex) const override { return WalletTransfer(); } @@ -902,7 +902,7 @@ struct WalletGetDelayedTransactionIdsStub : public IWalletBaseStub { return {0}; } - virtual WalletTransaction getTransaction(size_t transactionIndex) const { + virtual WalletTransaction getTransaction(size_t transactionIndex) const override { return WalletTransactionBuilder().hash(hash).build(); } diff --git a/tests/UnitTests/TransactionPool.cpp b/tests/UnitTests/TransactionPool.cpp index d698357a..1660dd6f 100755 --- a/tests/UnitTests/TransactionPool.cpp +++ b/tests/UnitTests/TransactionPool.cpp @@ -60,7 +60,7 @@ public: : timeNow(currentTime) {} time_t timeNow; - virtual time_t now() { return timeNow; } + virtual time_t now() override { return timeNow; } };