Ejemplo n.º 1
0
def testOnlyAStewardCanAddAnotherSteward(looper, txnPoolNodeSet,
                                         tdirWithPoolTxns, poolTxnClientData,
                                         steward1, stewardWallet, client1,
                                         wallet1):
    addNewClient(STEWARD, looper, steward1, stewardWallet, "testSteward1")
    with pytest.raises(AssertionError):
        addNewClient(STEWARD, looper, client1, wallet1, "testSteward2")
Ejemplo n.º 2
0
def testStewardsCanBeAddedOnlyTillAThresholdIsReached(looper, tconf,
                                                      txnPoolNodeSet,
                                                      tdirWithPoolTxns,
                                                      poolTxnStewardData,
                                                      steward1, stewardWallet):
    addNewClient(STEWARD, looper, steward1, stewardWallet, "testSteward3")
    with pytest.raises(AssertionError):
        addNewClient(STEWARD, looper, steward1, stewardWallet, "testSteward4")
Ejemplo n.º 3
0
def testOnlyAStewardCanAddAnotherSteward(looper, txnPoolNodeSet,
                                         tdirWithPoolTxns, poolTxnClientData,
                                         steward1, stewardWallet,
                                         client1, wallet1, client1Connected):
    addNewClient(STEWARD, looper, steward1, stewardWallet, "testSteward1")

    sendAddNewClient(STEWARD, "testSteward2", client1, wallet1)
    for node in txnPoolNodeSet:
        waitRejectWithReason(looper, client1,
                              'Only Steward is allowed to do these transactions',
                              node.clientstack.name)
Ejemplo n.º 4
0
def testStewardsCanBeAddedOnlyTillAThresholdIsReached(looper, tconf,
                                                      txnPoolNodeSet,
                                                      tdirWithPoolTxns,
                                                      poolTxnStewardData,
                                                      steward1, stewardWallet):
    addNewClient(STEWARD, looper, steward1, stewardWallet, "testSteward3")

    sendAddNewClient(STEWARD, "testSteward4", steward1, stewardWallet)
    for node in txnPoolNodeSet:
        waitRejectWithReason(looper, steward1,
                              'New stewards cannot be added by other '
                              'stewards as there are already {} '
                              'stewards in the system'.format(tconf.stewardThreshold),
                              node.clientstack.name)
Ejemplo n.º 5
0
def testMultipleClients(looper, txnPoolNodeSet, steward1, stewardWallet,
                        tdirWithPoolTxns):
    n = txnPoolNodeSet[0]
    n.nodestack.ctx.set(zmq.MAX_SOCKETS, 4096)
    clientNum = 100
    pr = psutil.Process(os.getpid())
    print('Len connections before starting {}'.format(len(pr.connections())))
    for i in range(clientNum):
        name = randomString()
        wallet = addNewClient(None, looper, steward1, stewardWallet, name)

        def chk():
            for node in txnPoolNodeSet:
                assert wallet.defaultId in node.clientAuthNr.clients

        looper.run(eventually(chk, retryWait=1, timeout=5))
        newSteward = TestClient(name=name,
                                nodeReg=None,
                                ha=genHa(),
                                basedirpath=tdirWithPoolTxns)

        looper.add(newSteward)
        looper.run(newSteward.ensureConnectedToNodes())
        print('Connected {}'.format(i))
        print('Len connections {}'.format(len(pr.connections())))
Ejemplo n.º 6
0
def testAddNewClient(looper, txnPoolNodeSet, steward1, stewardWallet):
    wallet = addNewClient(USER, looper, steward1, stewardWallet, randomString())

    def chk():
        for node in txnPoolNodeSet:
            assert wallet.defaultId in node.clientAuthNr.clients

    looper.run(eventually(chk, retryWait=1, timeout=5))
Ejemplo n.º 7
0
def testAddNewClient(looper, txnPoolNodeSet, steward1, stewardWallet):
    wallet = addNewClient(None, looper, steward1, stewardWallet,
                          randomString())

    def chk():
        for node in txnPoolNodeSet:
            assert wallet.defaultId in node.clientAuthNr.clients

    looper.run(eventually(chk, retryWait=1, timeout=5))
Ejemplo n.º 8
0
def testAddNewClient(looper, txnPoolNodeSet, steward1, stewardWallet):
    wallet = addNewClient(None, looper, steward1, stewardWallet,
                          randomString())

    def chk():
        for node in txnPoolNodeSet:
            assert wallet.defaultId in node.clientAuthNr.clients

    timeout = waits.expectedTransactionExecutionTime(len(txnPoolNodeSet))
    looper.run(eventually(chk, retryWait=1, timeout=timeout))