limits_tests.cpp 1.0 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12
#include <boost/test/unit_test.hpp>
#include <eosio/testing/tester.hpp>
#include <infinite/infinite.wast.hpp>

using namespace eosio;
using namespace eosio::chain;
using namespace eosio::chain::contracts;
using namespace eosio::testing;

BOOST_AUTO_TEST_SUITE(limits_tests)

BOOST_AUTO_TEST_CASE(infinite_loop) {
13
#if 0
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
   try {
      // set up runtime limits
      tester t({fc::milliseconds(1), fc::milliseconds(1)});
      t.produce_block();

      t.create_account(N(infinite));
      t.set_code(N(infinite), infinite_wast);

      {
         action act;
         act.account = N(infinite);
         act.name = N(op);
         act.authorization = vector<permission_level>{{N(infinite), config::active_name}};

         signed_transaction trx;
         trx.actions.emplace_back(std::move(act));

         t.set_tapos(trx);
         trx.sign(t.get_private_key(N(infinite), "active"), chain_id_type());

         BOOST_REQUIRE_THROW(t.push_transaction(trx), checktime_exceeded);
      }
   } FC_LOG_AND_RETHROW();
37
#endif
38 39 40
}

BOOST_AUTO_TEST_SUITE_END()