8000 Python framework API cleanup: Move SetupParameters into commissioning.py by juandediosg · Pull Request #39732 · project-chip/connectedhomeip · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Python framework API cleanup: Move SetupParameters into commissioning.py #39732

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 16 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions src/python_testing/TC_ECOINFO_2_1.py
Original file line number Diff line number Diff line change
Expand Up @@ -66,8 +66,8 @@
from chip.clusters.Types import NullValue
from chip.interaction_model import Status
from chip.testing.apps import AppServerSubprocess
from chip.testing.matter_testing import (MatterBaseTest, SetupParameters, TestStep, async_test_body, default_matter_test_main,
type_matches)
from chip.testing.commissioning import SetupParameters
from chip.testing.matter_testing import MatterBaseTest, TestStep, async_test_body, default_matter_test_main, type_matches
from chip.tlv import uint
from mobly import asserts

Expand Down
3 changes: 2 additions & 1 deletion src/python_testing/TC_ECOINFO_2_2.py
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,8 @@
import chip.clusters as Clusters
from chip.interaction_model import Status
from chip.testing.apps import AppServerSubprocess
from chip.testing.matter_testing import MatterBaseTest, SetupParameters, TestStep, async_test_body, default_matter_test_main
from chip.testing.commissioning import SetupParameters
from chip.testing.matter_testing import MatterBaseTest, TestStep, async_test_body, default_matter_test_main
from mobly import asserts

_DEVICE_TYPE_AGGREGATOR = 0x000E
Expand Down
4 changes: 2 additions & 2 deletions src/python_testing/TC_MCORE_FS_1_2.py
Original file line number Diff line number Diff line change
Expand Up @@ -69,8 +69,8 @@
import chip.clusters as Clusters
from chip import ChipDeviceCtrl
from chip.testing.apps import AppServerSubprocess
from chip.testing.matter_testing import (MatterBaseTest, SetupParameters, TestStep, async_test_body, default_matter_test_main,
type_matches)
from chip.testing.commissioning import SetupParameters
from chip.testing.matter_testing import MatterBaseTest, TestStep, async_test_body, default_matter_test_main, type_matches
from ecdsa.curves import NIST256p
from mobly import asserts
from TC_SC_3_6 import AttributeChangeAccumulator
Expand Down
4 changes: 2 additions & 2 deletions src/python_testing/TC_MCORE_FS_1_5.py
Original file line number Diff line number Diff line change
Expand Up @@ -69,8 +69,8 @@
import chip.clusters as Clusters
from chip import ChipDeviceCtrl
from chip.testing.apps import AppServerSubprocess
from chip.testing.matter_testing import (MatterBaseTest, SetupParameters, TestStep, async_test_body, default_matter_test_main,
type_matches)
from chip.testing.commissioning import SetupParameters
from chip.testing.matter_testing import MatterBaseTest, TestStep, async_test_body, default_matter_test_main, type_matches
from ecdsa.curves import NIST256p
from mobly import asserts
from TC_SC_3_6 import AttributeChangeAccumulator
Expand Down
< 8000 /tr>
Original file line number Diff line number Diff line change
Expand Up @@ -320,3 +320,37 @@ def default_controller(self) -> ChipDeviceCtrl.ChipDeviceController:
@default_controller.setter
def default_controller(self, tmp_default_controller):
self._default_controller = tmp_default_controller


@dataclass
class SetupParameters:
"""
Specifies configuration parameters for commissioning.
Args:
passcode (int): The setup passcode of the device.
vendor_id (Optional[int]): Identification number specific tothe vendor.
product_id (Optional[int]): Identification number specific to the product.
discriminator (Optional[int]): The long discriminator for the DNS-SD advertisement. Valid range: 0-4095.
custom_flow (Optional[int]): The custom flow type.
capabilities (Optional[int]): Device capabilities.
version (Optional[int]): Version number.
"""
passcode: int
vendor_id: int = 0xFFF1
product_id: int = 0x8001
discriminator: int = 3840
custom_flow: int = 0
capabilities: int = 0b0100
version: int = 0

@property
def qr_code(self):
return SetupPayload().GenerateQrCode(self.passcode, self.vendor_id, self.product_id, self.discriminator,
self.custom_flow, self.capabilities, self.version)

@property
def manual_code(self):
return SetupPayload().GenerateManualPairingCode(self.passcode, self.vendor_id, self.product_id, self.discriminator,
self.custom_flow, self.capabilities, self.version)
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,6 @@
from chip.ChipStack import ChipStack
from chip.clusters import Attribute, ClusterObjects
from chip.interaction_model import InteractionModelError, Status
from chip.setup_payload import SetupPayload
from chip.storage import PersistentStorage
from chip.testing.commissioning import (CommissioningInfo, CustomCommissioningParameters, SetupPayloadInfo, commission_devices,
get_setup_payload_info_config)
Expand Down Expand Up @@ -253,27 +252,6 @@ class MatterTestConfig:
legacy: bool = False


@dataclass
class SetupParameters:
passcode: int
vendor_id: int = 0xFFF1
product_id: int = 0x8001
discriminator: int = 3840
custom_flow: int = 0
capabilities: int = 0b0100
version: int = 0

@property
def qr_code(self):
return SetupPayload().GenerateQrCode(self.passcode, self.vendor_id, self.product_id, self.discriminator,
self.custom_flow, self.capabilities, self.version)

@property
def manual_code(self):
return SetupPayload().GenerateManualPairingCode(self.passcode, self.vendor_id, self.product_id, self.discriminator,
self.custom_flow, self.capabilities, self.version)


class MatterStackState:
def __init__(self, config: MatterTestConfig):
self._logger = logger
Expand Down
Loading
0