| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 | import osimport shutilfrom pathlib import Pathfrom unittest.mock import MagicMock, mock_open, patchimport pytestfrom _pytest.monkeypatch import MonkeyPatchfrom tests.unit_tests.oss.__mock.base import (    get_example_data,    get_example_filename,    get_example_filepath,    get_example_folder,)class MockLocalFSClass:    def write_bytes(self, data):        assert data == get_example_data()    def read_bytes(self):        return get_example_data()    @staticmethod    def copyfile(src, dst):        assert src == os.path.join(get_example_folder(), get_example_filename())        assert dst == get_example_filepath()    @staticmethod    def exists(path):        assert path == os.path.join(get_example_folder(), get_example_filename())        return True    @staticmethod    def remove(path):        assert path == os.path.join(get_example_folder(), get_example_filename())MOCK = os.getenv("MOCK_SWITCH", "false").lower() == "true"@pytest.fixturedef setup_local_fs_mock(monkeypatch: MonkeyPatch):    if MOCK:        monkeypatch.setattr(Path, "write_bytes", MockLocalFSClass.write_bytes)        monkeypatch.setattr(Path, "read_bytes", MockLocalFSClass.read_bytes)        monkeypatch.setattr(shutil, "copyfile", MockLocalFSClass.copyfile)        monkeypatch.setattr(os.path, "exists", MockLocalFSClass.exists)        monkeypatch.setattr(os, "remove", MockLocalFSClass.remove)        os.makedirs = MagicMock()        with patch("builtins.open", mock_open(read_data=get_example_data())):            yield    if MOCK:        monkeypatch.undo()
 |