code: def test_roc_auc_metric(
      preds: torch.Tensor, target: torch.Tensor, output: torch.Tensor
  ):
      metric = metric_modules.BinaryAUROCMetric(task="binary")
      with metric.sync_context():
          metric.update(preds, target)
          assert output == metric.compute()
  
imports: import pytest
  import torch
  from ludwig.distributed import init_dist_strategy
  from ludwig.modules import metric_modules
  from ludwig.schema.features.loss.loss import BWCEWLossConfig, SigmoidCrossEntropyLossConfig, SoftmaxCrossEntropyLossConfig
label_desc: Use image node_id 2 for calling a global function with example usage: test_roc_auc_metric(preds, target, output) without return types