import pytest from plenum.common.exceptions import InvalidSignature from plenum.test.client.conftest import passThroughReqAcked1 from plenum.test.helper import whitelistNode from plenum.test.malicious_behaviors_node import makeNodeFaulty, changesRequest from plenum.test.malicious_behaviors_client import \ genDoesntSendRequestToSomeNodes nodeCount = 4 faultyNodes = 1 clientFault = genDoesntSendRequestToSomeNodes("GammaC", "DeltaC") reqAcked1 = passThroughReqAcked1 whitelist = ['for InvalidSignature', 'discarding message'] @pytest.fixture(scope="module") def nodeChangesRequest(txnPoolNodeSet): alpha = txnPoolNodeSet[0] # Alpha should not be blacklisted for Invalid Signature by all other nodes whitelistNode(alpha.name, [node for node in txnPoolNodeSet if node != alpha], InvalidSignature.code) makeNodeFaulty(alpha, changesRequest, ) # noinspection PyIncorrectDocstring,PyUnusedLocal,PyShadowingNames def testReplyUnaffectedByFaultyNode(looper, txnPoolNodeSet, nodeChangesRequest,
from plenum.test.client.conftest import passThroughReqAcked1 from plenum.client.client import Client from plenum.test.malicious_behaviors_client import \ genDoesntSendRequestToSomeNodes nodeCount = 4 clientFault = genDoesntSendRequestToSomeNodes(skipCount=3) reqAcked1 = passThroughReqAcked1 # noinspection PyIncorrectDocstring def testReplyWhenRequestSentToLessThanFPlusOneNodes(looper, nodeSet, fClient: Client, replied1): """ In a system with no faulty nodes, even if the client sends the request to one node it will get replies from all the nodes. """
import pytest from plenum.common.exceptions import InvalidSignature from plenum.test.client.conftest import passThroughReqAcked1 from plenum.test.helper import whitelistNode from plenum.test.malicious_behaviors_node import makeNodeFaulty, changesRequest from plenum.test.malicious_behaviors_client import genDoesntSendRequestToSomeNodes nodeCount = 4 faultyNodes = 1 clientFault = genDoesntSendRequestToSomeNodes("GammaC", "DeltaC") reqAcked1 = passThroughReqAcked1 whitelist = ['for InvalidSignature', 'discarding message'] @pytest.fixture(scope="module") def nodeChangesRequest(nodeSet): alpha = nodeSet.Alpha # Alpha should not be blacklisted for Invalid Signature by all other nodes whitelistNode(alpha.name, [node for node in nodeSet if node != alpha], InvalidSignature.code) makeNodeFaulty(alpha, changesRequest,) # noinspection PyIncorrectDocstring,PyUnusedLocal,PyShadowingNames def testReplyUnaffectedByFaultyNode(looper, nodeSet, nodeChangesRequest, fClient, replied1):
from stp_core.common.log import getlogger from stp_core.loop.eventually import eventually from plenum.test.client.conftest import passThroughReqAcked1 from plenum.test.helper import sendReqsToNodesAndVerifySuffReplies, stopNodes, waitForSufficientRepliesForRequests, \ send_signed_requests from plenum.test.malicious_behaviors_client import \ genDoesntSendRequestToSomeNodes from plenum.test.node_catchup.helper import waitNodeDataEquality logger = getlogger() nodeCount = 4 clientFault = genDoesntSendRequestToSomeNodes("AlphaC") reqAcked1 = passThroughReqAcked1 def test_client_sends_get_request_to_one_node(looper, client1, wallet1, nodeSet): """ Check that read only equest can be sent without having connection to all nodes """ client = client1 wallet = wallet1 logger.info("Stopping nodes") nodes_to_stop = list(nodeSet)[1:]
from plenum.test.client.conftest import passThroughReqAcked1 from plenum.client.client import Client from plenum.test.malicious_behaviors_client import \ genDoesntSendRequestToSomeNodes nodeCount = 4 clientFault = genDoesntSendRequestToSomeNodes("AlphaC") reqAcked1 = passThroughReqAcked1 def testReplyWhenRequestSentToMoreThanFPlusOneNodes(looper, nodeSet, fClient: Client, replied1): pass
from plenum.test.client.conftest import passThroughReqAcked1 from plenum.client.client import Client from plenum.test.malicious_behaviors_client import \ genDoesntSendRequestToSomeNodes nodeCount = 4 clientFault = genDoesntSendRequestToSomeNodes(skipCount=3) reqAcked1 = passThroughReqAcked1 # noinspection PyIncorrectDocstring def testReplyWhenRequestSentToLessThanFPlusOneNodes(looper, nodeSet, fClient: Client, replied1): """ In a system with no faulty nodes, even if the client sends the request to one node it will get replies from all the nodes. """ pass