@Test
public void testResolveCalculatedTypes()
{
Signature function = new Signature(
"function",
SCALAR,
ImmutableList.of(),
BooleanType.BOOLEAN.getTypeSignature(),
ImmutableList.of(varcharX, varcharY),
false);
TypeSignature varchar42 = createVarcharType(42).getTypeSignature();
TypeSignature varchar44 = createVarcharType(44).getTypeSignature();
TypeSignature varchar = new TypeSignature(StandardTypes.VARCHAR, ImmutableList.of());
assertEquals(
function.resolveCalculatedTypes(ImmutableList.of(varchar42, varchar44)).getArgumentTypes(),
ImmutableList.of(varchar42, varchar44));
assertEquals(
function.resolveCalculatedTypes(ImmutableList.of(UNKNOWN.getTypeSignature(), varchar44)).getArgumentTypes(),
ImmutableList.of(varchar, varchar44));
}