text: # Copyright (c) OpenMMLab. All rights reserved.
  import platform
  
  import pytest
  import torch
  
  from mmaction.models import build_localizer
  from ..base import get_localizer_cfg
  
  
  @pytest.mark.skipif(platform.system() == 'Windows', reason='Windows mem limit')
  def test_tem():
      model_cfg = get_localizer_cfg(
          'bsn/bsn_tem_400x100_1x16_20e_activitynet_feature.py')
  
      localizer_tem = build_localizer(model_cfg.model)
      raw_feature = torch.rand(8, 400, 100)
      gt_bbox = torch.Tensor([[[1.0, 3.0], [3.0, 5.0]]] * 8)
      losses = localizer_tem(raw_feature, gt_bbox)
      assert isinstance(losses, dict)
  
      # Test forward test
      video_meta = [{'video_name': 'v_test'}]
      with torch.no_grad():
          for one_raw_feature in raw_feature:
              one_raw_feature = one_raw_feature.reshape(1, 400, 100)
              localizer_tem(
                  one_raw_feature, video_meta=video_meta, return_loss=False)
  