class_docstr: Tests for tf2_utils.create_variables method.
code: def test_multiple_outputs(self):
      model = PolicyValueHead(42)
      input_spec = specs.Array(shape=(10,), dtype=np.float32)
      expected_spec = (
          tf.TensorSpec(shape=(42,), dtype=tf.float32),
          tf.TensorSpec(shape=(), dtype=tf.float32),
      )
      output_spec = tf2_utils.create_variables(model, [input_spec])
      variables: Sequence[tf.Variable] = model.variables
      shapes = [v.shape.as_list() for v in variables]
      self.assertSequenceEqual(shapes, [[42], [10, 42], [1], [10, 1]])
      self.assertSequenceEqual(output_spec, expected_spec)
  
imports: from typing import Sequence, Tuple
  from acme import specs
  from acme.tf import utils
  import numpy
  import sonnet
  import tensorflow
  from absl.testing import absltest
  from absl.testing import parameterized
label_desc: Use image node_id 3 for calling the CreateVariableTest obj's underlying member method code with example usage: obj.test_multiple_outputs() without return types