code: def test_weighted_avg_update_fused(self) -> None:
      rec_metric_value_test_launcher(
          target_clazz=WeightedAvgMetric,
          target_compute_mode=RecComputeMode.UNFUSED_TASKS_COMPUTATION,
          test_clazz=TestWeightedAvgMetric,
          metric_name=WeightedAvgMetricTest.task_name,
          task_names=["t1", "t2", "t3"],
          fused_update_limit=5,
          compute_on_all_ranks=False,
          should_validate_update=False,
          world_size=WORLD_SIZE,
          entry_point=metric_test_helper,
      )
  
      rec_metric_value_test_launcher(
          target_clazz=WeightedAvgMetric,
          target_compute_mode=RecComputeMode.UNFUSED_TASKS_COMPUTATION,
          test_clazz=TestWeightedAvgMetric,
          metric_name=WeightedAvgMetricTest.task_name,
          task_names=["t1", "t2", "t3"],
          fused_update_limit=100,
          compute_on_all_ranks=False,
          should_validate_update=False,
          world_size=WORLD_SIZE,
          entry_point=metric_test_helper,
          batch_window_size=10,
      )
  
file_path: torchrec/torchrec/metrics/tests/test_weighted_avg.py
imports: import unittest
  from typing import Dict, Iterable, Optional, Type, Union
  import torch
  from torchrec.metrics.rec_metric import RecComputeMode, RecMetric, RecTaskInfo
  from torchrec.metrics.test_utils import metric_test_helper, rec_metric_value_test_launcher, TestMetric
  from torchrec.metrics.weighted_avg import get_mean, WeightedAvgMetric
label_desc: Use image node_id 3 for calling the WeightedAvgMetricTest obj's underlying member method code with example usage: obj.test_weighted_avg_update_fused() without return types