message: Skip checking devices in eager
  In eager mode, device attribute is not accurate. If the values are returned
  from a tf.function, their device attributes would be the device on which the
  function call happens, even though these return values can reside on different
  devices.
diff: @@ -537,6 +537,9 @@ class CollectiveOpsTest(test.TestCase, parameterized.TestCase):
  gathered_values = collective._gather(
  per_replica_value, per_replica_value, axis=axis)
  gathered_values = self.as_list(gathered_values)
  + # Skip checking devices in eager. In eager the device attribute doesn't
  + # reflect the actual device of the tensor.
  + if not context.executing_eagerly():
  self.assertAllEqual(devices, [v.device for v in gathered_values])
  return [ops.convert_to_tensor(v) for v in gathered_values]
  