mirror of
https://github.com/emqx/neuron.git
synced 2026-10-17 04:40:42 +08:00
133 lines
5.2 KiB
Plaintext
133 lines
5.2 KiB
Plaintext
*** Settings ***
|
|
Resource resource/api.resource
|
|
Resource resource/common.resource
|
|
Resource resource/error.resource
|
|
Suite Setup Start Neuronx
|
|
Suite Teardown Stop Neuronx
|
|
|
|
|
|
*** Test Cases ***
|
|
North APP subscribe non-existent group, it should return failure
|
|
Add Node modbus-node ${PLUGIN-MODBUS-TCP}
|
|
Add Node mqtt ${PLUGIN-MQTT}
|
|
|
|
Sleep 1s
|
|
${res}= Subscribe Group mqtt modbus-node group
|
|
|
|
Check Response Status ${res} 404
|
|
Check Error Code ${res} ${NEU_ERR_GROUP_NOT_EXIST}
|
|
|
|
North APP subscribe existent group, it should return success
|
|
Add Group modbus-node group 1000
|
|
${res}= Subscribe Group mqtt modbus-node group
|
|
|
|
Check Response Status ${res} 200
|
|
Check Error Code ${res} ${NEU_ERR_SUCCESS}
|
|
|
|
North APP update subscribe nonexistent group, it should return success
|
|
${res}= Update Subscribe mqtt modbus-node group1 topic=/neuron
|
|
|
|
Check Response Status ${res} 404
|
|
Check Error Code ${res} ${NEU_ERR_GROUP_NOT_SUBSCRIBE}
|
|
|
|
North APP update subscribe existent group, it should return success
|
|
${res}= Update Subscribe mqtt modbus-node group topic=/neuron
|
|
|
|
Check Response Status ${res} 200
|
|
Check Error Code ${res} ${NEU_ERR_SUCCESS}
|
|
|
|
North APP subscribe multiple nonexistent groups, it should fail.
|
|
${g1} = Evaluate {"driver":"modbus-node", "group": "group1"}
|
|
${g2} = Evaluate {"driver": "modbus-node", "group": "group2", "params":{"topic":"/neuron"}}
|
|
|
|
${res}= Subscribe Groups mqtt ${g1} ${g2}
|
|
|
|
Check Response Status ${res} 404
|
|
Check Error Code ${res} ${NEU_ERR_GROUP_NOT_EXIST}
|
|
|
|
North MQTT APP subscribe with empty topic, it should fail.
|
|
${g1} = Evaluate {"driver": "modbus-node", "group": "group1", "params":{"topic":""}}
|
|
|
|
${res}= Subscribe Groups mqtt ${g1}
|
|
|
|
Check Response Status ${res} 200
|
|
Check Error Code ${res} ${NEU_ERR_MQTT_SUBSCRIBE_FAILURE}
|
|
|
|
North APP subscribe multiple groups, it should return success
|
|
Add Group modbus-node group1 1000
|
|
Add Group modbus-node group2 1000
|
|
${g1} = Evaluate {"driver":"modbus-node", "group": "group1"}
|
|
${g2} = Evaluate {"driver": "modbus-node", "group": "group2", "params":{"topic":"/neuron"}}
|
|
|
|
${res}= Subscribe Groups mqtt ${g1} ${g2}
|
|
|
|
Check Response Status ${res} 200
|
|
Check Error Code ${res} ${NEU_ERR_SUCCESS}
|
|
|
|
[Teardown] Run Keywords Del Group modbus-node group1
|
|
... AND Del Group modbus-node group2
|
|
|
|
Query the subscribers of the group, it should return all nodes subscribed to this group
|
|
${res} = Get Subscribe Group mqtt
|
|
Check Response Status ${res} 200
|
|
|
|
${len} = Get Length ${res}[groups]
|
|
Should Be Equal As Integers ${len} 1
|
|
Should Be Equal As Strings ${res}[groups][0][driver] modbus-node
|
|
Should Be Equal As Strings ${res}[groups][0][group] group
|
|
Should Be Equal As Strings ${res}[groups][0][params][topic] /neuron
|
|
|
|
Add Group modbus-node group1 1000
|
|
Subscribe Group mqtt modbus-node group1
|
|
|
|
${res} = Get Subscribe Group mqtt
|
|
Check Response Status ${res} 200
|
|
|
|
${len} = Get Length ${res}[groups]
|
|
Should Be Equal As Integers ${len} 2
|
|
Should Be Equal As Strings ${res}[groups][0][driver] modbus-node
|
|
Should Be Equal As Strings ${res}[groups][0][group] group
|
|
|
|
Should Be Equal As Strings ${res}[groups][1][driver] modbus-node
|
|
Should Be Equal As Strings ${res}[groups][1][group] group1
|
|
|
|
Delete the subscribe group config, it should return success
|
|
${res}= Del Group modbus-node group1
|
|
|
|
Check Response Status ${res} 200
|
|
Check Error Code ${res} ${NEU_ERR_SUCCESS}
|
|
|
|
${res} = Get Subscribe Group mqtt
|
|
Check Response Status ${res} 200
|
|
|
|
${len} = Get Length ${res}[groups]
|
|
Should Be Equal As Integers ${len} 1
|
|
Should Be Equal As Strings ${res}[groups][0][driver] modbus-node
|
|
Should Be Equal As Strings ${res}[groups][0][group] group
|
|
|
|
North APP unsubscribe group config, it should return success
|
|
${res}= Unsubscribe Group mqtt modbus-node group
|
|
|
|
Check Response Status ${res} 200
|
|
Check Error Code ${res} ${NEU_ERR_SUCCESS}
|
|
|
|
${res} = Get Subscribe Group mqtt
|
|
Check Response Status ${res} 200
|
|
${len} = Get Length ${res}[groups]
|
|
Should Be Equal As Integers ${len} 0
|
|
|
|
Delete DRIVER node with the subscribed group, it should return success.
|
|
${res}= Subscribe Group mqtt modbus-node group
|
|
Check Response Status ${res} 200
|
|
Check Error Code ${res} ${NEU_ERR_SUCCESS}
|
|
|
|
${res}= Del Node modbus-node
|
|
Check Response Status ${res} 200
|
|
Check Error Code ${res} ${NEU_ERR_SUCCESS}
|
|
|
|
${res} = Get Subscribe Group mqtt
|
|
Check Response Status ${res} 200
|
|
${len} = Get Length ${res}[groups]
|
|
Should Be Equal As Integers ${len} 0
|
|
|
|
[Teardown] Del Node mqtt |