class_docstr: Tests of GAT class
class_docstr_tok: ["Tests","of","GAT","class"]
code: def test_gat_build_constructor(self):
      G = example_graph(feature_size=self.F_in)
      gen = FullBatchNodeGenerator(
          G, sparse=self.sparse, method=self.method
      )
      gat = GAT(
          layer_sizes=self.layer_sizes,
          activations=self.activations,
          attn_heads=self.attn_heads,
          generator=gen,
          bias=True,
      )
  
      assert len(gat.in_out_tensors()) == 2
      x_in, x_out = gat.in_out_tensors()
      assert len(x_in) == 4 if self.sparse else 3
      assert int(x_in[0].shape[-1]) == self.F_in
      assert K.int_shape(x_in[-1]) == (
          1,
          G.number_of_nodes(),
          G.number_of_nodes(),
      )
      assert int(x_out.shape[-1]) == self.layer_sizes[-1]
  
imports: import pytest
  import scipy.sparse
  import tensorflow
  from tensorflow import keras
  from tensorflow.keras import backend
  from tensorflow.keras.layers import Input
  from stellargraph.mapper import FullBatchNodeGenerator, FullBatchLinkGenerator, GraphSAGENodeGenerator
  from stellargraph.layer import *
  from ..test_utils.graphs import example_graph
  from ..None import test_utils
label_desc: Use image node_id 2 for calling the Test_GAT obj's underlying member method code with example usage: obj.test_gat_build_constructor() without return types