Esempio n. 1
0
def test_pool_restart_cancel(sdk_pool_handle, sdk_wallet_trustee, looper,
                             tconf, txnPoolNodeSet):
    loop = asyncio.get_event_loop()
    server, indicator = loop.run_until_complete(
        _createServer(host=tconf.controlServiceHost,
                      port=tconf.controlServicePort))

    unow = datetime.utcnow().replace(tzinfo=dateutil.tz.tzutc())
    start_at = unow + timedelta(seconds=1000)
    req_obj, responses = sdk_send_restart(looper,
                                          sdk_wallet_trustee,
                                          sdk_pool_handle,
                                          action=START,
                                          datetime=str(
                                              datetime.isoformat(start_at)))
    for node in txnPoolNodeSet:
        assert node.restarter.lastActionEventInfo[0] == RestartLog.SCHEDULED
    _comparison_reply(responses, req_obj)

    req_obj, responses = sdk_send_restart(looper,
                                          sdk_wallet_trustee,
                                          sdk_pool_handle,
                                          action=CANCEL,
                                          datetime="")
    _stopServer(server)
    for node in txnPoolNodeSet:
        assert node.restarter.lastActionEventInfo[0] == RestartLog.CANCELLED
    _comparison_reply(responses, req_obj)
def test_pool_restarts_one_by_one(sdk_pool_handle, sdk_wallet_trustee, looper,
                                  tconf, txnPoolNodeSet):
    server, indicator = looper.loop.run_until_complete(
        _createServer(host=tconf.controlServiceHost,
                      port=tconf.controlServicePort))

    unow = datetime.utcnow().replace(tzinfo=dateutil.tz.tzutc())
    first_start = str(datetime.isoformat(unow + timedelta(seconds=1000)))
    req_obj, resp = sdk_send_restart(looper,
                                     sdk_wallet_trustee,
                                     sdk_pool_handle,
                                     action=START,
                                     datetime=first_start)

    second_start = str(datetime.isoformat(unow + timedelta(seconds=2000)))
    req_obj, resp = sdk_send_restart(looper,
                                     sdk_wallet_trustee,
                                     sdk_pool_handle,
                                     action=START,
                                     datetime=second_start)
    _comparison_reply(resp, req_obj)
    tmp = txnPoolNodeSet[0].restarter._actionLog
    restart_log = []
    for a in tmp:
        restart_log.append(a)
    restart_log.reverse()
    _check_restart_log(restart_log[2], RestartLog.Events.scheduled,
                       first_start)
    _check_restart_log(restart_log[1], RestartLog.Events.cancelled)
    _check_restart_log(restart_log[0], RestartLog.Events.scheduled,
                       second_start)
    _stopServer(server)
def test_pool_restart_cancel(sdk_pool_handle, sdk_wallet_trustee, looper,
                             tconf, txnPoolNodeSet):
    loop = asyncio.get_event_loop()
    server, indicator = loop.run_until_complete(
        _createServer(host=tconf.controlServiceHost,
                      port=tconf.controlServicePort))

    unow = datetime.utcnow().replace(tzinfo=dateutil.tz.tzutc())
    start_at = unow + timedelta(seconds=100)
    op = {TXN_TYPE: POOL_RESTART, ACTION: START, DATETIME: str(start_at)}
    req_obj = sdk_gen_request(op, identifier=sdk_wallet_trustee[1])
    req = sdk_sign_and_submit_req_obj(looper, sdk_pool_handle,
                                      sdk_wallet_trustee, req_obj)
    for node in txnPoolNodeSet:
        assert node.restarter.lastActionEventInfo[0] == RestartLog.SCHEDULED
    op = {
        TXN_TYPE: POOL_RESTART,
        ACTION: CANCEL,
        DATETIME: str(datetime.isoformat(start_at))
    }
    req_obj = sdk_gen_request(op, identifier=sdk_wallet_trustee[1])
    req = sdk_sign_and_submit_req_obj(looper, sdk_pool_handle,
                                      sdk_wallet_trustee, req_obj)
    req_json, resp = sdk_get_reply(looper, req, 100)
    for node in txnPoolNodeSet:
        assert node.restarter.lastActionEventInfo[0] == RestartLog.CANCELLED
    _stopServer(server)
    _comparison_reply(resp, req_obj)
    assert resp[f.RESULT.nm][DATETIME] == str(datetime.isoformat(start_at))
