code: def test_skim_streaming():
      SEQ_LEN = 100
      num_spk = 2
      BS = 2
      separator = SkiMSeparator(
          input_dim=128,
          causal=True,
          num_spk=2,
          layer=2,
          unit=32,
          segment_size=100,
      )
      separator.eval()
      input_feature = torch.randn((BS, SEQ_LEN, 128))
      ilens = torch.LongTensor([SEQ_LEN] * BS)
      with torch.no_grad():
          seq_output, _, _ = separator.forward(
              input_feature, ilens=ilens
          )
  
          state = None
          stream_outputs = []
          for i in range(SEQ_LEN):
              frame = input_feature[:, i : i + 1, :]
              frame_out, state, _ = separator.forward_streaming(
                  frame, state
              )
              stream_outputs.append(frame_out)
          for i in range(SEQ_LEN):
              for s in range(num_spk):
                  torch.testing.assert_allclose(
                      stream_outputs[i][s],
                      seq_output[s][:, i : i + 1, :],
                  )
  
file_path: espnet/test/espnet2/enh/separator/test_skim_separator.py
imports: import pytest
  import torch
  from torch import Tensor
  from torch_complex import ComplexTensor
  from espnet2.enh.separator.skim_separator import SkiMSeparator
label_desc: Use image node_id 5 for calling a global function with example usage: test_skim_streaming() without return types