Rhett Aultman
88a2ac25e5
Revert "Fix contract lookup in tests"
...
This reverts commit f8914c6b28
.
2017-01-16 18:07:48 -05:00
Rhett Aultman
fda39afdba
Modify library collision test
...
Since libaraies no longer collide on name but on fully-qualified name,
you can only induce collision by colliding them as idenfitiers.
2017-01-16 12:32:58 -05:00
Rhett Aultman
a7f8a1986a
Revert "Move clashing libraries to common source in test"
...
This reverts commit c4a9ca5cfe7a8b4ba9d2d84392c57d5eefacd1f7.
2017-01-16 12:32:58 -05:00
Rhett Aultman
1f30982ab5
Use fully-qualified names for linking, too
...
Using libraries leaves behind a library link reference in the binary
which the linker must later resolve. These link references were still
being generated by name and not by fully-qualified name. This would
lead to a link-time collision between two libraries having the same
name but in different source units.
This change changes linker symbols over to fully-qualified names,
which resolves that issue. This does potentially introduce a new
problem, which is that linker symbols appear to be limited to 36
characters and are truncated. Storing paths extends the average
symbol size, and it would be great if truncation was from the tail
rather than the head.
2017-01-16 12:32:57 -05:00
Rhett Aultman
f8914c6b28
Fix contract lookup in tests
...
The fully-qualified name of a contract with no source unit is :<Name>
instead of just <Name>, so the test system needed to be adjusted
accordingly.
2017-01-16 12:32:57 -05:00
Rhett Aultman
220ccfb492
Move clashing libraries to common source in test
...
Since contracts and libraries only collide if they share a common
source file now, this test only works if both libraries are in the
same source.
2017-01-16 12:32:57 -05:00
chriseth
bde0b40634
Merge pull request #1479 from ethereum/function_variable_mixin
...
Disallow mixin of functions and attributes under the same name
2017-01-13 09:36:00 +01:00
VoR0220
b6508ca992
fixed
...
Signed-off-by: VoR0220 <rj@erisindustries.com>
2017-01-11 12:03:54 -06:00
VoR0220
4542f459f1
added fix and a test for order independence of nested prefixing
...
Signed-off-by: VoR0220 <rj@erisindustries.com>
2017-01-11 11:45:14 -06:00
Yoichi Hirai
9602318eab
test: allow multiple errors in modifier-function overriding
2017-01-11 18:28:11 +01:00
Yoichi Hirai
42b6726173
analysis: allow some shadowings explicitly
2017-01-11 18:28:11 +01:00
VoR0220
6d9020b3b8
fixed test and added solution
...
Signed-off-by: VoR0220 <rj@erisindustries.com>
2017-01-08 22:53:54 -06:00
VoR0220
4f62980d52
added test
...
Signed-off-by: VoR0220 <rj@erisindustries.com>
2017-01-08 22:53:51 -06:00
Yoichi Hirai
07f34e0023
test: add a test importing a file name starting with a period
2017-01-03 18:18:27 +01:00
Yoichi Hirai
96ca706353
test: add a test case for #1286
2017-01-02 17:58:33 +01:00
Yoichi Hirai
18f8f29c0a
Merge pull request #1487 from ethereum/shift-ops
...
Shift operators
2016-12-14 16:31:27 +01:00
chriseth
08a11e309f
Fix tests.
2016-12-13 17:02:28 +01:00
Yoichi Hirai
932e7887bd
test: add tests that tries different types on <<=
2016-12-13 16:35:42 +01:00
Federico Bond
de720e643d
Improve error message when trying to modify constant variables
2016-12-13 00:32:37 -03:00
chriseth
2fac1d23a7
Tests for bytes.
2016-12-12 11:12:12 +01:00
chriseth
7bc2ecf30a
Correct test expectations.
2016-12-12 11:12:12 +01:00
chriseth
2738045030
Cleaner shift handling and type conversion for binary operations.
2016-12-12 11:12:12 +01:00
chriseth
2df60bec92
Type after shift should be type of left operand.
2016-12-12 11:12:12 +01:00
Alex Beregszaszi
b8b4f5e9f9
Support bitshifting in variables
2016-12-12 11:12:10 +01:00
Federico Bond
05139500fb
Warn about using msg.value in non-payable function
2016-12-08 16:22:13 -03:00
chriseth
84443eb560
Merge pull request #1351 from ethereum/truncate_bit
...
Truncate a boolean from calldata into one bit
2016-12-08 16:15:35 +01:00
chriseth
e7ff4ac810
Merge pull request #1412 from ethereum/disallow-multiple-errors
...
disallow more than one errors in name and type tests
2016-12-08 16:07:46 +01:00
Yoichi Hirai
94536ccec8
test: check error messages in parser tests
2016-12-06 17:28:49 +01:00
Yoichi Hirai
1f345e527d
test: either fix tests to raise just one error, or mark them as raising multiple errors
2016-12-05 15:41:37 +01:00
Yoichi Hirai
01215694f6
test: disallow more than one errors in name and type tests
2016-12-05 15:41:37 +01:00
Federico Bond
70d246c834
Migrate remaining source code in tests to R literals
2016-12-03 17:52:51 -03:00
chriseth
5098e1eb15
Count instructions without metadata hash.
2016-12-01 16:04:47 +01:00
Alex Beregszaszi
4c15c465ef
Submit library addresses to the compiler in tests (and not link afterwards)
2016-12-01 16:04:00 +01:00
Alex Beregszaszi
c88f34c781
Remove unneeded optimised test from EndToEndTest
2016-12-01 16:04:00 +01:00
Alex Beregszaszi
1ad9640fa3
Optimizer tests to not interfere with the optimiser flag
2016-12-01 16:03:59 +01:00
chriseth
f91ae3f06b
Fix tests
2016-12-01 16:03:59 +01:00
chriseth
6a7ff039df
Use CBOR encoding.
2016-12-01 16:03:59 +01:00
chriseth
1e35526eb6
Fix tests.
2016-12-01 16:03:59 +01:00
chriseth
aa1fd6a879
Add test.
2016-12-01 16:03:59 +01:00
chriseth
5789eaa78d
Metadata stamp.
2016-12-01 16:03:59 +01:00
chriseth
55a719a79c
Merge pull request #1462 from ethereum/fix-incorrect-assertion
...
codegen: assertion did not assert non-nullness
2016-12-01 15:14:31 +01:00
chriseth
1367aef83b
Merge pull request #1461 from ethereum/reference-not-pointer
...
test: replace a pointer argument by a reference
2016-12-01 15:13:32 +01:00
chriseth
9db14ce673
Merge pull request #1458 from federicobond/r-literals
...
Use more R string literals in tests
2016-12-01 15:03:27 +01:00
chriseth
5d1d81d270
Merge pull request #1454 from ethereum/end-of-comment
...
parser: recognize an end of comment of the form `**/`
2016-12-01 12:40:52 +01:00
Yoichi Hirai
422140f603
test: more precise expectation about the error for assigning into storage in inline assembly
2016-12-01 12:27:27 +01:00
Yoichi Hirai
dd0bd57d67
test: change retrieveFunctionBySignature to take a constant reference rather than a pointer
...
The function `retrieveFunctionBySignature` expected the argument to be a non-null pointer.
This commit makes this assumption more explicit.
2016-12-01 11:53:06 +01:00
Federico Bond
29e304d3bc
Fix typos (existant -> existent)
2016-12-01 01:29:30 -03:00
Federico Bond
6ce41b566d
Use more R string literals in tests
2016-12-01 00:50:15 -03:00
Alex Beregszaszi
610027cd26
Test that contracts separated by comments are compiled
2016-11-30 23:54:02 +00:00
Yoichi Hirai
547deec4be
codegen: clean any data from the input
2016-11-30 17:42:03 +01:00
Yoichi Hirai
b16cdbb57e
test: add a test that witnesses #1318
2016-11-30 17:40:34 +01:00
Yoichi Hirai
eaab712944
parser: recognize an end of comment of the form **/
at the end of a multi-line doc comment
...
This fixes #1433
2016-11-30 17:28:07 +01:00
Alex Beregszaszi
ac357d1225
Merge pull request #1442 from ethereum/lll-testing
...
LLL: introduce testing framework
2016-11-30 15:46:20 +00:00
Alex Beregszaszi
9a6a5f219b
Fix sub-0 optimiser test
2016-11-30 11:51:00 +00:00
chriseth
4ff89dda1d
Update SolidityOptimizer.cpp
2016-11-30 11:16:43 +00:00
Alex Beregszaszi
8d0b80f944
Add test for SUB with 0 optimisation
2016-11-30 11:16:43 +00:00
Alex Beregszaszi
25c5dd48de
Rename testSolidityAgainstCpp* to testContractAgainstCpp*
2016-11-29 21:54:28 +00:00
Alex Beregszaszi
d83dd59178
Move ExecutionFramework to the dev::test namespace
2016-11-29 21:54:27 +00:00
Alex Beregszaszi
a226db7338
Split out Solidity-specific part of ExecutionFramework
2016-11-29 21:54:27 +00:00
chriseth
0933a4ff1a
Merge pull request #1429 from ethereum/unreachablepeephole
...
Some dead code elimination
2016-11-25 16:57:59 +01:00
chriseth
3a8a0708ff
Merge pull request #1381 from ethereum/overflown_enum_compared
...
Enum overflow checking before writing to storage
2016-11-25 16:22:12 +01:00
chriseth
f2872bfa99
Peephole optimizer for unreacheable code.
2016-11-25 16:10:02 +01:00
Yoichi Hirai
df5d5edd1b
test: add a test about explicitly converting a string literal to string
2016-11-25 13:54:13 +01:00
Yoichi Hirai
e136ec8704
ast: string literals that are not valid UTF are not convertible to strings
2016-11-25 13:36:06 +01:00
Yoichi Hirai
aaf58a8c4e
test: add a test case converting an invalid UTF-8 into a string
2016-11-25 13:13:47 +01:00
chriseth
9e7b608e78
Merge pull request #1392 from ethereum/check_warning_contents
...
Check warning text in tests
2016-11-24 21:22:17 +01:00
Yoichi Hirai
a81f556302
test: various fixes
2016-11-24 19:22:26 +01:00
Yoichi Hirai
384c4546f1
interface: move searchForSubstring out of Error class into a separate file
2016-11-24 16:45:17 +01:00
Yoichi Hirai
feb10d015f
test: add a test that stores an invalid enum value
2016-11-24 11:31:45 +01:00
Yoichi Hirai
d4173cd54a
test: add a test about trying to log an event with too big enum values
2016-11-24 11:31:45 +01:00
Yoichi Hirai
d49904c92a
test: add a test that compares overflown enums
2016-11-24 11:31:45 +01:00
Yoichi Hirai
2faaddca05
interface: fix the substring search
2016-11-23 17:38:41 +01:00
Yoichi Hirai
cace51fc47
test: wrapping the error message checking in a macro
2016-11-23 17:38:41 +01:00
Yoichi Hirai
ab3db782ae
test: check the error texts
...
by changing parseAnalyseAndReturnError to return the whole Error, not just the type
2016-11-23 17:38:41 +01:00
chriseth
c9293f2f23
Enable the optimizer for test runs.
2016-11-23 16:48:13 +01:00
chriseth
0c874bbf27
Merge pull request #1425 from ethereum/fixLicensing
...
Fix licensing headers
2016-11-23 12:45:57 +01:00
VoR0220
3f9f725737
Fix licensing headers
...
Signed-off-by: VoR0220 <rj@erisindustries.com>
2016-11-23 12:22:33 +01:00
Yoichi Hirai
75686e3d75
test: add a test case about returning a struct in memory from a library
...
This fixes #1378
2016-11-22 17:09:22 +01:00
chriseth
7fb7d5ae39
Optimizer: Clear state for JUMPDESTs.
2016-11-22 14:58:24 +01:00
Alex Beregszaszi
a35ca910c7
Rename test contract names to capitalised
2016-11-17 17:23:35 +00:00
Alex Beregszaszi
1d6fe5c4e4
Add payable to constructor ABI tests
2016-11-17 17:23:35 +00:00
Alex Beregszaszi
7af360882e
Add missing payable constructors
2016-11-17 17:23:35 +00:00
chriseth
2c14a96820
Some more assertions and style changes.
2016-11-16 15:09:01 +01:00
chriseth
b3eeb5fcf9
Some more tests.
2016-11-16 14:37:19 +01:00
chriseth
e1fec9b287
JSON tests.
2016-11-16 14:37:19 +01:00
chriseth
ec31d08775
Change encoding to address-funid and add "function" as ABI type.
2016-11-16 14:37:19 +01:00
chriseth
a8e7ed37a1
Disable broken tests that are not useful.
2016-11-16 14:37:19 +01:00
chriseth
739dabff8b
Fix tests.
2016-11-16 14:37:19 +01:00
chriseth
7a292c9a05
Fix parser for function type disambiguity.
2016-11-16 14:37:19 +01:00
Yoichi Hirai
f3d0433ec3
test: add a test about external function type taking/returning internal functions
2016-11-16 14:37:18 +01:00
chriseth
e51f852504
Converted sub assembly to smart pointer.
2016-11-16 14:37:18 +01:00
chriseth
e543bd34c0
Stored combined creation and runtime tags.
...
Includes a change to Assembly to allow tags from sub-assemblies to be
used.
Sorry, this get a bit bigger than I thought.
2016-11-16 14:37:18 +01:00
chriseth
ee3efa67a8
Fix tests.
2016-11-16 14:37:18 +01:00
chriseth
08763a206d
Test passing functions as arrays to other contracts.
2016-11-16 14:37:18 +01:00
chriseth
925d674146
Disallow payable internal functions.
2016-11-16 14:37:18 +01:00
chriseth
e1df3bd77f
Fix tests.
2016-11-16 14:37:18 +01:00
chriseth
f21f794f3c
delete for function types
2016-11-16 14:37:18 +01:00
Yoichi Hirai
c9f9b2ab4d
codegen: add a compilation mode and a runtime context to CompilerContext
2016-11-16 14:37:18 +01:00
chriseth
47794c1da4
Implement uninitialized storage functions.
2016-11-16 14:37:18 +01:00
chriseth
b6992d740a
Tests for uninitialized storage functions.
2016-11-16 14:37:18 +01:00