<s> from robotpageobjects import Page , robot_alias <EOL> from robot . utils import asserts <EOL> class MyBasePage ( Page ) : <EOL> uri = "<STR_LIT>" <EOL> def footer_text_should_be ( self , text ) : <EOL> return self <EOL> class SubA ( MyBasePage ) : <EOL> def search_for ( self , term ) : <EOL> self . input_text ( "<STR_LIT:q>" , "<STR_LIT>" ) <EOL> self . click_element ( "<STR_LIT>" ) <EOL> return SubB ( ) <EOL> class SubB ( MyBasePage ) : <EOL> pass <EOL> class A ( Page ) : <EOL> uri = "<STR_LIT>" <EOL> def footer_text_should_be ( self , text ) : <EOL> return self <EOL> def search_for ( self , term ) : <EOL> self . input_text ( "<STR_LIT:q>" , "<STR_LIT>" ) <EOL> self . click_element ( "<STR_LIT>" ) <EOL> return B ( ) <EOL> class B ( Page ) : <EOL> uri = "<STR_LIT>" <EOL> def footer_text_should_be ( self , text ) : <EOL> return self <EOL> class C ( Page ) : <EOL> uri = "<STR_LIT>" <EOL> def input_text ( self , text ) : <EOL> super ( C , self ) . input_text ( "<STR_LIT:q>" , text ) <EOL> return self <EOL> def search_input_text_should_be ( self , text ) : <EOL> self . textfield_value_should_be ( "<STR_LIT:q>" , text ) <EOL> return self <EOL> def footer_text_should_be ( self , text ) : <EOL> return self <EOL> class DoesNotReturnPage ( Page ) : <EOL> uri = "<STR_LIT>" <EOL> def footer_text_should_be ( self , text ) : <EOL> pass <EOL> class AliasedMethodPage ( Page ) : <EOL> uri = "<STR_LIT>" <EOL> @ robot_alias ( "<STR_LIT>" ) <EOL> def do_something ( self ) : <EOL> return self <EOL> def do_something_no_alias ( self ) : <EOL> return self </s>
