@@ -38,27 +38,40 @@ def setup_method(self, method):
3838 def teardown_method (self , method ):
3939 self .driver .quit ()
4040
41+ def _find_elem_xpath (self , xpath_expr , ** kwargs ):
42+ elems = self .driver .find_elements (By .XPATH , xpath_expr )
43+ assert elems is not None
44+ return elems
45+
4146 def _find_and_click (self , timeout_sec , by , by_expr , ** kwargs ):
42- elem = WebDriverWait (self .driver , timeout_sec ).until (EC .visibility_of_element_located ((by , by_expr )))
47+ elem = WebDriverWait (self .driver , timeout_sec ).until (
48+ EC .visibility_of_element_located ((by , by_expr )))
4349 assert elem is not None
4450 elem .click ()
4551 return elem
4652
53+ def _find_and_return (self , timeout_sec , by , by_expr , ** kwargs ):
54+ elem = WebDriverWait (self .driver , timeout_sec ).until (
55+ EC .visibility_of_element_located ((by , by_expr )))
56+ assert elem is not None
57+ return elem
58+
4759 def _find_and_sendkey (self , timeout_sec , by , by_expr , txt , ** kwargs ):
48- elem = WebDriverWait (self .driver , timeout_sec ).until (EC .visibility_of_element_located ((by , by_expr )))
60+ elem = WebDriverWait (self .driver , timeout_sec ).until (
61+ EC .visibility_of_element_located ((by , by_expr )))
4962 assert elem is not None
5063 elem .send_keys (txt )
5164 return elem
5265
53- def _assert_EOB_table_header_present (self ):
54- self ._find_and_click (30 , By .ID , "column_1" )
55- self ._find_and_click (30 , By .ID , "column_2" )
56- self ._find_and_click (30 , By .ID , "column_3" )
66+ def _assert_EOB_table_header_present (self ):
67+ self ._find_and_return (30 , By .ID , "column_1" )
68+ self ._find_and_return (30 , By .ID , "column_2" )
69+ self ._find_and_return (30 , By .ID , "column_3" )
5770
58- def _assert_EOB_table_records_present (self ):
59- self . _find_and_click ( 30 , By . ID , "column_1" )
60- self ._find_and_click ( 30 , By . ID , "column_2" )
61- self . _find_and_click ( 30 , By . ID , "column_3" )
71+ def _assert_EOB_table_records_present (self , cnt ):
72+ xpath = "//table/tbody/tr/td[@data-title='NDC Code']"
73+ elements = self ._find_elem_xpath ( xpath )
74+ assert len ( elements ) == cnt
6275
6376 def _input_user_and_passwd_and_login (self ):
6477 self ._find_and_sendkey (30 , By .ID , "username-textbox" , "BBUser10000" )
@@ -73,6 +86,7 @@ def test_node_sample_app_grant_access(self):
7386 self ._input_user_and_passwd_and_login ()
7487 self ._find_and_click (30 , By .ID , "approve" )
7588 self ._assert_EOB_table_header_present ()
89+ self ._assert_EOB_table_records_present (10 )
7690
7791 def test_node_sample_app_grant_access_no_demographic (self ):
7892 self .driver .get ("http://client:3000/" )
@@ -84,6 +98,7 @@ def test_node_sample_app_grant_access_no_demographic(self):
8498 self ._find_and_click (30 , By .CSS_SELECTOR , "label:nth-child(5)" )
8599 self ._find_and_click (30 , By .ID , "approve" )
86100 self ._assert_EOB_table_header_present ()
101+ self ._assert_EOB_table_records_present (10 )
87102
88103 def test_node_sample_app_deny_access (self ):
89104 self .driver .get ("http://client:3000/" )
@@ -93,3 +108,4 @@ def test_node_sample_app_deny_access(self):
93108 self ._input_user_and_passwd_and_login ()
94109 self ._find_and_click (30 , By .ID , "deny" )
95110 self ._assert_EOB_table_header_present ()
111+ self ._assert_EOB_table_records_present (0 )
0 commit comments