History

Added ExceptionsTest

Dmitry Kabak (userdima committed 13 years ago

Commit eff203a1 parent 489be662 files · +61 −1Browse files

Showing the changes to java/tests/ExceptionsTest.java (1 of 2 files). Show all

Unified · Split

java/tests/ExceptionsTest.java+59−0
@@ -0,0 +1,59 @@
1
2import static utils.Utils.*;
3
4public class ExceptionsTest {
5
6 public static void strictFunction(Integer arg) {
7 try {
8 int number = arg;
9 if (number < 0)
10 throw new IllegalArgumentException("we do not accept negatives");
11 System.out.println("Whee, strictFunction call is complete!");
12 }
13 catch (NullPointerException e) {
14 System.out.println("Null pointer exception caught: " + e.getMessage());
15 }
16 catch (IllegalArgumentException e) {
17 System.out.println("Illegal argument exception caught: " + e.getMessage());
18 if (arg == -42)
19 throw new RuntimeException("the negative answer is awful");
20 }
21 finally {
22 System.out.println("strictFunction finally");
23 if (arg != null && arg == 42)
24 throw new RuntimeException("the answer is not accepted");
25 }
26 }
27
28 public static void main(String[] args) {
29 System.out.println("Simple test");
30 System.out.println("Before exception");
31 try {
32 System.out.println("In try block");
33 throw new IllegalArgumentException();
34 }
35 catch (IllegalArgumentException e) {
36 System.out.println("Exception caught");
37 }
38 finally {
39 System.out.println("Clean up");
40 }
41 System.out.println("After exception");
42
43 System.out.println("Extendend test");
44 strictFunction(null);
45 strictFunction(-1);
46 try {
47 strictFunction(42);
48 }
49 catch (RuntimeException e) {
50 System.out.println("Runtime exception caught: " + e.getMessage());
51 }
52 try {
53 strictFunction(-42);
54 }
55 catch (RuntimeException e) {
56 System.out.println("Runtime exception caught: " + e.getMessage());
57 }
58 }
59}