Fix remote sd card mocks.
This commit is contained in:
parent
07f601694d
commit
06c9d68390
@ -78,9 +78,7 @@ class RemoteSDCardFileList:
|
||||
existing_files.append(file_info.file_name)
|
||||
|
||||
def _get_existing_files_info(self):
|
||||
host = self._settings.get(["host"])
|
||||
access_code = self._settings.get(["access_code"])
|
||||
ftp = IoTFTPSClient(str(host), 990, "bblp", str(access_code), ssl_implicit=True)
|
||||
ftp = self._connect_ftps_server()
|
||||
|
||||
all_files_info: list[FileInfo] = []
|
||||
existing_files = []
|
||||
@ -95,6 +93,12 @@ class RemoteSDCardFileList:
|
||||
|
||||
return all_files_info
|
||||
|
||||
def _connect_ftps_server(self):
|
||||
host = self._settings.get(["host"])
|
||||
access_code = self._settings.get(["access_code"])
|
||||
ftp = IoTFTPSClient(str(host), 990, "bblp", str(access_code), ssl_implicit=True)
|
||||
return ftp
|
||||
|
||||
def _get_file_data(self, file_path: str) -> FileInfo | None:
|
||||
self._logger.debug(f"_getSdFileData: {file_path}")
|
||||
file_name = Path(file_path).name.lower()
|
||||
|
@ -1,15 +1,20 @@
|
||||
from __future__ import annotations
|
||||
from collections.abc import Callable
|
||||
from datetime import datetime, timezone
|
||||
import logging
|
||||
from pathlib import Path
|
||||
import time
|
||||
from typing import Any
|
||||
import unittest
|
||||
from unittest.mock import MagicMock
|
||||
import unittest.mock
|
||||
|
||||
from octoprint_bambu_printer.bambu_print_plugin import BambuPrintPlugin
|
||||
from octoprint_bambu_printer.printer.bambu_virtual_printer import BambuVirtualPrinter
|
||||
from octoprint_bambu_printer.printer.remote_sd_card_file_list import FileInfo
|
||||
from octoprint_bambu_printer.printer.remote_sd_card_file_list import (
|
||||
FileInfo,
|
||||
RemoteSDCardFileList,
|
||||
)
|
||||
from octoprint_bambu_printer.printer.states.idle_state import IdleState
|
||||
from octoprint_bambu_printer.printer.states.paused_state import PausedState
|
||||
from octoprint_bambu_printer.printer.states.print_finished_state import (
|
||||
@ -33,11 +38,11 @@ def log_test():
|
||||
|
||||
class DictGetter:
|
||||
def __init__(self, options: dict) -> None:
|
||||
self._options = options
|
||||
self._options: dict[str | tuple[str, ...], Any] = options
|
||||
|
||||
def __call__(self, key: str | list[str]):
|
||||
def __call__(self, key: str | list[str] | tuple[str, ...]):
|
||||
if isinstance(key, list):
|
||||
key = "_".join(key)
|
||||
key = tuple(key)
|
||||
return self._options.get(key, None)
|
||||
|
||||
|
||||
@ -96,13 +101,19 @@ def ftps_session_mock(files_info_ftp):
|
||||
)
|
||||
|
||||
all_files = list(files_info_ftp.keys())
|
||||
ftps_client_mock.list_files.side_effect = DictGetter(
|
||||
file_registry = DictGetter(
|
||||
{
|
||||
("", ".3mf"): all_files,
|
||||
("cache/", ".3mf"): [f"cache/{file}" for file in all_files],
|
||||
}
|
||||
)
|
||||
ftps_client_mock.list_files.side_effect = lambda folder, ext: file_registry(
|
||||
(folder, ext)
|
||||
)
|
||||
ftps_client_mock.ftps_session = ftps_session
|
||||
RemoteSDCardFileList._connect_ftps_server = MagicMock(
|
||||
return_value=ftps_client_mock
|
||||
)
|
||||
yield
|
||||
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user