code: def test_file_warning_features_logging(dummy_data, logging_file_path):
      fd = FeatureDescriptor(
          function=np.sum,
          series_name="EDA",
          window="5s",
          stride="2.5s",
      )
      fc = FeatureCollection(feature_descriptors=fd)
  
      assert not os.path.exists(logging_file_path)
  
      with warnings.catch_warnings(record=True) as w:
          with open(logging_file_path, "w"):
              pass
          assert os.path.exists(logging_file_path)
          # Sequential (n_jobs <= 1), otherwise file_path gets cleared
          _ = fc.calculate(
              dummy_data, logging_file_path=logging_file_path, n_jobs=1
          )
          assert os.path.exists(logging_file_path)
          assert len(w) == 1
          assert all(
              [issubclass(warn.category, RuntimeWarning) for warn in w]
          )
          assert "already exists" in str(w[0])
          # CLEANUP
          os.remove(logging_file_path)
  
file_path: tsflex/tests/test_features_logging.py
imports: import os
  import warnings
  import numpy
  from tsflex.features import FeatureCollection, FeatureDescriptor, MultipleFeatureDescriptors, get_feature_logs, get_function_stats, get_series_names_stats
  from tsflex.utils.data import flatten
  from .utils import dummy_data, logging_file_path
label_desc: Use image node_id 8 for calling a global function with example usage: test_file_warning_features_logging(dummy_data, logging_file_path) without return types