Add special selectors to selector collision test (#243)

This commit is contained in:
mzhu25 2021-05-14 10:50:58 -07:00 committed by GitHub
parent 27c624633c
commit a744acc7bc
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 14 additions and 0 deletions

View File

@ -1,4 +1,13 @@
[ [
{
"version": "0.24.0",
"changes": [
{
"note": "Add special selectors to selector collision test",
"pr": 243
}
]
},
{ {
"version": "0.23.0", "version": "0.23.0",
"changes": [ "changes": [

View File

@ -3,9 +3,14 @@ import { MethodAbi } from 'ethereum-types';
import * as wrappers from '../../src/wrappers'; import * as wrappers from '../../src/wrappers';
// tslint:disable:no-string-literal
blockchainTests('Selector collision test', env => { blockchainTests('Selector collision test', env => {
it('Function selectors do not collide', () => { it('Function selectors do not collide', () => {
const selectorToSignature: { [selector: string]: string } = {}; const selectorToSignature: { [selector: string]: string } = {};
selectorToSignature['bca8c7b5'] = 'executeCall(address,bytes)'; // legacy allowance target
selectorToSignature['a9059cbb'] = 'transfer(address,uint256)'; // ERC20Token transfer
selectorToSignature['23b872dd'] = 'transferFrom(address,address,uint256)'; // ERC20Token transferFrom
for (const wrapper of Object.values(wrappers)) { for (const wrapper of Object.values(wrappers)) {
if (typeof wrapper === 'function') { if (typeof wrapper === 'function') {
const contract = new wrapper(constants.NULL_ADDRESS, env.provider, env.txDefaults); const contract = new wrapper(constants.NULL_ADDRESS, env.provider, env.txDefaults);