function testTransaction_Write() {
  var actualExecutionOrder = [];
  var expectedExecutionOrder = [];

  var ids = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
  var queryTasks = ids.map(function(id) {
    var queryTask = new lf.testing.MockTask(
        lf.TransactionType.READ_WRITE,
        createScope(),
        function() {
          actualExecutionOrder.push('query' + id.toString());
        },
        lf.proc.TaskPriority.USER_QUERY_TASK);
    expectedExecutionOrder.push('query' + id.toString());
    return queryTask;
  });

  var promises = queryTasks.map(function(task) {
    return runner.scheduleTask(task);
  });

  return goog.Promise.all(promises).then(function() {
    assertArrayEquals(expectedExecutionOrder, actualExecutionOrder);
  });
}
Tests that multiple overlapping READ_WRITE transactions are executed in the
expected order.
@return {!IThenable}