@@ -17,25 +17,41 @@ def setUp(self):
1717 def tearDown (self ):
1818 pass
1919
20+ def _iter_items (self , items ):
21+ for item in items :
22+ yield item
23+ children = item .get ('item' , [])
24+ if isinstance (children , list ):
25+ for child in self ._iter_items (children ):
26+ yield child
27+
28+ def _find_item_by_name (self , name ):
29+ for item in self ._iter_items (self .json_data .get ('item' , [])):
30+ if item .get ('name' ) == name :
31+ return item
32+ return None
33+
34+ def _get_query_param_request (self ):
35+ item = self ._find_item_by_name ('Get User Info by Query Param' )
36+ self .assertIsNotNone (item )
37+ return item ['request' ]
38+
2039 def test_request_parameter_description (self ):
21- # request url
22- request = self .json_data ['item' ][2 ]['item' ][1 ]['item' ][0 ]['request' ]
40+ request = self ._get_query_param_request ()
2341 self .assertEqual (request ['url' ]['raw' ], '{{baseUrl}}/users/' )
2442 # first query parameter
2543 self .assertEqual (request ['url' ]['query' ][0 ]['key' ], 'pUserId' )
2644 self .assertEqual (request ['url' ]['query' ][0 ]['value' ], '888' )
2745 self .assertEqual (request ['url' ]['query' ][0 ]['description' ], 'Query Id.' )
2846
2947 def test_request_parameter_required (self ):
30- # request url
31- request = self .json_data ['item' ][2 ]['item' ][1 ]['item' ][0 ]['request' ]
48+ request = self ._get_query_param_request ()
3249 self .assertEqual (request ['url' ]['raw' ], '{{baseUrl}}/users/' )
3350 # first query parameter
3451 self .assertEqual (request ['url' ]['query' ][0 ]['disabled' ], False )
3552
3653 def test_request_header (self ):
37- # request url
38- request = self .json_data ['item' ][2 ]['item' ][1 ]['item' ][0 ]['request' ]
54+ request = self ._get_query_param_request ()
3955 self .assertEqual (request ['url' ]['raw' ], '{{baseUrl}}/users/' )
4056 # headers
4157 self .assertEqual (request ['header' ][0 ]['key' ], 'Accept' )
0 commit comments