@Test
	public void testEqualForIntAndDouble() {
		Context c = new Context();
		DataFactory factory = new DataFactory();
		IVPNumber a = factory.createIVPNumber();
		IVPNumber b = factory.createIVPNumber();
		GreaterThan gt = factory.createGreaterThan();
		gt.setExpressionA(a.getUniqueID());
		gt.setExpressionB(b.getUniqueID());

		a.setValueType(IVPValue.DOUBLE_TYPE);
		b.setValueType(IVPValue.INTEGER_TYPE);

		c.addDouble(a.getUniqueID(), 3.0001);
		c.addInt(b.getUniqueID(), 3);

		HashMap map = new HashMap();
		map.put(a.getUniqueID(), a);
		map.put(b.getUniqueID(), b);
		map.put(gt.getUniqueID(), gt);

		IVPBoolean result = (IVPBoolean) gt.evaluate(c, map, factory);
		assertTrue(c.getBoolean(result.getUniqueID()));
		b.updateIntegerValue(c, 2);
		result = (IVPBoolean) gt.evaluate(c, map, factory);
		assertTrue(c.getBoolean(result.getUniqueID()));
	}