Example #1
0
  @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);
  }