@Test
	public void varReceivesBooleanExpression() {
		Context c = new Context();
		DataFactory factory = new DataFactory();

		IVPBoolean n1 = factory.createIVPBoolean();
		n1.setValueType(IVPValue.BOOLEAN_TYPE);
		c.addBoolean(n1.getUniqueID(), new Boolean("true"));

		IVPBoolean n2 = factory.createIVPBoolean();
		n2.setValueType(IVPValue.BOOLEAN_TYPE);
		c.addBoolean(n2.getUniqueID(), new Boolean("false"));

		IVPVariable v1 = factory.createIVPVariable();
		v1.setVariableType(IVPValue.BOOLEAN_TYPE);
		v1.setValueID(n1.getUniqueID());

		And and = factory.createAnd();
		and.setExpressionA(n1.getUniqueID());
		and.setExpressionB(n2.getUniqueID());

		// Supondo varivel j inicializada com o valor 10.

		AttributionLine attLine = factory.createAttributionLine();
		attLine.setVariable(v1.getUniqueID());
		attLine.setExpression(and.getUniqueID());

		HashMap map = new HashMap();
		map.put(and.getUniqueID(), and);
		map.put(v1.getUniqueID(), v1);
		map.put(n1.getUniqueID(), n1);
		map.put(n2.getUniqueID(), n2);
		map.put(attLine.getUniqueID(), attLine);

		assertTrue(c.getBoolean(v1.getValueID()));
		attLine.evaluate(c, map, factory);
		assertFalse(c.getBoolean(v1.getValueID()));
	}