15d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao/* 25d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao * Copyright (C) 2007 The Android Open Source Project 35d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao * 45d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao * Licensed under the Apache License, Version 2.0 (the "License"); 55d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao * you may not use this file except in compliance with the License. 65d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao * You may obtain a copy of the License at 75d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao * 85d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao * http://www.apache.org/licenses/LICENSE-2.0 95d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao * 105d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao * Unless required by applicable law or agreed to in writing, software 115d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao * distributed under the License is distributed on an "AS IS" BASIS, 125d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 135d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao * See the License for the specific language governing permissions and 145d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao * limitations under the License. 155d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao */ 165d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao 175d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao/** 185d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao * Test math exceptions 195d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao */ 205d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhaopublic class Main { 2132412961b1c912faba30cdecd3560ab05e463807buzbee public static void math_014() { 225d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao int expectedThrows = 2; 235d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao int i; 245d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao long j; 255d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao float f = 0.0f; 265d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao double d = 0.0; 275d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao 285d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao try { i = 10 / 0; } 295d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao catch (ArithmeticException ae) { 305d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao expectedThrows--; 315d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao } 325d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao 335d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao try { j = 10L / 0L; } 345d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao catch (ArithmeticException ae) { 355d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao expectedThrows--; 365d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao } 375d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao 385d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao /* 395d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao * Floating point divide by zero doesn't throw an exception -- the 405d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao * result is just NaN. 415d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao */ 425d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao try { f = 10.0f / f; } 435d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao catch (ArithmeticException ae) { 445d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao expectedThrows--; 455d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao } 465d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao 475d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao try { d = 10.0 / d; } 485d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao catch (ArithmeticException ae) { 495d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao expectedThrows--; 505d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao } 515d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao 525d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao if (expectedThrows != 0) 535d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao System.out.println("HEY: expected throws is " + expectedThrows); 545d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao else 555d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao System.out.println("testMath3 success"); 565d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao } 5732412961b1c912faba30cdecd3560ab05e463807buzbee public static void main(String args[]) { 5832412961b1c912faba30cdecd3560ab05e463807buzbee math_014(); 5932412961b1c912faba30cdecd3560ab05e463807buzbee } 605d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao} 61