[tests] add test case Cert_9_2_02 (#3589)

1. Add new test case **Cert_9_2_02**. Since the test case contains 2
topologies, added 2 new files:
- `Cert_9_2_02A_MGMTCommissionerSet.py`,
- `Cert_9_2_02B_MGMTCommissionerSet.py`.

2. Add mesh_cop tlvs parsing. The corresponding file is
`mesh_cop.py`. The mesh_cop tlvs are used in many cases. For example,
`CommissionerSessionId` is used in both the parsing of **Commissioning
Data**(in mle) and the parsing of **CoAP**. Collected all mesh_cop
tlvs refered in Thread into this file with some unused tlvs
unimplemented.

3. Reuse `SubTlvsFactory` in `network_data.py`. `SubTlvsFactory` are
used to choose the corresponding factory of specific tlv and do the
parsing of it. The `NetworkLayerTlvsFactory` in `network_layer.py` had
exactly the same function with it (almost the same code). Moved the
`SubTlvsFactory` into a new file `tlvs_parsing.py` and change the
usage in `network_data.py` and `network_layer.py`. This helps us
remove some redundant code.

4. Some format issues. Remove some trailing spaces.
This commit is contained in:
Irving-cl
2019-03-19 21:17:15 -07:00
committed by Jonathan Hui
parent a3f398b30f
commit a637cdccf4
15 changed files with 1146 additions and 442 deletions
+12
View File
@@ -205,6 +205,12 @@ class Node:
def get_addr(self, prefix):
return self.interface.get_addr(prefix)
def get_addr_rloc(self):
return self.interface.get_addr_rloc()
def get_addr_leader_aloc(self):
return self.interface.get_addr_leader_aloc()
def get_eidcaches(self):
return self.interface.get_eidcaches()
@@ -296,5 +302,11 @@ class Node:
def coaps_get(self):
self.interface.coaps_get()
def commissioner_mgmtset(self, tlvs_binary):
self.interface.commissioner_mgmtset(tlvs_binary)
def commissioner_mgmtset_with_tlvs(self, tlvs):
self.interface.commissioner_mgmtset_with_tlvs(tlvs)
if __name__ == '__main__':
unittest.main()