code: def test_log_content(self, get_operation_processor):
      # given
      wait = self._random_wait()
      path = self._random_path()
      processor = MagicMock()
      get_operation_processor.return_value = processor
  
      with self._exp() as exp:
          attr = FileSeries(exp, path)
  
          file = File.as_image(numpy.random.rand(10, 10) * 255)
  
          # when
          attr.log(
              file,
              step=3,
              timestamp=self._now(),
              wait=wait,
              name="nazwa",
              description="opis",
          )
  
          # then
          processor.enqueue_operation.assert_called_with(
              LogImages(
                  path,
                  [
                      LogImages.ValueType(
                          ImageValue(
                              base64_encode(file.content),
                              "nazwa",
                              "opis",
                          ),
                          3,
                          self._now(),
                      )
                  ],
              ),
              wait=wait,
          )
  
imports: import io
  from unittest import mock
  import numpy
  import pytest
  from mock import MagicMock, call, patch
  from neptune.attributes.series.file_series import FileSeries
  from neptune.exceptions import OperationNotSupported
  from neptune.internal.operation import ClearImageLog, ImageValue, LogImages
  from neptune.internal.utils import base64_encode
  from neptune.types import File
  from tests.unit.neptune.new.attributes.test_attribute_base import TestAttributeBase
  from tests.unit.neptune.new.utils.file_helpers import create_file
label_desc: Use image node_id 3 for calling the TestFileSeries obj's underlying member method code with example usage: obj.test_log_content(get_operation_processor) without return types