Commit Graph

86 Commits

Author SHA1 Message Date
4fb9bb7020 Minor test style improvements (#1219)
* Changed .eq to .equal

* Changed equal(bool) to .to.be.bool

* Changed be.bool to equal(bool), disallowed unused expressions.
2018-08-22 16:05:18 -03:00
ac91af9a6a Replace all asserts with chai.should (#1183)
* Moving towards chai.should.

* Fixed failing tests.

* Fixed linter errors.

* Revert package-lock.json changes.

* Fixed failing tests.

* s/eq/equal

* Addressed review comment
2018-08-10 19:03:04 -03:00
31fc572abe inLogs no longer returns a promise. (#1169) 2018-08-08 10:57:00 -07:00
2f6c8b05f6 Test/assertRevert: Fix late return bug (#1123)
We now ensure that if an exception is thrown while awaiting the promise,
the exception _has_ to be a revert. We throw 'Expected revert not
received' only afterwards. This solves any problems with confusing the
word 'revert'.

Fix #775
2018-07-26 23:53:06 -03:00
567b773242 Prefer const in test files (#1117)
* Removed all instances of var.

* Sorted eslintrc rules.

* Made eslint rule severity explicit.

* Now prefering const over let.
2018-07-26 13:25:10 -03:00
e6c15b34da Remove chai-as-promised (#1116)
* Test: Remove chai-as-promised calls

* Test/Helpers: expectThrow accepts optional message

* NPM: Remove chai-as-promised

* Contracts/DestructibleMock: Fix lint
2018-07-26 11:53:33 -03:00
67b67b791e Changed before for beforeAll, refactored Bouncer tests. (#1094)
* Changed before for beforeAll, refactored Bouncer tests.

* Fixed linter errors.

* fix: updates for SignatureBouncer tests and voucher construction
2018-07-20 12:25:40 -03:00
cea2a85a42 Remove Babel (#1074)
* Test helpers no longer rely on Babel.

* Behaviours are no longer imported.

* Removed Babel dependency.

* Fixed linter errors.
2018-07-18 19:37:16 -03:00
40b5594f52 Promisify web3 sync requests in tests (#1009) 2018-07-10 14:01:51 -07:00
92b695f2fb Fix/whitelisted crowdsale (#981)
* fix: swithc WhitelistedCrowdsale to use Whitelist.sol

* feat: refactor whitelist.sol, rbac.sol and whitelistedcrowdsale.sol

* feat: add event arg assets and update whitelist

* fix: update modifier comment and also test isWhitelisted

* fix: remove onlyWhitelisted backwards compat attempt, fix explicit inheritance

* fix: remove underscore prefix from event args

* fix: user access/Whitelist
2018-06-15 14:11:50 -07:00
259b9da3e6 add 165 to 721 (#972)
* make _tokenId indexed in Transfer and Approval events

via: https://github.com/ethereum/EIPs/pull/1124/files

* fix: make name() and symbol() external instead of public

* feat: implement ERC721's ERC165

* feat: erc165 tests

* fix: don't use chai-as-promised in direct await

* fix: reorganize to /introspection

* feat: abstract all erc165 tests to a behavior

* feat: disallow registering 0xffffffff
2018-06-08 18:50:12 -03:00
6a7114fdb4 Bouncer contract implementation (#883)
* feat: implement bouncer contracts

* fix: rename Bouncer to SignatureBouncer
2018-04-17 11:36:24 -03:00
0926729c8f Add StandardBurnableToken implementation (#870)
* Add StandardBurnableToken implementation

BurnableToken that extends from StandardToken and adds a
burnFrom method that decrements allowance. Equivalent to
a transferFrom plus burn in a single operation.

* Return event object from expectEvent helper

* Add comment on Approval event in burnFrom function

* Improvements on burnable token tests

- Inject initial balance as a parameter to the behaviour
- Use expectEvent helper for assertions on events
- Use chai bignumber for numbers
- Change to bdd-style assertions
2018-04-11 16:15:33 -03:00
a7e91856f3 Update to Truffle 4.1.5 and Ganache 6.1.0 (#876)
* Update to ganache-cli v6.1.0 and truffle v4.1.0

* Update to stable version of ganache-cli

* fix: update event emission warning

- Fix event emission warnings for solidity 4.21 after truffle has been
updated to use this version

* fix pr review comments

* update to truffle v4.1.5

* update package-lock

* add additional emit keywords

* update solidity-coverage to 0.4.15

* update to solium 1.1.6

* fix MerkleProof coverage analysis by testing through wrapper

* change version pragma to ^0.4.21

* fix solium linting errors
2018-04-09 20:48:32 -03:00
06666be93a change MerkleProof interface to take array of bytes32 (#879) 2018-04-08 12:36:16 -03:00
bd5f7f5774 Fix SafeMath test file (#865) 2018-04-03 17:54:48 -03:00
e96164feea ERC721 full implementation (#803)
* Rename current ERC721 implementation to BaseERC721

* Implement ERC721 optional & approveAll functionality

* Support for new ERC721 interface

- Tests for new features are pending
- ERC721 is abstract, since it requires metadata implementation
- Move some methods into DeprecatedERC721 contract
- Reorganise base vs full implementation
- Pending tokenByIndex

* Add more tests for ERC721

* Implement suggestions by @dekz

* Update comments in ERC721 contracts

* Implement tokensByIndex extension

- Remove restrictions from mock mint and burn calls

* Add default implementation for metadata URI

This allows token implementation to be non-abstract

* Allow operators to call approve on a token

* Remove gas stipend restriction in call to 721 receiver

* Remove deprecated implementation

We only want to keep the interface, for interacting with already deployed contracts

* Add notice to isContract helper on constract constructors

* Change natspec delimiters for consistency

* Minor linting fixes

* Add constant modifier to ERC721_RECEIVED magic value

* Use 4-params safeTransferFrom for implementing the 3-params overload

* Minor text changes in natspec comments

* Use address(0) instead of 0 or 0x0

* Use if-statements instead of boolean one-liners for clarity

:-(

* Keep ownedTokensCount state var in sync in full ERC721 implementation

* Fix incorrect comparison when burning ERC721 tokens with metadata

* Use address(0) instead of 0 in one more place in ERC721

* Throw when querying balance for the zero address

Required by the spec

* Update links to approved version of EIP721

* Use explicit size for uint

* Remove unneeded internal function in ERC721

Also rename addToken and removeToken for added clarity

* Use underscore instead of 'do' prefix for internal methods in ERC721

* Fix failing test due to events reordering in ERC721 safe transfer

* Fix bug introduced in 74db03ba06

* Remove do prefix for internal setTokenUri method

* Allow transfers to self in ERC721
2018-03-23 15:11:59 -03:00
17884e91a1 Emit Trasnfer event on SimpleToken creation 2018-01-09 15:34:05 -03:00
323d1fa941 Refactor assert revert helper to encapsulate promises (#628) 2017-12-28 00:39:55 -03:00
677d05743c feat: update event names for OZ standards and test them 2017-12-04 13:42:55 +02:00
9bb2c958ec feat: add adminAddRole, adminRemoveRole, and make hasRole/checkRole public 2017-12-01 18:15:44 +02:00
e931c1cbfc feat: RBAC authentication contract and role library 2017-12-01 18:15:44 +02:00
d07bdccc0c feat: manually fix linting errors across tests 2017-12-01 13:40:09 +02:00
227a335399 feat: move mock solidity contracts to mocks/ folder 2017-12-01 13:39:13 +02:00
8662846838 feat: apply eslint --fix across project 2017-12-01 13:37:09 +02:00
47585b1117 fix: make SplitPayment payable by default 2017-11-24 17:02:53 +02:00
c29dd086d3 Update to testrpc 6.0.1 and test fixes for revert opcode. 2017-11-23 13:06:05 -03:00
bb1736e376 Change visibility of fallbacks to external 2017-11-23 12:28:46 -03:00
c6e0edb268 Remove solidity warnings in tests 2017-11-23 10:57:36 -03:00
ce86029f6a Update solidity version on test helpers 2017-11-22 19:00:13 -03:00
db5a12cfdd Merge pull request #506 from TalAter/fix/deprecated-throw-in-tests
Replace deprecated throw with assert in Solidity tests
2017-11-21 14:41:31 -03:00
5fc53b6f2f Replaced assert with require 2017-11-19 01:34:24 +02:00
14ae881e26 Merge pull request #544 from maraoz/timer-improvement
remove timer test helper
2017-11-14 17:24:42 -03:00
84bffb854a Merge pull request #477 from facuspagnuolo/feaure/create_detailed_erc20_interface
Create detailed ERC20 interface
2017-11-13 15:42:09 -03:00
365c875ced Create detailed ERC20 interface 2017-11-13 15:36:02 -03:00
7dd0ee6212 remove timer 2017-11-12 15:10:46 -05:00
e72c7ce91b Merge pull request #417 from abarmat/feature-splitpayment-contract
Feature SplitPayment contract
2017-11-10 18:45:56 -03:00
c4ca7f03e3 improve timer test helper 2017-11-10 13:29:58 -08:00
2413f83504 Include 'revert' in expectThrow() helper 2017-11-10 11:41:17 -03:00
1d54b86a7c Replace deprecated throw with assert in Solidity tests 2017-10-17 21:02:47 +03:00
ffd1090718 [TokenVesting] Remove VestedTokenMock 2017-10-04 18:08:36 -03:00
bcda5bfe9b Merge branch 'master' into feature/merkleproof 2017-09-18 14:01:10 -04:00
6d8bb497c8 removing trailing whitespace 2017-09-16 10:20:06 -04:00
dc1017c929 Simplify implementation using similar interface as PullPayment contract 2017-09-09 12:04:31 -03:00
69e83e5086 Add a SplitPullPayment contract that combines distribution of funds and delayed withdrawal from each party 2017-08-29 12:06:24 -03:00
8336785a9b Add a SplitPayment contract to distribute funds among multiple beneficiaries 2017-08-29 12:06:23 -03:00
c37c233d22 add SafeERC20 tests for succeeding operations 2017-08-28 19:27:56 -03:00
c7636bdc4c add safe ERC20 helpers 2017-08-28 17:32:18 -03:00
0d6846a882 Remove moment.js dependencies - updates after review 2017-08-15 12:31:49 +02:00
e86ac90853 Refactor and remove moment.js usages 2017-08-14 00:27:09 +02:00