code: def test_dense_gat_conv_with_broadcasting():
      batch_size, num_nodes, channels = 8, 3, 16
      conv = DenseGATConv(channels, channels, heads=4)
  
      x = torch.randn(batch_size, num_nodes, channels)
      adj = torch.tensor(
          [
              [0.0, 1.0, 1.0],
              [1.0, 0.0, 1.0],
              [1.0, 1.0, 0.0],
          ]
      )
  
      assert conv(x, adj).size() == (batch_size, num_nodes, 64)
      mask = torch.tensor([1, 1, 1], dtype=torch.bool)
      assert conv(x, adj, mask).size() == (batch_size, num_nodes, 64)
  
imports: import pytest
  import torch
  from torch_geometric.nn import DenseGATConv, GATConv
  from torch_geometric.testing import is_full_test
label_desc: Use image node_id 2 for calling a global function with example usage: test_dense_gat_conv_with_broadcasting() without return types