Skip to content

Commit

Permalink
[matter_yamltests] Replace python 3.9 list/tuple syntax with typing.L…
Browse files Browse the repository at this point in the history
…ist/typing.Tuple (#26873)
  • Loading branch information
vivien-apple authored May 26, 2023
1 parent c53bef2 commit 3029f04
Show file tree
Hide file tree
Showing 8 changed files with 22 additions and 15 deletions.
3 changes: 2 additions & 1 deletion scripts/py_matter_yamltests/matter_yamltests/constraints.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@
import re
import string
from abc import ABC, abstractmethod
from typing import List

from .errors import TestStepError

Expand Down Expand Up @@ -759,7 +760,7 @@ def get_reason(self, value, value_type_name) -> str:
return f'The response value "{value}" is not a value from {self._any_of}.'


def get_constraints(constraints: dict) -> list[BaseConstraint]:
def get_constraints(constraints: dict) -> List[BaseConstraint]:
_constraints = []
context = constraints

Expand Down
6 changes: 3 additions & 3 deletions scripts/py_matter_yamltests/matter_yamltests/definitions.py
Original file line number Diff line number Diff line change
Expand Up @@ -161,17 +161,17 @@ def get_type_by_name(self, cluster_name: str, target_name: str):

return None

def get_command_names(self, cluster_name: str) -> list[str]:
def get_command_names(self, cluster_name: str) -> List[str]:
targets = self.__get_targets_by_cluster_name(
cluster_name, _ItemType.Request)
return [] if targets is None else [name for name in targets]

def get_event_names(self, cluster_name: str) -> list[str]:
def get_event_names(self, cluster_name: str) -> List[str]:
targets = self.__get_targets_by_cluster_name(
cluster_name, _ItemType.Event)
return [] if targets is None else [name for name in targets]

def get_attribute_names(self, cluster_name: str) -> list[str]:
def get_attribute_names(self, cluster_name: str) -> List[str]:
targets = self.__get_targets_by_cluster_name(
cluster_name, _ItemType.Attribute)
return [] if targets is None else [name for name in targets]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@
import copy
import time
from dataclasses import dataclass, field
from typing import List

from .hooks import TestParserHooks
from .parser import TestParser, TestParserConfig
Expand Down Expand Up @@ -50,7 +51,7 @@ class TestParserBuilderConfig:
parsing. It may may allow the callers to gain insights about the
current parsing state.
"""
tests: list[str] = field(default_factory=list)
tests: List[str] = field(default_factory=list)
parser_config: TestParserConfig = field(default_factory=TestParserConfig)
hooks: TestParserHooks = TestParserHooks()
options: TestParserBuilderOptions = field(
Expand Down
5 changes: 3 additions & 2 deletions scripts/py_matter_yamltests/matter_yamltests/pics_checker.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
# limitations under the License.

import unicodedata
from typing import List

_COMMENT_CHARACTER = '#'
_VALUE_SEPARATOR = '='
Expand Down Expand Up @@ -78,7 +79,7 @@ def __parse(self, pics_file: str):
line = f.readline()
return pics

def __evaluate_expression(self, tokens: list[str], pics: dict):
def __evaluate_expression(self, tokens: List[str], pics: dict):
leftExpr = self.__evaluate_sub_expression(tokens, pics)
if self.__expression_index >= len(tokens):
return leftExpr
Expand All @@ -102,7 +103,7 @@ def __evaluate_expression(self, tokens: list[str], pics: dict):

raise InvalidPICSParsingError(f'Unknown token: {token}')

def __evaluate_sub_expression(self, tokens: list[str], pics: dict):
def __evaluate_sub_expression(self, tokens: List[str], pics: dict):
token = tokens[self.__expression_index]
if token == '(':
self.__expression_index += 1
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@
# See the License for the specific language governing permissions and
# limitations under the License.

from typing import List

from .clusters.commissioner_commands import CommissionerCommands
from .clusters.delay_commands import DelayCommands
from .clusters.discovery_commands import DiscoveryCommands
Expand All @@ -22,7 +24,7 @@


class PseudoClusters:
def __init__(self, clusters: list[PseudoCluster]):
def __init__(self, clusters: List[PseudoCluster]):
self.clusters = clusters

def supports(self, request) -> bool:
Expand Down
4 changes: 2 additions & 2 deletions scripts/py_matter_yamltests/matter_yamltests/yaml_loader.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.

from typing import Union
from typing import Tuple, Union

from .errors import (TestStepError, TestStepGroupResponseError, TestStepInvalidTypeError, TestStepKeyError,
TestStepNodeIdAndGroupIdError, TestStepValueAndValuesError, TestStepVerificationStandaloneError,
Expand All @@ -33,7 +33,7 @@
class YamlLoader:
"""This class loads a file from the disk and validates that the content is a well formed yaml test."""

def load(self, yaml_file: str) -> tuple[str, Union[list, str], dict, list]:
def load(self, yaml_file: str) -> Tuple[str, Union[list, str], dict, list]:
filename = ''
name = ''
pics = None
Expand Down
5 changes: 3 additions & 2 deletions scripts/tests/yaml/chiptool.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
import asyncio
import json
import sys
from typing import List

import click
from matter_chip_tool_adapter.decoder import MatterLog
Expand All @@ -31,7 +32,7 @@


@click.pass_context
def send_yaml_command(ctx, test_name: str, server_path: str, server_arguments: str, pics: str, additional_pseudo_clusters_directory: str, commands: list[str]):
def send_yaml_command(ctx, test_name: str, server_path: str, server_arguments: str, pics: str, additional_pseudo_clusters_directory: str, commands: List[str]):
kwargs = {'test_name': test_name, 'pics': pics, 'additional_pseudo_clusters_directory': additional_pseudo_clusters_directory}

index = 0
Expand Down Expand Up @@ -125,7 +126,7 @@ def maybe_update_stop_on_error(ctx):
@click.argument('commands', nargs=-1)
@chiptool_runner_options
@click.pass_context
def chiptool_py(ctx, commands: list[str], server_path: str, server_name: str, server_arguments: str, trace_file: str, trace_decode: bool, delay_in_ms: int, continueonfailure: bool, pics: str, additional_pseudo_clusters_directory: str):
def chiptool_py(ctx, commands: List[str], server_path: str, server_name: str, server_arguments: str, trace_file: str, trace_decode: bool, delay_in_ms: int, continueonfailure: bool, pics: str, additional_pseudo_clusters_directory: str):
success = False

server_arguments = maybe_update_server_arguments(ctx)
Expand Down
7 changes: 4 additions & 3 deletions scripts/tests/yaml/tests_finder.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@

import json
import os.path
from typing import List

import click

Expand All @@ -40,7 +41,7 @@ def get_default_configuration_directory() -> str:
def get_default_configuration_name() -> str:
return _CI_CONFIGURATION_NAME

def get(self, test_name: str) -> list[str]:
def get(self, test_name: str) -> List[str]:
test_names = []

if self.__test_collections and test_name == _KEYWORD_ALL_TESTS:
Expand All @@ -54,7 +55,7 @@ def get(self, test_name: str) -> list[str]:

return self.__get_paths(test_names)

def __get_collections(self, configuration_directory: str, configuration_name: str) -> list[str]:
def __get_collections(self, configuration_directory: str, configuration_name: str) -> List[str]:
if os.path.isfile(configuration_name):
configuration_filepath = configuration_name
elif os.path.isfile(os.path.join(configuration_directory, configuration_name + _JSON_FILE_EXTENSION)):
Expand Down Expand Up @@ -82,7 +83,7 @@ def __get_collections(self, configuration_directory: str, configuration_name: st

return collections

def __get_paths(self, test_names: list[str]) -> list[str]:
def __get_paths(self, test_names: List[str]) -> List[str]:
paths = []

for name in test_names:
Expand Down

0 comments on commit 3029f04

Please sign in to comment.