Esempio n. 4
0
def test_pool_restart_now(
        sdk_pool_handle, sdk_wallet_trustee, looper, tdir, tconf):
    server, indicator = looper.loop.run_until_complete(
        _createServer(
            host=tconf.controlServiceHost,
            port=tconf.controlServicePort
        )
    )
    op = {
        TXN_TYPE: POOL_RESTART,
        ACTION: START,
    }
    req_obj = sdk_gen_request(op, identifier=sdk_wallet_trustee[1])
    req = sdk_sign_and_submit_req_obj(looper,
                                       sdk_pool_handle,
                                       sdk_wallet_trustee,
                                       req_obj)
    is_reply_received = False
    try:
        req_json, resp = sdk_get_reply(looper, req, 100)
    except Exception as ex:
        assert "Timeout" in ex.args
    _stopServer(server)
    if is_reply_received:
        _comparison_reply(resp, req_obj)
Esempio n. 5
0
def test_pool_restarts_one_by_one_with_restart_now(sdk_pool_handle,
                                                   sdk_wallet_trustee, looper,
                                                   tconf, txnPoolNodeSet):
    server, indicator = looper.loop.run_until_complete(
        _createServer(host=tconf.controlServiceHost,
                      port=tconf.controlServicePort))

    unow = datetime.utcnow().replace(tzinfo=dateutil.tz.tzutc())
    first_start = str(datetime.isoformat(unow + timedelta(seconds=1000)))
    op = {TXN_TYPE: POOL_RESTART, ACTION: START, DATETIME: first_start}
    req_obj = sdk_gen_request(op, identifier=sdk_wallet_trustee[1])
    req = sdk_sign_and_submit_req_obj(looper, sdk_pool_handle,
                                      sdk_wallet_trustee, req_obj)
    sdk_get_reply(looper, req, 100)
    op[DATETIME] = "0"
    req_obj = sdk_gen_request(op, identifier=sdk_wallet_trustee[1])
    req = sdk_sign_and_submit_req_obj(looper, sdk_pool_handle,
                                      sdk_wallet_trustee, req_obj)
    sdk_get_reply(looper, req, 100)
    restart_log = []
    for a in txnPoolNodeSet[0].restarter._actionLog:
        restart_log.append(a)
    restart_log.reverse()
    _check_restart_log(restart_log[1], RestartLog.SCHEDULED, first_start)
    _check_restart_log(restart_log[0], RestartLog.CANCELLED)
    _stopServer(server)
Esempio n. 6
0
def pool_restart_now(sdk_pool_handle, sdk_wallet_trustee, looper, tdir, tconf,
                     action, datetime=None):
    server, indicator = looper.loop.run_until_complete(
        _createServer(
            host=tconf.controlServiceHost,
            port=tconf.controlServicePort
        )
    )

    req_obj, resp = sdk_send_restart(looper,
                                     sdk_wallet_trustee,
                                     sdk_pool_handle,
                                     action=action,
                                     datetime=datetime)
    _stopServer(server)
    _comparison_reply(resp, req_obj)
Esempio n. 7
0
def test_pool_restart(sdk_pool_handle, sdk_wallet_trustee, looper, tconf,
                      txnPoolNodeSet):

    server, indicator = looper.loop.run_until_complete(
        _createServer(host=tconf.controlServiceHost,
                      port=tconf.controlServicePort))

    unow = datetime.utcnow().replace(tzinfo=dateutil.tz.tzutc())
    start_at = unow + timedelta(seconds=1000)
    req_obj, responses = sdk_send_restart(looper,
                                          sdk_wallet_trustee,
                                          sdk_pool_handle,
                                          action=START,
                                          datetime=str(
                                              datetime.isoformat(start_at)))

    _stopServer(server)
    for node in txnPoolNodeSet:
        assert node.restarter.lastActionEventInfo.ev_type == RestartLog.Events.scheduled
    _comparison_reply(responses, req_obj)