jaroslav@824: /** jaroslav@824: * Back 2 Browser Bytecode Translator jaroslav@824: * Copyright (C) 2012 Jaroslav Tulach jaroslav@824: * jaroslav@824: * This program is free software: you can redistribute it and/or modify jaroslav@824: * it under the terms of the GNU General Public License as published by jaroslav@824: * the Free Software Foundation, version 2 of the License. jaroslav@824: * jaroslav@824: * This program is distributed in the hope that it will be useful, jaroslav@824: * but WITHOUT ANY WARRANTY; without even the implied warranty of jaroslav@824: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the jaroslav@824: * GNU General Public License for more details. jaroslav@824: * jaroslav@824: * You should have received a copy of the GNU General Public License jaroslav@824: * along with this program. Look for COPYING file in the top folder. jaroslav@824: * If not, see http://opensource.org/licenses/GPL-2.0. jaroslav@824: */ jaroslav@824: package org.apidesign.bck2brwsr.tck; jaroslav@824: jaroslav@824: import org.apidesign.bck2brwsr.vmtest.Compare; jaroslav@824: import org.apidesign.bck2brwsr.vmtest.VMTest; jaroslav@824: import org.testng.annotations.Factory; jaroslav@824: jaroslav@824: /** jaroslav@824: * jaroslav@824: * @author Jaroslav Tulach jaroslav@824: */ jaroslav@824: public class DoubleTest { jaroslav@1247: @Compare public boolean parsedDoubleIsDouble() { jaroslav@1247: return Double.valueOf("1.1") instanceof Double; jaroslav@1247: } jaroslav@1332: jaroslav@1332: @Compare public boolean parsedFloatIsFloat() { jaroslav@1332: return Float.valueOf("1.1") instanceof Float; jaroslav@1332: } jaroslav@1247: jaroslav@824: @Compare public String integerToString() { jaroslav@824: return toStr(1); jaroslav@824: } jaroslav@824: jaroslav@824: @Compare public String integerAndHalfToString() { jaroslav@824: return toStr(1.5); jaroslav@824: } jaroslav@824: jaroslav@824: @Compare public double longToAndBack() { jaroslav@824: return Double.parseDouble(toStr(Long.MAX_VALUE / 10)); jaroslav@824: } jaroslav@824: jaroslav@824: @Compare public String negativeIntToString() { jaroslav@824: return toStr(-10); jaroslav@824: } jaroslav@824: jaroslav@824: @Compare public String negativeIntAndHalfToString() { jaroslav@824: return toStr(-10.5); jaroslav@824: } jaroslav@824: jaroslav@824: @Compare public double negativeLongAndBack() { jaroslav@824: return Double.parseDouble(toStr(Long.MIN_VALUE / 10)); jaroslav@824: } jaroslav@824: jaroslav@828: @Compare public double canParseExp() { jaroslav@828: return Double.parseDouble(toStr(1.7976931348623157e+308)); jaroslav@828: } jaroslav@828: jaroslav@824: private static String toStr(double d) { jaroslav@824: return Double.toString(d); jaroslav@824: } jaroslav@824: jaroslav@824: @Factory jaroslav@824: public static Object[] create() { jaroslav@824: return VMTest.create(DoubleTest.class); jaroslav@824: } jaroslav@824: }