code: def test_fidelity_curve_auc():
      pos_fidelity = torch.tensor([1.0, 1.0, 0.5, 1.0])
      neg_fidelity = torch.tensor([0.0, 0.5, 0.5, 0.9])
  
      x = torch.tensor([0, 1, 2, 3])
      out = round(
          float(fidelity_curve_auc(pos_fidelity, neg_fidelity, x)), 4
      )
      assert out == 8.5
  
      x = torch.tensor([10, 11, 12, 13])
      out = round(
          float(fidelity_curve_auc(pos_fidelity, neg_fidelity, x)), 4
      )
      assert out == 8.5
  
      x = torch.tensor([0, 1, 2, 5])
      out = round(
          float(fidelity_curve_auc(pos_fidelity, neg_fidelity, x)), 4
      )
      assert out == 19.5
  
file_path: pytorch_geometric/test/explain/metric/test_fidelity.py
imports: import pytest
  import torch
  from torch_geometric.explain import DummyExplainer, Explainer, characterization_score, fidelity, fidelity_curve_auc
label_desc: Use image node_id 3 for calling a global function with example usage: test_fidelity_curve_auc() without return types