@Test public void testExceptionsinLifeCycleMethods() { LifeCycle lc = new LifeCycle(); lc.foo = "bar"; lc.bar = "xx"; lc.addFail = true; try { lc.save(); } catch (Exception e) { // ignore } assertTrue(lc.isNew()); lc.addFail = false; lc.addedFail = true; try { lc.save(); assertFalse(true); } catch (Exception e) { // ignore } assertFalse(lc.isNew()); lc.addedFail = false; lc.bar = "yy"; lc.updateFail = true; try { lc.save(); } catch (Exception e) { // ignore } LifeCycle lc1 = LifeCycle.q("foo", "bar").get(); assertFalse(lc1.bar.equals(lc.bar)); lc.updateFail = false; lc.updatedFail = true; try { lc.save(); assertFalse(true); } catch (Exception e) { // ignore } lc1 = LifeCycle.q("foo", "bar").get(); assertEquals(lc1.bar, lc.bar); lc.updatedFail = false; LifeCycle.loadFail = true; LifeCycle lc2 = null; try { lc2 = LifeCycle.q("foo", "bar").get(); } catch (Exception e) { // ignore } assertNull(lc2); LifeCycle.loadFail = false; LifeCycle.loadedFail = true; try { lc2 = LifeCycle.q("foo", "bar").get(); assertFalse(true); } catch (Exception e) { // ignore } assertNull(lc2); lc.deleteFail = true; try { lc.delete(); } catch (Exception e) { // ignore } assertTrue(LifeCycle.q("foo", "bar").count() > 0); lc.deleteFail = false; lc.deletedFail = true; try { lc.delete(); assertFalse(true); } catch (Exception e) { // ignore } assertTrue(LifeCycle.q("foo", "bar").count() == 0); }