@@ -47,45 +47,45 @@ test.set_test_init_function(test_init)
4747test .register_coroutine_test (
4848 " Device called 'migrate' command" ,
4949 function ()
50- test .mock_device .add_test_device (mock_device )
51- test .socket .device_lifecycle :__queue_receive ({ mock_device .id , " added" })
52- test .socket .zigbee :__expect_send ({ mock_device .id , PowerConfiguration .attributes .BatteryPercentageRemaining :read (mock_device ) })
53- test .socket .zigbee :__expect_send ({ mock_device .id , DoorLock .attributes .LockState :read (mock_device ) })
54- test .socket .zigbee :__expect_send ({ mock_device .id , Alarm .attributes .AlarmCount :read (mock_device ) })
55- test .wait_for_events ()
56- -- Validate lockCodes field
57- mock_datastore .__assert_device_store_contains (mock_device .id , " lockCodes" , { [" 1" ] = " Zach" , [" 2" ] = " Steven" })
58- -- Validate state cache
59- mock_datastore .__assert_device_store_contains (mock_device .id , " __state_cache" ,
60- {
61- main = {
62- lockCodes = {
63- lockCodes = {value = json .encode ({ [" 1" ] = " Zach" , [" 2" ] = " Steven" }) }
64- }
65- }
50+ test .mock_device .add_test_device (mock_device )
51+ test .socket .device_lifecycle :__queue_receive ({ mock_device .id , " added" })
52+ test .socket .zigbee :__expect_send ({ mock_device .id , PowerConfiguration .attributes .BatteryPercentageRemaining :read (mock_device ) })
53+ test .socket .zigbee :__expect_send ({ mock_device .id , DoorLock .attributes .LockState :read (mock_device ) })
54+ test .socket .zigbee :__expect_send ({ mock_device .id , Alarm .attributes .AlarmCount :read (mock_device ) })
55+ test .wait_for_events ()
56+ -- Validate lockCodes field
57+ mock_datastore .__assert_device_store_contains (mock_device .id , " lockCodes" , { [" 1" ] = " Zach" , [" 2" ] = " Steven" })
58+ -- Validate state cache
59+ mock_datastore .__assert_device_store_contains (mock_device .id , " __state_cache" ,
60+ {
61+ main = {
62+ lockCodes = {
63+ lockCodes = {value = json .encode ({ [" 1" ] = " Zach" , [" 2" ] = " Steven" }) }
6664 }
67- )
68- -- Validate migration complete flag
69- mock_datastore .__assert_device_store_contains (mock_device .id , " migrationComplete" , true )
65+ }
66+ }
67+ )
68+ -- Validate migration complete flag
69+ mock_datastore .__assert_device_store_contains (mock_device .id , " migrationComplete" , true )
7070
71- -- Set min/max code length attributes
72- test .socket .zigbee :__queue_receive ({ mock_device .id , DoorLock .attributes .MinPINCodeLength :build_test_attr_report (mock_device , 5 ) })
73- test .socket .zigbee :__queue_receive ({ mock_device .id , DoorLock .attributes .MaxPINCodeLength :build_test_attr_report (mock_device , 10 ) })
74- test .socket .zigbee :__queue_receive ({ mock_device .id , DoorLock .attributes .NumberOfPINUsersSupported :build_test_attr_report (mock_device , 4 ) })
75- test .socket .capability :__expect_send ( mock_device :generate_test_message (" main" , capabilities .lockCodes .minCodeLength (5 , { visibility = { displayed = false } })))
76- test .socket .capability :__expect_send ( mock_device :generate_test_message (" main" , capabilities .lockCodes .maxCodeLength (10 , { visibility = { displayed = false } })))
77- test .socket .capability :__expect_send ( mock_device :generate_test_message (" main" , capabilities .lockCodes .maxCodes (4 , { visibility = { displayed = false } })))
78-
79- -- Validate `migrate` command functionality.
80- test .socket .capability :__queue_receive ({ mock_device .id , { capability = capabilities .lockCodes .ID , command = " migrate" , args = {} } })
81- test .socket .capability :__expect_send ( mock_device :generate_test_message (" main" , capabilities .lockCredentials .minPinCodeLen (5 , { visibility = { displayed = false } })))
82- test .socket .capability :__expect_send ( mock_device :generate_test_message (" main" , capabilities .lockCredentials .maxPinCodeLen (10 , { visibility = { displayed = false } })))
83- test .socket .capability :__expect_send ( mock_device :generate_test_message (" main" , capabilities .lockCredentials .pinUsersSupported (4 , { visibility = { displayed = false } })))
84- test .socket .capability :__expect_send ( mock_device :generate_test_message (" main" , capabilities .lockCredentials .credentials ({{credentialIndex = 1 , credentialType = " pin" , userIndex = 1 }, {credentialIndex = 2 , credentialType = " pin" , userIndex = 2 }}, { visibility = { displayed = false } })))
85- test .socket .capability :__expect_send ( mock_device :generate_test_message (" main" , capabilities .lockCredentials .supportedCredentials ({" pin" }, { visibility = { displayed = false } })))
86- test .socket .capability :__expect_send ( mock_device :generate_test_message (" main" , capabilities .lockUsers .users ({{userIndex = 1 , userName = " Zach" , userType = " guest" }, {userIndex = 2 , userName = " Steven" , userType = " guest" }}, { visibility = { displayed = false } })))
87- test .socket .capability :__expect_send ( mock_device :generate_test_message (" main" , capabilities .lockCodes .migrated (true , { visibility = { displayed = false } })))
88- test .wait_for_events ()
71+ -- Set min/max code length attributes
72+ test .socket .zigbee :__queue_receive ({ mock_device .id , DoorLock .attributes .MinPINCodeLength :build_test_attr_report (mock_device , 5 ) })
73+ test .socket .zigbee :__queue_receive ({ mock_device .id , DoorLock .attributes .MaxPINCodeLength :build_test_attr_report (mock_device , 10 ) })
74+ test .socket .zigbee :__queue_receive ({ mock_device .id , DoorLock .attributes .NumberOfPINUsersSupported :build_test_attr_report (mock_device , 4 ) })
75+ test .socket .capability :__expect_send ( mock_device :generate_test_message (" main" , capabilities .lockCodes .minCodeLength (5 , { visibility = { displayed = false } })))
76+ test .socket .capability :__expect_send ( mock_device :generate_test_message (" main" , capabilities .lockCodes .maxCodeLength (10 , { visibility = { displayed = false } })))
77+ test .socket .capability :__expect_send ( mock_device :generate_test_message (" main" , capabilities .lockCodes .maxCodes (4 , { visibility = { displayed = false } })))
78+ test . wait_for_events ()
79+ -- Validate `migrate` command functionality.
80+ test .socket .capability :__queue_receive ({ mock_device .id , { capability = capabilities .lockCodes .ID , command = " migrate" , args = {} } })
81+ test .socket .capability :__expect_send ( mock_device :generate_test_message (" main" , capabilities .lockCredentials .minPinCodeLen (5 , { visibility = { displayed = false } })))
82+ test .socket .capability :__expect_send ( mock_device :generate_test_message (" main" , capabilities .lockCredentials .maxPinCodeLen (10 , { visibility = { displayed = false } })))
83+ test .socket .capability :__expect_send ( mock_device :generate_test_message (" main" , capabilities .lockCredentials .pinUsersSupported (4 , { visibility = { displayed = false } })))
84+ test .socket .capability :__expect_send ( mock_device :generate_test_message (" main" , capabilities .lockCredentials .credentials ({{credentialIndex = 1 , credentialType = " pin" , userIndex = 1 }, {credentialIndex = 2 , credentialType = " pin" , userIndex = 2 }}, { visibility = { displayed = false } })))
85+ test .socket .capability :__expect_send ( mock_device :generate_test_message (" main" , capabilities .lockCredentials .supportedCredentials ({" pin" }, { visibility = { displayed = false } })))
86+ test .socket .capability :__expect_send ( mock_device :generate_test_message (" main" , capabilities .lockUsers .users ({{userIndex = 1 , userName = " Zach" , userType = " guest" }, {userIndex = 2 , userName = " Steven" , userType = " guest" }}, { visibility = { displayed = false } })))
87+ test .socket .capability :__expect_send ( mock_device :generate_test_message (" main" , capabilities .lockCodes .migrated (true , { visibility = { displayed = false } })))
88+ test .wait_for_events ()
8989 end
9090)
9191
0 commit comments