diff --git a/contracts/zero-ex/CHANGELOG.json b/contracts/zero-ex/CHANGELOG.json index a1dc4e0be5..a008366c59 100644 --- a/contracts/zero-ex/CHANGELOG.json +++ b/contracts/zero-ex/CHANGELOG.json @@ -1,4 +1,13 @@ [ + { + "version": "0.24.0", + "changes": [ + { + "note": "Add special selectors to selector collision test", + "pr": 243 + } + ] + }, { "version": "0.23.0", "changes": [ diff --git a/contracts/zero-ex/test/features/selector_collision_test.ts b/contracts/zero-ex/test/features/selector_collision_test.ts index eb74934a21..357d5961a7 100644 --- a/contracts/zero-ex/test/features/selector_collision_test.ts +++ b/contracts/zero-ex/test/features/selector_collision_test.ts @@ -3,9 +3,14 @@ import { MethodAbi } from 'ethereum-types'; import * as wrappers from '../../src/wrappers'; +// tslint:disable:no-string-literal + blockchainTests('Selector collision test', env => { it('Function selectors do not collide', () => { 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)) { if (typeof wrapper === 'function') { const contract = new wrapper(constants.NULL_ADDRESS, env.provider, env.txDefaults);