function checkJoinPredicate_RelationsInputOrder(
    employeeSchema, jobSchema, evalFn) {
  var sampleEmployee =
      lf.testing.hrSchemaSampleData.generateSampleEmployeeData(db);
  var sampleJob =
      lf.testing.hrSchemaSampleData.generateSampleJobData(db);

  var employeeRelation = lf.proc.Relation.fromRows(
      [sampleEmployee], [employeeSchema.getEffectiveName()]);
  var jobRelation = lf.proc.Relation.fromRows(
      [sampleJob], [jobSchema.getEffectiveName()]);

  var joinPredicate = employeeSchema.jobId.eq(jobSchema.id);
  var result1 = evalFn.call(
      joinPredicate, employeeRelation, jobRelation, false);
  var result2 = evalFn.call(
      joinPredicate, jobRelation, employeeRelation, false);

  assertEquals(1, result1.entries.length);
  assertEquals(1, result2.entries.length);
  assertEquals(
      sampleEmployee.payload().id,
      result1.entries[0].getField(employeeSchema.id));
  assertEquals(
      sampleEmployee.payload().id,
      result2.entries[0].getField(employeeSchema.id));
  assertEquals(
      sampleJob.payload().id,
      result1.entries[0].getField(jobSchema.id));
  assertEquals(
      sampleJob.payload().id,
      result2.entries[0].getField(jobSchema.id));
}
Tests that evalRelations() will detect which input relation should be used as
"left" and which as "right" independently of the input order.
@param {!hr.db.schema.Employee} employeeSchema
@param {!hr.db.schema.Job} jobSchema
@param {!function(!lf.proc.Relation, !lf.proc.Relation, boolean)
    :!lf.proc.Relation} evalFn The join implementation method should be
    either evalRelationsNestedLoopJoin or evalRelationsHashJoin.