mirror of
https://github.com/i-net-software/JWebAssembly.git
synced 2025-03-15 02:44:47 +01:00
tests for System.arraycopy
This commit is contained in:
parent
7518188ded
commit
b3ac7c49fc
@ -18,6 +18,7 @@ package de.inetsoftware.jwebassembly.runtime;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.Collection;
|
||||
import java.util.zip.CRC32;
|
||||
|
||||
import org.junit.Assume;
|
||||
import org.junit.ClassRule;
|
||||
@ -56,6 +57,8 @@ public class ArrayOperations extends AbstractBaseTest {
|
||||
addParam( list, script, "loopFloat" );
|
||||
addParam( list, script, "loopDouble" );
|
||||
addParam( list, script, "loopObject" );
|
||||
addParam( list, script, "copyBack2Front" );
|
||||
addParam( list, script, "copyFront2Back" );
|
||||
}
|
||||
rule.setTestParameters( list );
|
||||
return list;
|
||||
@ -156,5 +159,31 @@ public class ArrayOperations extends AbstractBaseTest {
|
||||
}
|
||||
return sum;
|
||||
}
|
||||
|
||||
@Export
|
||||
static double copyBack2Front() {
|
||||
byte[] a = new byte[50];
|
||||
for( int i = 0; i < a.length; i++ ) {
|
||||
a[i] = (byte)i;
|
||||
}
|
||||
|
||||
System.arraycopy( a, 20, a, 15, 10 );
|
||||
CRC32 crc = new CRC32();
|
||||
crc.update( a );
|
||||
return crc.getValue();
|
||||
}
|
||||
|
||||
@Export
|
||||
static double copyFront2Back() {
|
||||
byte[] a = new byte[50];
|
||||
for( int i = 0; i < a.length; i++ ) {
|
||||
a[i] = (byte)i;
|
||||
}
|
||||
|
||||
System.arraycopy( a, 15, a, 20, 10 );
|
||||
CRC32 crc = new CRC32();
|
||||
crc.update( a );
|
||||
return crc.getValue();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user