code: def test_basic_flow_multi_input(self):
      input_a = Input(shape=(3,), batch_size=2, name="input_a")
      input_b = Input(shape=(3,), batch_size=2, name="input_b")
      x = input_a + input_b
      x = layers.Dense(5)(x)
      outputs = layers.Dense(4)(x)
      model = Functional([input_a, input_b], outputs, name="basic")
      model.summary()
  
      self.assertEqual(model.name, "basic")
      self.assertIsInstance(model, Functional)
      self.assertIsInstance(model, Model)
  
      # Eager call
      in_val = [np.random.random((2, 3)), np.random.random((2, 3))]
      out_val = model(in_val)
      self.assertEqual(out_val.shape, (2, 4))
  
      # Symbolic call
      input_a_2 = Input(shape=(3,), batch_size=2, name="input_a_2")
      input_b_2 = Input(shape=(3,), batch_size=2, name="input_b_2")
      in_val = [input_a_2, input_b_2]
      out_val = model(in_val)
      self.assertEqual(out_val.shape, (2, 4))
  
imports: import warnings
  import numpy
  import pytest
  from keras import backend
  from keras import layers
  from keras import testing
  from keras.layers.core.input_layer import Input
  from keras.layers.input_spec import InputSpec
  from keras.models import Functional
  from keras.models import Model
label_desc: Use image node_id 1 for calling the FunctionalTest obj's underlying member method code with example usage: obj.test_basic_flow_multi_input() without return types