New paste Repaste Download
================================================================================= test session starts ==================================================================================
platform linux -- Python 3.12.3, pytest-8.4.0, pluggy-1.6.0 -- /home/byaremkiv/git/link/venv/bin/python3
cachedir: .pytest_cache
rootdir: /home/byaremkiv/git/link
plugins: order-1.3.0
collecting ...
collected 1 item                                                                                                                                                                       
test/functional/simple_test.py::test_connect_links FAILED                                                                                                                        [100%]
======================================================================================= FAILURES =======================================================================================
__________________________________________________________________________________ test_connect_links __________________________________________________________________________________
     [0m [37m@pytest [39;49;00m.mark.order( [94m2 [39;49;00m) [90m [39;49;00m
     [94mdef [39;49;00m [90m  [39;49;00m [92mtest_connect_links [39;49;00m(): [90m [39;49;00m
        [90m# 0. Get Device IDs [39;49;00m [90m [39;49;00m
       device_1 = discover_device(device_id_1) [90m [39;49;00m
       device_2 = discover_device(device_id_2) [90m [39;49;00m
        [94massert [39;49;00m device_1,  [33mf [39;49;00m [33m" [39;49;00m [33mDevice with ID  [39;49;00m [33m{ [39;49;00mdevice_id_1 [33m} [39;49;00m [33m not found [39;49;00m [33m" [39;49;00m [90m [39;49;00m
        [94massert [39;49;00m device_2,  [33mf [39;49;00m [33m" [39;49;00m [33mDevice with ID  [39;49;00m [33m{ [39;49;00mdevice_id_2 [33m} [39;49;00m [33m not found [39;49;00m [33m" [39;49;00m [90m [39;49;00m
     [90m [39;49;00m
        [90m# 1. Reset the devices [39;49;00m [90m [39;49;00m
       reset_device_settings(device_1) [90m [39;49;00m
       reset_device_settings(device_2) [90m [39;49;00m
     [90m [39;49;00m
        [90m# 2. Make 1 device as slave another is master by default [39;49;00m [90m [39;49;00m
        [90m# Wait for device renumeration. Don't have idea how to do it in a better way (TBD?) [39;49;00m [90m [39;49;00m
       time.sleep( [94m5 [39;49;00m) [90m [39;49;00m
       device_1 = discover_device(device_id_1) [90m [39;49;00m
       device_2 = discover_device(device_id_2) [90m [39;49;00m
     [90m [39;49;00m
        [90m# 3. Cover negative scenario rssi should equal -127 in no connection [39;49;00m [90m [39;49;00m
       rssi = get_rssi(device_1) [90m [39;49;00m
        [96mprint [39;49;00m( [33mf [39;49;00m [33m" [39;49;00m [33mRSSI:  [39;49;00m [33m{ [39;49;00mrssi [33m} [39;49;00m [33m" [39;49;00m) [90m [39;49;00m
        [94massert [39;49;00m - [94m127 [39;49;00m == rssi,  [33mf [39;49;00m [33m" [39;49;00m [33mDevice  [39;49;00m [33m{ [39;49;00mdevice_id_1 [33m} [39;49;00m [33m: Actual RSSI is:  [39;49;00m [33m{ [39;49;00mrssi [33m} [39;49;00m [33m. Expected is -127. [39;49;00m [33m" [39;49;00m [90m [39;49;00m
     [90m [39;49;00m
       rssi = get_rssi(device_2) [90m [39;49;00m
        [96mprint [39;49;00m( [33mf [39;49;00m [33m" [39;49;00m [33mRSSI:  [39;49;00m [33m{ [39;49;00mrssi [33m} [39;49;00m [33m" [39;49;00m) [90m [39;49;00m
        [94massert [39;49;00m - [94m127 [39;49;00m == rssi,  [33mf [39;49;00m [33m" [39;49;00m [33mDevice  [39;49;00m [33m{ [39;49;00mdevice_id_2 [33m} [39;49;00m [33m: Actual RSSI is:  [39;49;00m [33m{ [39;49;00mrssi [33m} [39;49;00m [33m. Expected is -127. [39;49;00m [33m" [39;49;00m [90m [39;49;00m
     [90m [39;49;00m
>      change_master_to_slave(device_1) [90m [39;49;00m
test/functional/simple_test.py:51:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
test/functional/common.py:121: in change_master_to_slave
     [0mlink_send_command(device, write_cmd=eeSetModemConfig, crypto_config=my_crypto_config) [90m [39;49;00m
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
device = <DEVICE ID 1939:1945 on Bus 003 Address 025>, write_cmd = 134, read_cmd = None, index = 0
kwargs = {'crypto_config': role: Slave
opmode: MultichannelAdaptiveFHSS
uplink_mod: 2
downlink_mod: 2
nolink_timeout_x100: 30
uplink_chn_mask: 4294967295
downlink_chn_mask: 4294967295
autoselect_slave: true
btn_enable: true
allow_role_change: true
use_dynamic_baud: true
name: "ModemName"
}
req_obj = header {
  type: eeSetModemConfig
}
, field = 'crypto_config'
value = role: Slave
opmode: MultichannelAdaptiveFHSS
uplink_mod: 2
downlink_mod: 2
nolink_timeout_x100: 30
uplink_chn_mask: 4294967295
downlink_chn_mask: 4294967295
autoselect_slave: true
btn_enable: true
allow_role_change: true
use_dynamic_baud: true
name: "ModemName"
     [0m [94mdef [39;49;00m [90m  [39;49;00m [92mlink_send_command [39;49;00m(device, write_cmd, read_cmd= [94mNone [39;49;00m, index= [94m0 [39;49;00m, **kwargs): [90m [39;49;00m
        req_obj = Object() [90m [39;49;00m
        req_obj.header.type = write_cmd [90m [39;49;00m
        req_obj.header.obj_index = index [90m [39;49;00m
         [94mif [39;49;00m kwargs: [90m [39;49;00m
             [94mif [39;49;00m  [96mlen [39;49;00m(kwargs) !=  [94m1 [39;49;00m: [90m [39;49;00m
                 [94mraise [39;49;00m  [96mValueError [39;49;00m( [33m" [39;49;00m [33mOnly one payload argument is allowed for oneof [39;49;00m [33m" [39;49;00m) [90m [39;49;00m
     [90m [39;49;00m
            field, value =  [96mnext [39;49;00m( [96miter [39;49;00m(kwargs.items())) [90m [39;49;00m
             [94mif [39;49;00m  [95mnot [39;49;00m  [96mhasattr [39;49;00m(req_obj, field): [90m [39;49;00m
                 [94mraise [39;49;00m  [96mAttributeError [39;49;00m( [33mf [39;49;00m [33m" [39;49;00m [33mNo such field  [39;49;00m [33m' [39;49;00m [33m{ [39;49;00mfield [33m} [39;49;00m [33m' [39;49;00m [33m in Object message [39;49;00m [33m" [39;49;00m) [90m [39;49;00m
     [90m [39;49;00m
>            [96msetattr [39;49;00m(req_obj, field, value) [90m [39;49;00m
E           AttributeError: Assignment not allowed to message field "crypto_config" in protocol message object.
test/functional/link_protocol_usb_parser.py:83: AttributeError
--------------------------------------------------------------------------------- Captured stdout call ---------------------------------------------------------------------------------
RSSI: -127
RSSI: -127
--------------------------------------------------------- generated xml file: /home/byaremkiv/git/link/output/test_report.xml ----------------------------------------------------------
==================================================================================  [31m [1m1 failed [0m [31m in 5.33s [0m [31m ===================================================================================
Filename: None. Size: 7kb. View raw, , hex, or download this file.

This paste expires on 2025-06-27 14:45:24.876638. Pasted through deprecated-web.