code: def testConcatenateTwoEmptyDatasets(self):
      input_dataset = dataset_ops.Dataset.from_tensor_slices([])
      concatenate_dataset = dataset_ops.Dataset.from_tensor_slices([])
      concatenated = input_dataset.concatenate(concatenate_dataset)
      with self.assertRaises(errors.OutOfRangeError):
          self.evaluate(random_access.at(concatenated, index=0))
  
imports: from absl.testing import parameterized
  import numpy
  from tensorflow.python.data.experimental.ops import random_access
  from tensorflow.python.data.kernel_tests import checkpoint_test_base
  from tensorflow.python.data.kernel_tests import test_base
  from tensorflow.python.data.ops import dataset_ops
  from tensorflow.python.data.ops import options
  from tensorflow.python.data.util import nest
  from tensorflow.python.framework import combinations
  from tensorflow.python.framework import errors
  from tensorflow.python.framework import tensor_shape
  from tensorflow.python.platform import test
label_desc: Use image node_id 2 for calling the ConcatenateRandomAccessTest obj's underlying member method code with example usage: obj.testConcatenateTwoEmptyDatasets() without return types