diff --git a/b2/_internal/b2v3/registry.py b/b2/_internal/b2v3/registry.py index 1288a27b8..19847711f 100644 --- a/b2/_internal/b2v3/registry.py +++ b/b2/_internal/b2v3/registry.py @@ -10,6 +10,7 @@ # ruff: noqa: F405 from b2._internal._b2v4.registry import * # noqa +from .rm import Rm class Ls(B2URIBucketNFolderNameArgMixin, BaseLs): @@ -17,11 +18,6 @@ class Ls(B2URIBucketNFolderNameArgMixin, BaseLs): # TODO: fix doc -class Rm(B2URIBucketNFolderNameArgMixin, BaseRm): - __doc__ = BaseRm.__doc__ - # TODO: fix doc - - B2.register_subcommand(AuthorizeAccount) B2.register_subcommand(CancelAllUnfinishedLargeFiles) B2.register_subcommand(CancelLargeFile) diff --git a/b2/_internal/b2v3/rm.py b/b2/_internal/b2v3/rm.py new file mode 100644 index 000000000..fac93ca83 --- /dev/null +++ b/b2/_internal/b2v3/rm.py @@ -0,0 +1,19 @@ +###################################################################### +# +# File: b2/_internal/b2v3/rm.py +# +# Copyright 2023 Backblaze Inc. All Rights Reserved. +# +# License https://www.backblaze.com/using_b2_code.html +# +###################################################################### +from __future__ import annotations + +from b2._internal._b2v4.registry import B2URIBucketNFolderNameArgMixin, BaseRm + + +# NOTE: We need to keep v3 Rm in separate file, because we need to import it in +# unit tests without registering any commands. +class Rm(B2URIBucketNFolderNameArgMixin, BaseRm): + __doc__ = BaseRm.__doc__ + # TODO: fix doc diff --git a/test/unit/test_console_tool.py b/test/unit/test_console_tool.py index 5bd8d9728..dfc5f7f64 100644 --- a/test/unit/test_console_tool.py +++ b/test/unit/test_console_tool.py @@ -32,12 +32,13 @@ from b2sdk.v2.exception import Conflict # Any error for testing fast-fail of the rm command. from more_itertools import one +from b2._internal._b2v4.registry import Rm as v4Rm from b2._internal._cli.const import ( B2_APPLICATION_KEY_ENV_VAR, B2_APPLICATION_KEY_ID_ENV_VAR, B2_ENVIRONMENT_ENV_VAR, ) -from b2._internal.console_tool import Rm +from b2._internal.b2v3.rm import Rm as v3Rm from b2._internal.version import VERSION from .test_base import TestBase @@ -2515,8 +2516,11 @@ class InstantReporter(ProgressReport): @classmethod def setUpClass(cls) -> None: - cls.original_progress_class = Rm.PROGRESS_REPORT_CLASS - Rm.PROGRESS_REPORT_CLASS = cls.InstantReporter + cls.original_v3_progress_class = v3Rm.PROGRESS_REPORT_CLASS + cls.original_v4_progress_class = v4Rm.PROGRESS_REPORT_CLASS + + v3Rm.PROGRESS_REPORT_CLASS = cls.InstantReporter + v4Rm.PROGRESS_REPORT_CLASS = cls.InstantReporter def setUp(self): super().setUp() @@ -2529,7 +2533,8 @@ def setUp(self): @classmethod def tearDownClass(cls) -> None: - Rm.PROGRESS_REPORT_CLASS = cls.original_progress_class + v3Rm.PROGRESS_REPORT_CLASS = cls.original_v3_progress_class + v4Rm.PROGRESS_REPORT_CLASS = cls.original_v4_progress_class def test_rm_wildcard(self): self._run_command(