mirror of
https://github.com/Eaglercraft-TeaVM-Fork/eagler-teavm.git
synced 2024-12-22 08:14:09 -08:00
Fix https://github.com/konsoletyper/teavm/issues/108 Fix incorrect
rounding of negative numbers
This commit is contained in:
parent
2f0ca6059c
commit
7277696870
|
@ -115,7 +115,7 @@ class TAbstractStringBuilder extends TObject implements TSerializable, TCharSequ
|
|||
} else {
|
||||
insertSpace(target, target + 1);
|
||||
}
|
||||
buffer[target++] = (char)('0' + value);
|
||||
buffer[target++] = TCharacter.forDigit(value, radix);
|
||||
} else {
|
||||
int pos = 1;
|
||||
int sz = 1;
|
||||
|
|
|
@ -93,11 +93,11 @@ public final class TMath extends TObject {
|
|||
public static native double atan2(double y, double x);
|
||||
|
||||
public static int round(float a) {
|
||||
return (int)(a + 0.5f);
|
||||
return (int)(a + signum(a) * 0.5f);
|
||||
}
|
||||
|
||||
public static long round(double a) {
|
||||
return (long)(a + 0.5);
|
||||
return (long)(a + signum(a) * 0.5);
|
||||
}
|
||||
|
||||
@GeneratedBy(MathNativeGenerator.class)
|
||||
|
|
|
@ -58,6 +58,11 @@ public class IntegerTest {
|
|||
assertEquals("kona", Integer.toString(411787, 27));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void writesSingleDigitInteger() {
|
||||
assertEquals("a", Integer.toString(10, 16));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void decodes() {
|
||||
assertEquals(Integer.valueOf(123), Integer.decode("123"));
|
||||
|
|
|
@ -54,4 +54,12 @@ public class MathTest {
|
|||
public void getExponentComputed() {
|
||||
assertEquals(6, Math.getExponent(123.456));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void roundWorks() {
|
||||
assertEquals(1, Math.round(1.3));
|
||||
assertEquals(2, Math.round(1.8));
|
||||
assertEquals(-1, Math.round(-1.3));
|
||||
assertEquals(-2, Math.round(-1.8));
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue
Block a user