@Test public void () { Random rand = new Random(SEED); outputColumnVector = VectorizedRowGroupGenUtil.generate(, , BATCH_SIZE, rand); inputColumnVector = VectorizedRowGroupGenUtil.generate(, , BATCH_SIZE, rand); VectorizedRowBatch rowBatch = new VectorizedRowBatch(2, BATCH_SIZE); rowBatch.cols[0] = inputColumnVector; rowBatch.cols[1] = outputColumnVector; scalarValue = 0; do { scalarValue = rand.next(); } while(scalarValue == 0); vectorExpression = new (, 1); vectorExpression.evaluate(rowBatch); assertEquals( "Output column vector is repeating state does not match operand column", inputColumnVector.isRepeating, outputColumnVector.isRepeating); assertEquals( "Output column vector no nulls state does not match operand column", inputColumnVector.noNulls, outputColumnVector.noNulls); if(!outputColumnVector.noNulls && !outputColumnVector.isRepeating) { for(int i = 0; i < BATCH_SIZE; i++) { //null vectors are safe to check, as they are always initialized to match the data vector assertEquals("Output vector doesn't match input vector's is null state for index", inputColumnVector.isNull[i], outputColumnVector.isNull[i]); } } }