public void testCInt() { assertEquals(1, Vba.cInt(1)); assertEquals(1, Vba.cInt(1.4)); // CInt rounds to the nearest even number assertEquals(2, Vba.cInt(1.5)); assertEquals(2, Vba.cInt(2.5)); assertEquals(2, Vba.cInt(1.6)); assertEquals(-1, Vba.cInt(-1.4)); assertEquals(-2, Vba.cInt(-1.5)); assertEquals(-2, Vba.cInt(-1.6)); assertEquals(Integer.MAX_VALUE, Vba.cInt((double) Integer.MAX_VALUE)); assertEquals(Integer.MIN_VALUE, Vba.cInt((double) Integer.MIN_VALUE)); assertEquals(Short.MAX_VALUE, Vba.cInt(((float) Short.MAX_VALUE) + .4)); assertEquals(Short.MIN_VALUE, Vba.cInt(((float) Short.MIN_VALUE) + .4)); try { Object o = Vba.cInt("a"); fail("expected error, got " + o); } catch (RuntimeException e) { assertMessage(e, "NumberFormatException"); } }