| 39 | public class GoogleReports { |
| 40 | |
| 41 | @Test |
| 42 | @SuppressWarnings({"ConstantIfStatement"}) |
| 43 | public void while_loop() throws Exception { |
| 44 | int loopCount = 0; |
| 45 | do { |
| 46 | loopCount++; |
| 47 | if (loopCount > 100) { |
| 48 | break; |
| 49 | } |
| 50 | if (true) { |
| 51 | continue; |
| 52 | } |
| 53 | } while (false); |
| 54 | assertEquals(1, loopCount); |
| 55 | loopCount = (Integer) eval("int loopCount = 0;", "do{", " loopCount++;", " if (loopCount > 100) break;", " if (true) continue;", "} while (false);", "return loopCount"); |
| 56 | assertEquals(1, loopCount); |
| 57 | loopCount = (Integer) eval("int loopCount = 0;", "while (loopCount < 1) {", " loopCount++;", " if (loopCount > 100) return loopCount;", " if (true) continue;", "}", "return loopCount"); |
| 58 | assertEquals(1, loopCount); |
| 59 | assertEquals(Boolean.TRUE, eval("while(true) { break; return false; } return true;")); |
| 60 | assertEquals(Boolean.TRUE, eval("do { break; return false; } while(true); return true;")); |
| 61 | loopCount = (Integer) eval("int loopCount = 0;", "while (++loopCount < 2);", "return loopCount"); |
| 62 | assertEquals(2, loopCount); |
| 63 | loopCount = (Integer) eval("int loopCount = 0;", "do { } while (++loopCount < 2);", "return loopCount"); |
| 64 | assertEquals(2, loopCount); |
| 65 | } |
| 66 | |
| 67 | |
| 68 | /** |