@Test
public void testExpression_ExpressionWithVariable() {

  final JBBPNamedFieldInfo info = new JBBPNamedFieldInfo("hello", "hello", 0);
  final byte[] compiled = new byte[] {JBBPCompiler.CODE_INT | JBBPCompiler.FLAG_NAMED};
  final List<JBBPNamedFieldInfo> list = Collections.singletonList(info);
  JBBPExpressionEvaluator expr = new JBBPExpressionEvaluator("2*hello*6/4+3*2-11%3&hello-~hello", list, compiled);
  final JBBPNamedNumericFieldMap map = new JBBPNamedNumericFieldMap();
  map.putField(new JBBPFieldInt(info, 8));
  assertEquals(2 * 8 * 6 / 4 + 3 * 2 - 11 % 3 & 8 - ~8, expr.eval(null, 0, JBBPCompiledBlock.prepare().setCompiledData(compiled).setNamedFieldData(list).setSource("no source").build(), map));
}