def sendTransaction(self, transaction): formatted_transaction = formatters.input_transaction_formatter(self, transaction) if 'gas' not in formatted_transaction and 'data' in formatted_transaction: formatted_transaction['gas'] = get_buffered_gas_estimate( self.web3, transaction=formatted_transaction, ) elif 'gas' not in formatted_transaction: formatted_transaction['gas'] = 90000 return self.web3._requestManager.request_blocking( "eth_sendTransaction", [formatters.input_transaction_formatter(self, formatted_transaction)], )
def estimateGas(self, transaction): formatted_transaction = formatters.input_transaction_formatter( self, transaction) return self.web3._requestManager.request_blocking( "eth_estimateGas", [formatted_transaction], )
def sendTransaction(self, transaction): formatted_transaction = formatters.input_transaction_formatter( self, transaction) if 'gas' not in formatted_transaction and 'data' in formatted_transaction: formatted_transaction['gas'] = get_buffered_gas_estimate( self.web3, transaction=formatted_transaction, ) elif 'gas' not in formatted_transaction: formatted_transaction['gas'] = 90000 return self.web3._requestManager.request_blocking( "eth_sendTransaction", [ formatters.input_transaction_formatter(self, formatted_transaction) ], )
def call(self, transaction, block_identifier=None): formatted_transaction = formatters.input_transaction_formatter(self, transaction) if block_identifier is None: block_identifier = self.defaultBlock return self.web3._requestManager.request_blocking( "eth_call", [ formatted_transaction, formatters.input_block_identifier_formatter(block_identifier), ], )
def call(self, transaction, block_identifier=None): formatted_transaction = formatters.input_transaction_formatter( self, transaction) if block_identifier is None: block_identifier = self.defaultBlock return self.web3._requestManager.request_blocking( "eth_call", [ formatted_transaction, formatters.input_block_identifier_formatter(block_identifier), ], )
def post(self, request, *args, **kwargs): if request.method == 'POST': query = request.POST.get("value") value = int(query) * 100000 print(value) from_wallet = WalletProfile.objects.get(user=request.user) to_user = request.POST.get("username") to_user = User.objects.get(username=to_user) to_wallet = WalletProfile.objects.get(user=to_user) web3 = Web3(KeepAliveRPCProvider(host='localhost', port='8545')) transaction = formatters.input_transaction_formatter( web3.eth, { 'to': to_wallet.num, 'from': from_wallet.num, 'value': value }) web3.personal.signAndSendTransaction(transaction, request.user.username) return render(request, "home.html")
def test_input_transaction_formatter(web3, value, expected): assert formatters.input_transaction_formatter(web3.eth, value) == expected
def estimateGas(self, transaction): formatted_transaction = formatters.input_transaction_formatter(self, transaction) return self.web3._requestManager.request_blocking( "eth_estimateGas", [formatted_transaction], )