You should restructure these. We discourage the use of expectAsync just to force test completion blocking; it really is meant as an assertion mechanism about callbacks. Instead use:

  return table.location.then((location) {
      ...
     return invisible.location.then((location) {
        ...
    });
  });