code: def test():
      model.eval()
  
      out = model.inference(x)
  
      y_true = y.cpu().unsqueeze(-1)
      y_pred = out.argmax(dim=-1, keepdim=True)
  
      results = []
      for mask in [data.train_mask, data.val_mask, data.test_mask]:
          results += [
              int(y_pred[mask].eq(y_true[mask]).sum()) / int(mask.sum())
          ]
  
      return results
  
imports: import argparse
  import os.path
  import time
  import torch
  import torch.nn.functional
  from tqdm import tqdm
  from torch_geometric.datasets import Reddit, Reddit2
  from torch_geometric.nn.conv import MessagePassing
  from torch.nn import Linear
  from torch import Tensor
  from logger import Logger
  from torch_geometric.data import NeighborSampler
label_desc: Use image node_id 2 for calling a global function with example usage: test() and returns: results