[v2,4/8] dts: remove module-wide imports
Checks
Commit Message
Remove the imports in the testbed_model and remote_session modules init
file, to avoid the initialisation of unneeded modules, thus removing or
limiting the risk of circular dependencies.
Signed-off-by: Luca Vizzarro <luca.vizzarro@arm.com>
Reviewed-by: Paul Szczepanek <paul.szczepanek@arm.com>
---
dts/framework/remote_session/__init__.py | 5 +----
dts/framework/runner.py | 4 +++-
dts/framework/test_suite.py | 5 ++++-
dts/framework/testbed_model/__init__.py | 7 -------
dts/framework/testbed_model/os_session.py | 4 ++--
dts/framework/testbed_model/sut_node.py | 2 +-
dts/framework/testbed_model/traffic_generator/scapy.py | 2 +-
dts/tests/TestSuite_hello_world.py | 2 +-
dts/tests/TestSuite_smoke_tests.py | 2 +-
9 files changed, 14 insertions(+), 19 deletions(-)
Comments
Tested-by: Nicholas Pratte <npratte@iol.unh.edu>
Reviewed-by: Nicholas Pratte <npratte@iol.unh.edu>
On Thu, May 9, 2024 at 7:21 AM Luca Vizzarro <luca.vizzarro@arm.com> wrote:
>
> Remove the imports in the testbed_model and remote_session modules init
> file, to avoid the initialisation of unneeded modules, thus removing or
> limiting the risk of circular dependencies.
>
> Signed-off-by: Luca Vizzarro <luca.vizzarro@arm.com>
> Reviewed-by: Paul Szczepanek <paul.szczepanek@arm.com>
> ---
> dts/framework/remote_session/__init__.py | 5 +----
> dts/framework/runner.py | 4 +++-
> dts/framework/test_suite.py | 5 ++++-
> dts/framework/testbed_model/__init__.py | 7 -------
> dts/framework/testbed_model/os_session.py | 4 ++--
> dts/framework/testbed_model/sut_node.py | 2 +-
> dts/framework/testbed_model/traffic_generator/scapy.py | 2 +-
> dts/tests/TestSuite_hello_world.py | 2 +-
> dts/tests/TestSuite_smoke_tests.py | 2 +-
> 9 files changed, 14 insertions(+), 19 deletions(-)
>
> diff --git a/dts/framework/remote_session/__init__.py b/dts/framework/remote_session/__init__.py
> index 1910c81c3c..29000a4642 100644
> --- a/dts/framework/remote_session/__init__.py
> +++ b/dts/framework/remote_session/__init__.py
> @@ -18,11 +18,8 @@
> from framework.logger import DTSLogger
>
> from .interactive_remote_session import InteractiveRemoteSession
> -from .interactive_shell import InteractiveShell
> -from .python_shell import PythonShell
> -from .remote_session import CommandResult, RemoteSession
> +from .remote_session import RemoteSession
> from .ssh_session import SSHSession
> -from .testpmd_shell import TestPmdShell
>
>
> def create_remote_session(
> diff --git a/dts/framework/runner.py b/dts/framework/runner.py
> index d74f1871db..e6c23af7c7 100644
> --- a/dts/framework/runner.py
> +++ b/dts/framework/runner.py
> @@ -26,6 +26,9 @@
> from types import FunctionType
> from typing import Iterable, Sequence
>
> +from framework.testbed_model.sut_node import SutNode
> +from framework.testbed_model.tg_node import TGNode
> +
> from .config import (
> BuildTargetConfiguration,
> Configuration,
> @@ -51,7 +54,6 @@
> TestSuiteWithCases,
> )
> from .test_suite import TestSuite
> -from .testbed_model import SutNode, TGNode
>
>
> class DTSRunner:
> diff --git a/dts/framework/test_suite.py b/dts/framework/test_suite.py
> index 8768f756a6..9d3debb00f 100644
> --- a/dts/framework/test_suite.py
> +++ b/dts/framework/test_suite.py
> @@ -20,9 +20,12 @@
> from scapy.layers.l2 import Ether # type: ignore[import-untyped]
> from scapy.packet import Packet, Padding # type: ignore[import-untyped]
>
> +from framework.testbed_model.port import Port, PortLink
> +from framework.testbed_model.sut_node import SutNode
> +from framework.testbed_model.tg_node import TGNode
> +
> from .exception import TestCaseVerifyError
> from .logger import DTSLogger, get_dts_logger
> -from .testbed_model import Port, PortLink, SutNode, TGNode
> from .testbed_model.traffic_generator import PacketFilteringConfig
> from .utils import get_packet_summaries
>
> diff --git a/dts/framework/testbed_model/__init__.py b/dts/framework/testbed_model/__init__.py
> index 6086512ca2..4f8a58c039 100644
> --- a/dts/framework/testbed_model/__init__.py
> +++ b/dts/framework/testbed_model/__init__.py
> @@ -19,10 +19,3 @@
> """
>
> # pylama:ignore=W0611
> -
> -from .cpu import LogicalCoreCount, LogicalCoreCountFilter, LogicalCoreList
> -from .node import Node
> -from .port import Port, PortLink
> -from .sut_node import SutNode
> -from .tg_node import TGNode
> -from .virtual_device import VirtualDevice
> diff --git a/dts/framework/testbed_model/os_session.py b/dts/framework/testbed_model/os_session.py
> index 1a77aee532..e5f5fcbe0e 100644
> --- a/dts/framework/testbed_model/os_session.py
> +++ b/dts/framework/testbed_model/os_session.py
> @@ -32,13 +32,13 @@
> from framework.logger import DTSLogger
> from framework.params import Params
> from framework.remote_session import (
> - CommandResult,
> InteractiveRemoteSession,
> - InteractiveShell,
> RemoteSession,
> create_interactive_session,
> create_remote_session,
> )
> +from framework.remote_session.interactive_shell import InteractiveShell
> +from framework.remote_session.remote_session import CommandResult
> from framework.settings import SETTINGS
> from framework.utils import MesonArgs
>
> diff --git a/dts/framework/testbed_model/sut_node.py b/dts/framework/testbed_model/sut_node.py
> index e1163106a3..83ad06ae2d 100644
> --- a/dts/framework/testbed_model/sut_node.py
> +++ b/dts/framework/testbed_model/sut_node.py
> @@ -26,7 +26,7 @@
> )
> from framework.params import Params, Switch
> from framework.params.eal import EalParams
> -from framework.remote_session import CommandResult
> +from framework.remote_session.remote_session import CommandResult
> from framework.settings import SETTINGS
> from framework.utils import MesonArgs
>
> diff --git a/dts/framework/testbed_model/traffic_generator/scapy.py b/dts/framework/testbed_model/traffic_generator/scapy.py
> index ed5467d825..7bc1c2cc08 100644
> --- a/dts/framework/testbed_model/traffic_generator/scapy.py
> +++ b/dts/framework/testbed_model/traffic_generator/scapy.py
> @@ -25,7 +25,7 @@
> from scapy.packet import Packet # type: ignore[import-untyped]
>
> from framework.config import OS, ScapyTrafficGeneratorConfig
> -from framework.remote_session import PythonShell
> +from framework.remote_session.python_shell import PythonShell
> from framework.settings import SETTINGS
> from framework.testbed_model.node import Node
> from framework.testbed_model.port import Port
> diff --git a/dts/tests/TestSuite_hello_world.py b/dts/tests/TestSuite_hello_world.py
> index fd7ff1534d..0d6995f260 100644
> --- a/dts/tests/TestSuite_hello_world.py
> +++ b/dts/tests/TestSuite_hello_world.py
> @@ -8,7 +8,7 @@
> """
>
> from framework.test_suite import TestSuite
> -from framework.testbed_model import (
> +from framework.testbed_model.cpu import (
> LogicalCoreCount,
> LogicalCoreCountFilter,
> LogicalCoreList,
> diff --git a/dts/tests/TestSuite_smoke_tests.py b/dts/tests/TestSuite_smoke_tests.py
> index a553e89662..ca678f662d 100644
> --- a/dts/tests/TestSuite_smoke_tests.py
> +++ b/dts/tests/TestSuite_smoke_tests.py
> @@ -15,7 +15,7 @@
> import re
>
> from framework.config import PortConfig
> -from framework.remote_session import TestPmdShell
> +from framework.remote_session.testpmd_shell import TestPmdShell
> from framework.settings import SETTINGS
> from framework.test_suite import TestSuite
> from framework.utils import REGEX_FOR_PCI_ADDRESS
> --
> 2.34.1
>
Reviewed-by: Jeremy Spewock <jspewock@iol.unh.edu>
@@ -18,11 +18,8 @@
from framework.logger import DTSLogger
from .interactive_remote_session import InteractiveRemoteSession
-from .interactive_shell import InteractiveShell
-from .python_shell import PythonShell
-from .remote_session import CommandResult, RemoteSession
+from .remote_session import RemoteSession
from .ssh_session import SSHSession
-from .testpmd_shell import TestPmdShell
def create_remote_session(
@@ -26,6 +26,9 @@
from types import FunctionType
from typing import Iterable, Sequence
+from framework.testbed_model.sut_node import SutNode
+from framework.testbed_model.tg_node import TGNode
+
from .config import (
BuildTargetConfiguration,
Configuration,
@@ -51,7 +54,6 @@
TestSuiteWithCases,
)
from .test_suite import TestSuite
-from .testbed_model import SutNode, TGNode
class DTSRunner:
@@ -20,9 +20,12 @@
from scapy.layers.l2 import Ether # type: ignore[import-untyped]
from scapy.packet import Packet, Padding # type: ignore[import-untyped]
+from framework.testbed_model.port import Port, PortLink
+from framework.testbed_model.sut_node import SutNode
+from framework.testbed_model.tg_node import TGNode
+
from .exception import TestCaseVerifyError
from .logger import DTSLogger, get_dts_logger
-from .testbed_model import Port, PortLink, SutNode, TGNode
from .testbed_model.traffic_generator import PacketFilteringConfig
from .utils import get_packet_summaries
@@ -19,10 +19,3 @@
"""
# pylama:ignore=W0611
-
-from .cpu import LogicalCoreCount, LogicalCoreCountFilter, LogicalCoreList
-from .node import Node
-from .port import Port, PortLink
-from .sut_node import SutNode
-from .tg_node import TGNode
-from .virtual_device import VirtualDevice
@@ -32,13 +32,13 @@
from framework.logger import DTSLogger
from framework.params import Params
from framework.remote_session import (
- CommandResult,
InteractiveRemoteSession,
- InteractiveShell,
RemoteSession,
create_interactive_session,
create_remote_session,
)
+from framework.remote_session.interactive_shell import InteractiveShell
+from framework.remote_session.remote_session import CommandResult
from framework.settings import SETTINGS
from framework.utils import MesonArgs
@@ -26,7 +26,7 @@
)
from framework.params import Params, Switch
from framework.params.eal import EalParams
-from framework.remote_session import CommandResult
+from framework.remote_session.remote_session import CommandResult
from framework.settings import SETTINGS
from framework.utils import MesonArgs
@@ -25,7 +25,7 @@
from scapy.packet import Packet # type: ignore[import-untyped]
from framework.config import OS, ScapyTrafficGeneratorConfig
-from framework.remote_session import PythonShell
+from framework.remote_session.python_shell import PythonShell
from framework.settings import SETTINGS
from framework.testbed_model.node import Node
from framework.testbed_model.port import Port
@@ -8,7 +8,7 @@
"""
from framework.test_suite import TestSuite
-from framework.testbed_model import (
+from framework.testbed_model.cpu import (
LogicalCoreCount,
LogicalCoreCountFilter,
LogicalCoreList,
@@ -15,7 +15,7 @@
import re
from framework.config import PortConfig
-from framework.remote_session import TestPmdShell
+from framework.remote_session.testpmd_shell import TestPmdShell
from framework.settings import SETTINGS
from framework.test_suite import TestSuite
from framework.utils import REGEX_FOR_PCI_ADDRESS