Skip to content

Instantly share code, notes, and snippets.

Yukishige Nakajo nakajo2011

Block or report user

Report or block nakajo2011

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
@nakajo2011
nakajo2011 / SimpleDonationManager.sol
Last active May 27, 2020
Using immutable keyword
View SimpleDonationManager.sol
pragma solidity >=0.6.5;
contract SimpleDonationManager {
uint256 immutable minDonation = 42;
uint256 immutable maxDonation = calcMaxDonation();
address immutable owner;
constructor() public {
owner = msg.sender;
// Error: Immutables cannot be read in constructor.
// assert(minDonation <= maxDonation);
// Error: Immutables can only be assigned once.
@nakajo2011
nakajo2011 / 1.web3.js
Created Apr 9, 2020
mock web3.js using jest
View 1.web3.js
/* Mock web3 as __tests__/__mocks__/web3.js */
// const web3 = jest.genMockFromModule('web3')
/* Mock web3-eth-contract */
let mockWeb3EthContract = function() {}
function __setMockContract(mock) {
mockWeb3EthContract = mock
}
let blockNumber = 0
@nakajo2011
nakajo2011 / faucet_with_provider.js
Created Apr 9, 2020
with provider for mock web3.js
View faucet_with_provider.js
const Web3 = require('web3')
const Faucet = require('./faucet')
const BLOCK_NUMBER_PER_DAY = 24 * 60 * 4
const contractJson = require('../../build/contracts/MyToken')
class FaucetWithProvider extends Faucet {
constructor(provider, address, fromAddress) {
super(address, fromAddress)
this.provider = new Web3(provider)
this.myToken = new this.provider.eth.Contract(contractJson.abi, address, {from: fromAddress})
@nakajo2011
nakajo2011 / faucet.spec.js
Created Apr 8, 2020
web3.js mocking sample unit test
View faucet.spec.js
const Faucet = require('../src/model/faucet')
const CONTRACT_ADDRESS = '0xadDf5bC8b45571D94e2FD46Bfb81f8dD6D6f9FA0'
const FROM_ADDRESS = '0x259de638f0d6d79dfa084a810c1356d4d575b62e'
describe('Faucet', function () {
describe('init', function () {
it('should be return instance', async () => {
const ins = new Faucet(CONTRACT_ADDRESS, FROM_ADDRESS)
expect(ins).toBeDefined()
@nakajo2011
nakajo2011 / faucet.js
Last active Apr 8, 2020
web3.js mock sample
View faucet.js
const Web3 = require('web3')
const BLOCK_NUMBER_PER_DAY = 24 * 60 * 4
const contractJson = require('../../build/contracts/MyToken')
class Faucet {
constructor(address, fromAddress) {
this.provider = new Web3(new Web3.providers.HttpProvider("http://localhost:7545"))
this.myToken = new this.provider.eth.Contract(contractJson.abi, address, {from: fromAddress})
}
@nakajo2011
nakajo2011 / patricia_sampl_dump.js
Last active Nov 20, 2019
Simple Patricia Trie what showed in "Patricia Trie" in Ethereum wiki.
View patricia_sampl_dump.js
const BaseTrie = require('merkle-patricia-tree/baseTrie')
const TrieNode = require('merkle-patricia-tree/trieNode')
const toNibbleArray = (bytes) => {
let nibbles = []
bytes.forEach((b) => {
nibbles.push(parseInt(b / 16))
nibbles.push(b % 16)
})
return Buffer.from(nibbles)
@nakajo2011
nakajo2011 / daveauction.vy
Created Oct 9, 2019
Devcon5 Day2 hands-on
View daveauction.vy
# Devcon 5 Auction
# Masked Reveal Auction
#*******************************
#Every user has a bid amount, hash (bidamount,pass), sent masked amount
struct Data:
bidval: wei_value
hashval: bytes32
sentval: wei_value
View keybase.md

Keybase proof

I hereby claim:

  • I am nakajo2011 on github.
  • I am y_nakajo (https://keybase.io/y_nakajo) on keybase.
  • I have a public key ASDVHdcqYNHUJmuB-C_nfytsir7fRHTPyn5zrtAJkjKwIgo

To claim this, I am signing this object:

View sample.js
const Web3 = require('web3')
const {Solo, BigNumber} = require('./dist/js/src/index.js')
const {AmountReference, AmountDenomination, ConfirmationType} = require('./dist/js/src/types.js')
process.on('unhandledRejection', console.dir)
const WETH_Market_ID = new BigNumber('0')
const DAI_Market_ID = new BigNumber('1')
const USDC_Market_ID = new BigNumber('2')
/**
@nakajo2011
nakajo2011 / AddRemote_in_tx_pool.go
Last active Feb 5, 2019
20190206 blog parts2 reference from rev:27ce4eb78bdf5d9b742ed05babe9b86a434733a1
View AddRemote_in_tx_pool.go
L798-L803
// AddRemote enqueues a single transaction into the pool if it is valid. If the
// sender is not among the locally tracked ones, full pricing constraints will
// apply.
func (pool *TxPool) AddRemote(tx *types.Transaction) error {
return pool.addTx(tx, false)
}
...
L631-L641
You can’t perform that action at this time.