@@ -111,6 +111,13 @@ function runTests (solc, versionText) {
111
111
} ) ;
112
112
113
113
t . test ( 'invalid source code fails properly (using lowlevel API)' , function ( st ) {
114
+ // TODO: try finding an example which doesn't crash it?
115
+ if ( semver . eq ( solc . semver ( ) , '0.4.11' ) ) {
116
+ st . skip ( 'Skipping on broken compiler version' ) ;
117
+ st . end ( ) ;
118
+ return ;
119
+ }
120
+
114
121
if ( typeof solc . lowlevel . compileSingle !== 'function' ) {
115
122
st . skip ( 'Low-level compileSingle interface not implemented by this compiler version.' ) ;
116
123
st . end ( ) ;
@@ -328,6 +335,13 @@ function runTests (solc, versionText) {
328
335
} ) ;
329
336
330
337
t . test ( 'invalid source code fails properly with standard JSON (using lowlevel API)' , function ( st ) {
338
+ // TODO: try finding an example which doesn't crash it?
339
+ if ( semver . eq ( solc . semver ( ) , '0.4.11' ) ) {
340
+ st . skip ( 'Skipping on broken compiler version' ) ;
341
+ st . end ( ) ;
342
+ return ;
343
+ }
344
+
331
345
if ( typeof solc . lowlevel . compileStandard !== 'function' ) {
332
346
st . skip ( 'Low-level compileStandard interface not implemented by this compiler version.' ) ;
333
347
st . end ( ) ;
@@ -542,6 +556,13 @@ function runTests (solc, versionText) {
542
556
} ) ;
543
557
544
558
t . test ( 'compiling standard JSON (using libraries)' , function ( st ) {
559
+ // 0.4.0 has a bug with libraries
560
+ if ( semver . eq ( solc . semver ( ) , '0.4.0' ) ) {
561
+ st . skip ( 'Skipping on broken compiler version' ) ;
562
+ st . end ( ) ;
563
+ return ;
564
+ }
565
+
545
566
// <0.1.6 doesn't have this
546
567
if ( ! solc . features . multipleInputs ) {
547
568
st . skip ( 'Not supported by solc' ) ;
@@ -586,6 +607,13 @@ function runTests (solc, versionText) {
586
607
} ) ;
587
608
588
609
t . test ( 'compiling standard JSON (using libraries) (using lowlevel API)' , function ( st ) {
610
+ // 0.4.0 has a bug with libraries
611
+ if ( semver . eq ( solc . semver ( ) , '0.4.0' ) ) {
612
+ st . skip ( 'Skipping on broken compiler version' ) ;
613
+ st . end ( ) ;
614
+ return ;
615
+ }
616
+
589
617
if ( typeof solc . lowlevel . compileStandard !== 'function' ) {
590
618
st . skip ( 'Low-level compileStandard interface not implemented by this compiler version.' ) ;
591
619
st . end ( ) ;
@@ -707,13 +735,16 @@ function runTests (solc, versionText) {
707
735
708
736
runTests ( solc , 'latest' ) ;
709
737
710
- // New features 0.1.6, 0.2.1, 0.4.11, 0.5.0, etc.
738
+ // New compiler interface features 0.1.6, 0.2.1, 0.4.11, 0.5.0, etc.
739
+ // 0.4.0 added pragmas (used in tests above)
711
740
const versions = [
712
741
'v0.1.1+commit.6ff4cd6' ,
713
742
'v0.1.6+commit.d41f8b7' ,
714
743
'v0.2.0+commit.4dc2445' ,
715
744
'v0.2.1+commit.91a6b35' ,
716
745
'v0.3.6+commit.3fc68da' ,
746
+ 'v0.4.0+commit.acd334c9' ,
747
+ 'v0.4.11+commit.68ef5810' ,
717
748
'v0.4.26+commit.4563c3fc'
718
749
] ;
719
750
for ( var version in versions ) {
0 commit comments