@Test
public void log_null_missing() {

  FunctionExpression log = dsl.log(
      DSL.ref(DOUBLE_TYPE_NULL_VALUE_FIELD, DOUBLE),
      DSL.ref(DOUBLE_TYPE_MISSING_VALUE_FIELD, DOUBLE));
  assertEquals(DOUBLE, log.type());
  assertTrue(log.valueOf(valueEnv()).isMissing());
  log = dsl.log(
      DSL.ref(DOUBLE_TYPE_MISSING_VALUE_FIELD, DOUBLE),
      DSL.ref(DOUBLE_TYPE_NULL_VALUE_FIELD, DOUBLE));
  assertEquals(DOUBLE, log.type());
  assertTrue(log.valueOf(valueEnv()).isMissing());
}