# libcontractchain test framework # Autofuse test import os import sys import time import subprocess from libcontractvm import Wallet, WalletExplorer from cotst import ContractManager, ContractException, ConsensusManager import cvmutils if __name__ == "__main__": n = 2 cvmutils.spawn(n) consensusManager = ConsensusManager.ConsensusManager() for x in range(n): consensusManager.addNode('http://localhost:' + str(2818 + x)) cm1 = ContractManager.ContractManager( consensusManager, wallet=WalletExplorer.WalletExplorer(wallet_file='test.wallet')) cm2 = ContractManager.ContractManager( consensusManager, wallet=WalletExplorer.WalletExplorer(wallet_file='test.wallet')) print('1 Chain:', cm1.getChainCode()) print('1 Address:', cm1.getWallet().getAddress()) print('1 Network time:', cm1.getTime())
# libcontractchain test framework # Autofuse test import os import sys import time import subprocess from libcontractvm import Wallet, WalletExplorer from cotst import ContractManager, ContractException, ConsensusManager import cvmutils if __name__ == "__main__": n = 2 cvmutils.spawn (n) consensusManager = ConsensusManager.ConsensusManager () for x in range (n): consensusManager.addNode ('http://localhost:' + str (2818 + x)) cm1 = ContractManager.ContractManager (consensusManager, wallet=WalletExplorer.WalletExplorer (wallet_file='test.wallet')) cm2 = ContractManager.ContractManager (consensusManager, wallet=WalletExplorer.WalletExplorer (wallet_file='test.wallet')) print ('1 Chain:', cm1.getChainCode ()) print ('1 Address:', cm1.getWallet ().getAddress ()) print ('1 Network time:', cm1.getTime ()) print ('1 Balance:', cm1.getWallet ().getBalance (), cm1.getChainCode ())
import config import os import sys import time import math import subprocess from libcontractvm import Wallet, WalletExplorer, ConsensusManager from cotst import ContractManager, ContractException import cvmutils if __name__ == "__main__" and len (sys.argv) == 2: player = sys.argv[1].lower () if player == 'spawn': cvmutils.spawn (3) while True: time.sleep (5) sys.exit () consensusManager = ConsensusManager.ConsensusManager () for x in range (3): consensusManager.addNode ('http://localhost:' + str (2818 + x)) if player == 'worker': wallet = WalletExplorer.WalletExplorer (wallet_file='testa.wallet') else: wallet = WalletExplorer.WalletExplorer (wallet_file='testb.wallet')
def teststep (q, t, policy): r = test (10, t, policy) err_rate = r['errors'] / r['tests'] q.put (err_rate) if __name__ == "__main__": f = open ('/home/dak/result.csv', 'w') res_tot = {} for policy in [ConsensusManager.POLICY_NONE, ConsensusManager.POLICY_BOTH, ConsensusManager.POLICY_ONLY_NEGATIVE]: for k in range (5,9): results = {} cvmutils.spawn (10, k, delay = 0) erate = [] print ('Malicious:',k) time.sleep (1) q = Queue () threads = [] for x in range (10): t = Thread(target=teststep, args=(q, 100, policy)) t.start() threads.append(t) for t in threads:
# SQRT example import config import os import sys import time import math import subprocess from libcontractvm import Wallet, WalletExplorer, ConsensusManager from cotst import ContractManager, ContractException import cvmutils if __name__ == "__main__" and len(sys.argv) == 2: player = sys.argv[1].lower() if player == 'spawn': cvmutils.spawn(3) while True: time.sleep(5) sys.exit() consensusManager = ConsensusManager.ConsensusManager() for x in range(3): consensusManager.addNode('http://localhost:' + str(2818 + x)) if player == 'worker': wallet = WalletExplorer.WalletExplorer(wallet_file='testa.wallet') else: wallet = WalletExplorer.WalletExplorer(wallet_file='testb.wallet')
import os import sys import time import subprocess from libcontractvm import Wallet, WalletExplorer, ContractManager, ContractException, ConsensusManager import cvmutils import threading from threading import Lock, Thread from queue import Queue if __name__ == "__main__": f1 = open ('/home/dak/result_2_both.csv', 'w') f2 = open ('/home/dak/result_2_oneg.csv', 'w') cvmutils.spawn (20, 10, delay = 0) for k in range (8,11): for policy in [ConsensusManager.POLICY_BOTH, ConsensusManager.POLICY_ONLY_NEGATIVE]: cms = [] for j in range (10): consensusManager = ConsensusManager.ConsensusManager ('XLT', policy) for x in range (10): if x >= 10-k: consensusManager.addNode ('http://localhost:' + str (2818 + 10 + x)) else: consensusManager.addNode ('http://localhost:' + str (2818 + x)) cms.append ([consensusManager, 0]) for it in range (1,101): erate = []