code: def test_PPNP_apply_dense():
      G, features = create_graph_features()
      adj = G.to_adjacency_matrix()
      features, adj = PPNP_Aadj_feats_op(features, adj)
      adj = adj[None, :, :]
  
      generator = FullBatchNodeGenerator(G, sparse=False, method="ppnp")
      ppnpModel = PPNP(
          [2], generator=generator, activations=["relu"], dropout=0.5
      )
  
      x_in, x_out = ppnpModel.in_out_tensors()
      model = keras.Model(inputs=x_in, outputs=x_out)
  
      # Check fit method
      out_indices = np.array([[0, 1]], dtype="int32")
      preds_1 = model.predict([features[None, :, :], out_indices, adj])
      assert preds_1.shape == (1, 2, 2)
  
      # Check fit method
      preds_2 = model.predict(generator.flow(["a", "b"]))
      assert preds_2.shape == (1, 2, 2)
  
      assert preds_1 == pytest.approx(preds_2)
  
file_path: stellargraph/tests/layer/test_ppnp.py
imports: from stellargraph.layer import PPNP
  from stellargraph.mapper import FullBatchNodeGenerator, FullBatchLinkGenerator
  from stellargraph import StellarGraph
  from stellargraph.core.utils import PPNP_Aadj_feats_op
  import networkx
  import pandas
  import numpy
  from tensorflow import keras
  import pytest
  from ..test_utils.graphs import create_graph_features
  from ..None import test_utils
label_desc: Use image node_id 2 for calling a global function with example usage: test_PPNP_apply_dense() without return types