From 688110ce8d285398ee917edeafe3793463a989f7 Mon Sep 17 00:00:00 2001 From: Apr Team Date: Sat, 12 May 2018 14:02:59 +0300 Subject: [PATCH] Implemented event_group delete operation. --- libraries/chain/event_group_evaluator.cpp | 2 ++ tests/betting/betting_tests.cpp | 14 ++++++++++++++ tests/common/database_fixture.cpp | 8 ++++++++ tests/common/database_fixture.hpp | 1 + 4 files changed, 25 insertions(+) diff --git a/libraries/chain/event_group_evaluator.cpp b/libraries/chain/event_group_evaluator.cpp index 4b13dd16..c714d7f3 100644 --- a/libraries/chain/event_group_evaluator.cpp +++ b/libraries/chain/event_group_evaluator.cpp @@ -105,6 +105,8 @@ void_result event_group_delete_evaluator::do_evaluate(const event_group_delete_o void_result event_group_delete_evaluator::do_apply(const event_group_delete_operation& op) { try { + database& _db = db(); + _db.remove(_db.get(op.event_group_id)); return void_result(); } FC_CAPTURE_AND_RETHROW( (op) ) } diff --git a/tests/betting/betting_tests.cpp b/tests/betting/betting_tests.cpp index bf27aec3..62d1cb69 100644 --- a/tests/betting/betting_tests.cpp +++ b/tests/betting/betting_tests.cpp @@ -1583,6 +1583,18 @@ BOOST_AUTO_TEST_CASE(event_group_update_test) } FC_LOG_AND_RETHROW() } +BOOST_AUTO_TEST_CASE(event_group_delete_test) +{ + try + { + ACTORS( (alice)(bob) ); + CREATE_ICE_HOCKEY_BETTING_MARKET(false, 0); + + delete_event_group(nhl.id); + const auto& event_group_by_id = db.get_index_type().indices().get(); + BOOST_CHECK(event_group_by_id.end() == event_group_by_id.find(nhl.id)); + } FC_LOG_AND_RETHROW() +} BOOST_AUTO_TEST_CASE(event_update_test) { @@ -1630,6 +1642,8 @@ BOOST_AUTO_TEST_CASE(event_update_test) } FC_LOG_AND_RETHROW() } + + BOOST_AUTO_TEST_CASE(betting_market_rules_update_test) { try diff --git a/tests/common/database_fixture.cpp b/tests/common/database_fixture.cpp index 3b82eef9..6d7f5022 100644 --- a/tests/common/database_fixture.cpp +++ b/tests/common/database_fixture.cpp @@ -1329,6 +1329,14 @@ void database_fixture::update_event_group(event_group_id_type event_group_id, } FC_CAPTURE_AND_RETHROW( (name) ) } +void database_fixture::delete_event_group(event_group_id_type event_group_id) +{ try { + event_group_delete_operation event_group_delete_op; + event_group_delete_op.event_group_id = event_group_id; + process_operation_by_witnesses(event_group_delete_op); +} FC_CAPTURE_AND_RETHROW( (event_group_id) ) +} + void database_fixture::try_update_event_group(event_group_id_type event_group_id, fc::optional sport_id, fc::optional name, diff --git a/tests/common/database_fixture.hpp b/tests/common/database_fixture.hpp index 90a051a2..200d1897 100644 --- a/tests/common/database_fixture.hpp +++ b/tests/common/database_fixture.hpp @@ -309,6 +309,7 @@ struct database_fixture { void update_event_group(event_group_id_type event_group_id, fc::optional sport_id, fc::optional name); + void delete_event_group(event_group_id_type event_group_id); void try_update_event_group(event_group_id_type event_group_id, fc::optional sport_id, fc::optional name,