Skip to content

Instantly share code, notes, and snippets.

@alexisljn
alexisljn / reentrency-attack.sol
Created August 2, 2022 10:08
Reentrency in Solidity
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.13;
/*
EtherStore is a contract where you can deposit and withdraw ETH.
This contract is vulnerable to re-entrancy attack.
Let's see why.
1. Deploy EtherStore
2. Deposit 1 Ether each from Account 1 (Alice) and Account 2 (Bob) into EtherStore
@alexisljn
alexisljn / log-event-values-during-test.ts
Created December 21, 2022 08:22
Log events values during hardhat test
import {ContractTransaction, ContractReceipt} from "ethers";
let tx: ContractTransaction = await contract.calledFunc();
let receipt: ContractReceipt = await tx.wait();
const events = receipt.events!.filter((x) => {return x.event == "EventName"});
console.log(events[0].args);