diff options
Diffstat (limited to 'testsuite')
-rw-r--r-- | testsuite/java.lang/CastTest.java | 170 |
1 files changed, 170 insertions, 0 deletions
diff --git a/testsuite/java.lang/CastTest.java b/testsuite/java.lang/CastTest.java new file mode 100644 index 000000000..c33f1c294 --- /dev/null +++ b/testsuite/java.lang/CastTest.java @@ -0,0 +1,170 @@ +public class CastTest +{ + public static void main(String args[]) + { + d2d(); + l2d2l(); + d2l2d(); + f2d2f(); + d2f2d(); + i2f2i(); + l2f2l(); + f2l2f(); + } + + static void d2d() + { + String msg = "double -> double "; + + try { + double dvalue1 = 4.2; + double dvalue2 = (double)dvalue1; + if (dvalue1 != dvalue2) + failed(msg + dvalue1 + " != " + dvalue2); + else + passed(msg + dvalue1 + " == " + dvalue2); + } + catch (Exception e) + { + failed(msg + " : exception " + e.toString()); + } + } + + static void l2f2l() + { + String msg = "long -> float -> long "; + + try { + long lvalue = 123; + float fvalue = (float)lvalue; + long lvalue2 = (long)fvalue; + if (lvalue != lvalue2) + failed(msg + lvalue + " != " + lvalue2 + " (float)" + fvalue); + else + passed(msg + lvalue + " == " + lvalue2 + " (float)" + fvalue); + } + catch (Exception e) + { + failed(msg + " : exception " + e.toString()); + } + } + static void i2f2i() + { + String msg = "int -> float -> int "; + + try { + int ivalue = 123; + float fvalue = (float)ivalue; + int ivalue2 = (int)fvalue; + if (ivalue != ivalue2) + failed(msg + ivalue + " != " + ivalue2 + " (float)" + fvalue); + else + passed(msg + ivalue + " == " + ivalue2 + " (float)" + fvalue); + } + catch (Exception e) + { + failed(msg + " : exception " + e.toString()); + } + } + static void f2d2f() + { + String msg = "float -> double -> float "; + + try { + float fvalue = 123.0f; + double dvalue = (double)fvalue; + float fvalue2 = (float)dvalue; + + if (fvalue != fvalue2) + failed(msg + fvalue + " != " + fvalue2 + " (double)" + dvalue); + else + passed(msg + fvalue + " == " + fvalue2 + " (double)" + dvalue); + } + catch (Exception e) + { + failed(msg + " : exception " + e.toString()); + } + } + static void f2l2f() + { + String msg = "float -> long -> float "; + + try { + float fvalue = 123.0f; + long lvalue = (long)fvalue; + float fvalue2 = (float)lvalue; + + if (fvalue != fvalue2) + failed(msg + fvalue + " != " + fvalue2 + " (long)" + lvalue); + else + passed(msg + fvalue + " == " + fvalue2 + " (long)" + lvalue); + } + catch (Exception e) + { + failed(msg + " : exception " + e.toString()); + } + } + static void d2f2d() + { + String msg = "double -> float -> double "; + + try { + double dvalue = 123.0; + float fvalue = (float)dvalue; + double dvalue2 = (double)fvalue; + if (dvalue != dvalue2) + failed(msg + dvalue + " != " + dvalue2 + " (float)" + fvalue); + else + passed(msg + dvalue + " == " + dvalue2 + " (float)" + fvalue); + } + catch (Exception e) + { + failed(msg + " : exception " + e.toString()); + } + } + static void l2d2l() + { + String msg = "long -> double -> long "; + + try { + long lvalue = 1023; + double dvalue = (double)lvalue; + long lvalue2 = (long)dvalue; + + if (lvalue != lvalue2) + failed(msg + lvalue + " != " + lvalue2 + " (double)" + dvalue); + else + passed(msg + lvalue + " == " + lvalue2 + " (double)" + dvalue); + } + catch (Exception e) + { + failed(msg + " : exception " + e.toString()); + } + } + static void d2l2d() + { + String msg = "double -> long -> double "; + + try { + double dvalue = 123.0; + long lvalue = (long)dvalue; + double dvalue2 = (double)lvalue; + if (dvalue != dvalue2) + failed(msg + dvalue + " != " + dvalue2 + " (long)" + lvalue); + else + passed(msg + dvalue + " == " + dvalue2 + " (long)" + lvalue); + } + catch (Exception e) + { + failed(msg + " : exception " + e.toString()); + } + } + static void passed(String msg) + { + System.out.println("PASSED: "+msg); + } + static void failed(String msg) + { + System.out.println("FAILED: "+msg); + } +} |