cgewecke
f6b617ea22
Debug CI: run flush test
8 years ago
cgewecke
e075842225
Use istanbul API instead of shell.exec b/c incompatible w/ npm install --save-dev solcover
8 years ago
cgewecke
1bf4ac32f8
Only run single testrpc instance in tests
8 years ago
cgewecke
c98c53bd92
Debug CI - untoggle silent
8 years ago
cgewecke
9f770c8700
Move to config file based options, allow use of coverage network in truffle.js
8 years ago
cgewecke
60c93326a0
Try to fix CI: remove yargs, add commander for argv processing
8 years ago
cgewecke
adbdf8e080
Try removing shebang to get CI to pass
8 years ago
cgewecke
6fb6f0b800
Add debugging line for norpc, explicitly include yargs
8 years ago
cgewecke
6de8846abf
Remove silence to debug CI failure, lengthen timeout, npm bin
8 years ago
cgewecke
b24dbc0a75
Remove patching - replace with testrpc/ethereumjs-vm forks
8 years ago
cgewecke
d9d9789f5b
Attempt to normalize paths for "npm install --save-dev" use
8 years ago
cgewecke
95f058029a
Remove .only on run tests
8 years ago
cgewecke
fa903ecba2
Comments/cleanup in exec.js. Add --test flag, add CI logic to flush test
8 years ago
cgewecke
bb50f660c5
Comment out suite flush test, remove truffle -g from circle.yml
8 years ago
cgewecke
31125bf4f5
Toggle silence off to debug CI failures
8 years ago
cgewecke
f1de0f42df
exec.js test suite updated for truffle 3
8 years ago
cgewecke
b1fa110d89
Add truffle fork dep, exec.js
8 years ago
cgewecke
53c7eaedd5
Bump solidity-parser to 0.3.0 & small fixes to accomodate it. Add tuples test.
8 years ago
area
c498814470
Merge pull request #52 from JoinColony/fixZeppelinTests
...
Fix Zeppelin tests
8 years ago
Alex Rea
a1a4aebcfe
Fix Zeppelin tests
8 years ago
area
93a7f419c5
Merge pull request #50 from JoinColony/hotfix
...
Revert to solc 0.4.6
8 years ago
Alex Rea
ac813a2663
OSX case insensitive filesystems suck
8 years ago
Alex Rea
a283af162e
Revert to solc 0.4.6
8 years ago
Alex Rea
ad43de5dcb
This test now shows the problem
8 years ago
area
b165eb734a
Merge pull request #49 from JoinColony/refactor
...
Refactor and lint
8 years ago
Alex Rea
bc6dd8c17f
Update package.json versions
8 years ago
Alex Rea
41a3e4a8ca
Add brief headers to new files
8 years ago
Alex Rea
30a2292a00
Move instrumenter functions to separate file
8 years ago
Alex Rea
500cbd6f29
Remove the 'instrumenting' flag
8 years ago
Alex Rea
b9254fbb50
Lint the ./test/util files as well
8 years ago
Alex Rea
2c3a2248c8
Run ESLint over everything
8 years ago
Alex Rea
5ee149775f
Move parse and injector into own files
8 years ago
Alex Rea
4848f458f7
Tie everything to the same 'contract' object
8 years ago
area
4a25ec6a99
Merge pull request #46 from JoinColony/library-units
...
Add unit test for LibraryStatement, UsingStatement, lib method calls
8 years ago
cgewecke
a843a0b1f6
Add unit test for LibraryStatement, UsingStatement, lib method calls
8 years ago
area
d885a6a4c7
Merge pull request #45 from JoinColony/conditional-unit-tests
...
Add unit tests for conditional, binary and new statements
8 years ago
Alex Rea
6563906fed
Remove closeBracket event types
...
These situations are now dealt with by the preprocessor.
8 years ago
Alex Rea
3304b4c4f1
Add tests for 'useless' (but valid) expressions
...
It's unclear why someone would do these things, but they're
valid solidity, so we should support them...
8 years ago
cgewecke
c782afa322
Add unit tests for ConditionalExpression
8 years ago
area
bacd364110
Merge pull request #42 from JoinColony/linting
...
Only improves `instrumentSolidity` from a linting perspective, but baby steps!
8 years ago
Alex Rea
2badb25c38
Add eslint-plugin-mocha to package.json
8 years ago
Alex Rea
f90674bd82
Fix cyclomatic complexity
8 years ago
Alex Rea
6239706e04
1 (cyclomatic complexity) error remains
8 years ago
Alex Rea
db4dd954ef
Drop down to 70 issues
8 years ago
Alex Rea
619ce594d0
Prepare for ESLinting
8 years ago
area
9aa76934f4
Merge pull request #34 from JoinColony/preprocessor-improvements
...
Preprocessor improvements
8 years ago
cgewecke
574e4e5775
Pin solidity-parser version to 0.2.0
8 years ago
Alex Rea
804c5fb428
Change approach to instrumentation of statements
...
Previously, we traversed the whole AST, and when we encountered a
statement we checked if we could instrument it i.e. if it was
standalone. This introduced a bunch of cases that we wanted to check
(is it in a block? it is immediately after a block? etc.) and some edge
cases that didn’t work properly (comments).
Instead, this stops traversing the AST in situations where we know we
can’t instrument. We can’t instrument `f(x)` easily (see below) in
these situations, so we don’t traverse them:
* `if (f(x))`
* `arr[f(x)`
* `var x = f(x)`
* `g(f(x))`
Of course, going forward we might ‘decide’ that we *can* in fact
instrument these. e.g. `arr[f(x)]` could be replaced by
```
var _some_unique_id = f(x);
arr[_some_unique_id];
```
and then instrumented as appropriate.
8 years ago
Alex Rea
4f1ad6e133
First crack at improving statement coverage accuracy
8 years ago
Alex Rea
1352caaee6
Instrument if else statements
8 years ago