Esempio n. 1
0
class SearchNewsPage(Page):
    '''
    Search News Articles page
    '''

    def __init__(self, browser, load=True):
        self._config = ConfigReader(self.__class__.__name__)
        page_url = self._config.get_page_locator('Url', 'url') + \
                self._config.get_locator('url') 
        Page.__init__(self, browser, page_url, load)
        
    def search_news_articles(self, search_query):
        '''
        Search news articles according to given text
        
        :Args:
            search_query - text to find.
            
        :Usage:
            page.search_news_articles('weather')
        '''
        box = TextBox(self._browser, self._config.get_locator('search_text'))
        box.set_text(search_query)
        elem = Element(self._browser, self._config.get_locator('search_btn'))
        elem.click()
        
        return self
    
    def count_search_resutls(self):
        box = TextBox(self._browser, self._config.get_locator('result_lbl'))
        if (box.get_text().find('not found') != -1):
            return 0
        return 1
        
        
Esempio n. 2
0
class RecentTransPage(Page):
    '''
    View Recent Transaction
    '''

    def __init__(self, browser, load = True):
        self._config = ConfigReader(self.__class__.__name__)
        page_url = self._config.get_page_locator('Url', 'url') + \
                self._config.get_locator('url')
        Page.__init__(self, browser, page_url, load)
        
    def search_transaction(self, after_date, before_date):
        '''
        Start searching transactions 
        in the range from [before_date] to the [after_date]
        
        :Args:
            before_date - String, before date [format: mm/dd/yyyy]
            after_date - String, after date [format: mm/dd/yyyy]
        
        :Usage:
            page.search_transaction('01/04/1920','04/04/2011')
        '''
        box = TextBox(self._browser, self._config.get_locator('after_date'))
        box.set_text(after_date)
        box.set_locator('before_date')
        box.set_text(before_date)
        elem = Element(self._browser, self._config.get_locator('submit_btn'))
        elem.click()
        
        return self
    
    def get_results_count(self):
        pass
Esempio n. 3
0
class MainPage(Page):
    '''
    MainPage
    '''
    
    def __init__(self, browser, load=True):
        self._config = ConfigReader(self.__class__.__name__)
        url = self._config.get_page_locator('Url', 'url') + \
                self._config.get_locator('url')
        Page.__init__(self, browser, url, load)
    
    def logout(self):
        elem = Element(self._browser, self._config.get_locator('logout_link'))
        elem.click()
        
        page = HomePage(self._browser, False)
        assert page.is_logged_in() == False
        return page
    
    def open_recent_transactions_page(self):
        elem = Element(self._browser, self._config.get_locator('recent_trans_link'))
        elem.click()
        
        page = RecentTransPage(self._browser, False)
        return page
    
    def open_search_news_page(self):
        elem = Element(self._browser, self._config.get_locator('search_news_link'))
        elem.click()
        
        page = SearchNewsPage(self._browser, False)
        return page       
Esempio n. 4
0
class SearchNewsPage(Page):
    '''
    Search News Articles page
    '''
    def __init__(self, browser, load=True):
        self._config = ConfigReader(self.__class__.__name__)
        page_url = self._config.get_page_locator('Url', 'url') + \
                self._config.get_locator('url')
        Page.__init__(self, browser, page_url, load)

    def search_news_articles(self, search_query):
        '''
        Search news articles according to given text
        
        :Args:
            search_query - text to find.
            
        :Usage:
            page.search_news_articles('weather')
        '''
        box = TextBox(self._browser, self._config.get_locator('search_text'))
        box.set_text(search_query)
        elem = Element(self._browser, self._config.get_locator('search_btn'))
        elem.click()

        return self

    def count_search_resutls(self):
        box = TextBox(self._browser, self._config.get_locator('result_lbl'))
        if (box.get_text().find('not found') != -1):
            return 0
        return 1
Esempio n. 5
0
class MainPage(Page):
    '''
    MainPage
    '''
    def __init__(self, browser, load=True):
        self._config = ConfigReader(self.__class__.__name__)
        url = self._config.get_page_locator('Url', 'url') + \
                self._config.get_locator('url')
        Page.__init__(self, browser, url, load)

    def logout(self):
        elem = Element(self._browser, self._config.get_locator('logout_link'))
        elem.click()

        page = HomePage(self._browser, False)
        assert page.is_logged_in() == False
        return page

    def open_recent_transactions_page(self):
        elem = Element(self._browser,
                       self._config.get_locator('recent_trans_link'))
        elem.click()

        page = RecentTransPage(self._browser, False)
        return page

    def open_search_news_page(self):
        elem = Element(self._browser,
                       self._config.get_locator('search_news_link'))
        elem.click()

        page = SearchNewsPage(self._browser, False)
        return page
Esempio n. 6
0
class RecentTransPage(Page):
    '''
    View Recent Transaction
    '''
    def __init__(self, browser, load=True):
        self._config = ConfigReader(self.__class__.__name__)
        page_url = self._config.get_page_locator('Url', 'url') + \
                self._config.get_locator('url')
        Page.__init__(self, browser, page_url, load)

    def search_transaction(self, after_date, before_date):
        '''
        Start searching transactions 
        in the range from [before_date] to the [after_date]
        
        :Args:
            before_date - String, before date [format: mm/dd/yyyy]
            after_date - String, after date [format: mm/dd/yyyy]
        
        :Usage:
            page.search_transaction('01/04/1920','04/04/2011')
        '''
        box = TextBox(self._browser, self._config.get_locator('after_date'))
        box.set_text(after_date)
        box.set_locator('before_date')
        box.set_text(before_date)
        elem = Element(self._browser, self._config.get_locator('submit_btn'))
        elem.click()

        return self

    def get_results_count(self):
        pass
Esempio n. 7
0
class HomePage(Page):
    '''
    HomePage
    '''
    def __init__(self, browser, load=True):
        self._config = ConfigReader("HomePage")
        page_url = self._config.get_page_locator('Url', 'url') + \
                    self._config.get_locator('url')
        Page.__init__(self, browser, page_url, load)

    def is_logged_in(self):
        elem = Element(self._browser, self._config.get_locator('login_link'))
        return not (elem.exists() and elem.is_visible())

    def get_login_page(self):
        if not self.is_logged_in():
            elem = Element(self._browser,
                           self._config.get_locator('login_link'))
            elem.click()
            return LoginPage(self._browser)
        return self
Esempio n. 8
0
class HomePage(Page):
    '''
    HomePage
    '''

    def __init__(self, browser, load=True):
        self._config = ConfigReader("HomePage")
        page_url = self._config.get_page_locator('Url', 'url') + \
                    self._config.get_locator('url')
        Page.__init__(self, browser, page_url, load)
    
    def is_logged_in(self):
        elem = Element(self._browser, self._config.get_locator('login_link'))
        return not (elem.exists() and elem.is_visible())
    
    def get_login_page(self):
        if not self.is_logged_in():
            elem = Element(self._browser, self._config.get_locator('login_link'))
            elem.click()
            return LoginPage(self._browser)
        return self
Esempio n. 9
0
class LoginPage(Page):
    '''
    LoginPage
    '''
    def __init__(self, browser, load=False):
        self._config = ConfigReader(self.__class__.__name__)
        url = self._config.get_page_locator('Url', 'url') + \
                self._config.get_locator('url')
        Page.__init__(self, browser, url, load)

    def login(self, user, password):
        from mainpage import MainPage
        from homepage import HomePage

        box = TextBox(self._browser, self._config.get_locator('username'))
        box.set_text(user)
        box.set_locator(self._config.get_locator('password'))
        box.set_text(password)
        elem = Element(self._browser, self._config.get_locator('submit'))
        elem.click()

        page = HomePage(self._browser, False)
        if not page.is_logged_in():
            msg = "Login failed"
            box.set_locator(self._config.get_locator('err_msg'))
            if (box.exists()):
                msg = box.get_text()
            assert msg == ''
        return MainPage(self._browser, False)
Esempio n. 10
0
class LoginPage(Page):
    """
    LoginPage
    """

    def __init__(self, browser, load=False):
        self._config = ConfigReader(self.__class__.__name__)
        url = self._config.get_page_locator("Url", "url") + self._config.get_locator("url")
        Page.__init__(self, browser, url, load)

    def login(self, user, password):
        from mainpage import MainPage
        from homepage import HomePage

        box = TextBox(self._browser, self._config.get_locator("username"))
        box.set_text(user)
        box.set_locator(self._config.get_locator("password"))
        box.set_text(password)
        elem = Element(self._browser, self._config.get_locator("submit"))
        elem.click()

        page = HomePage(self._browser, False)
        if not page.is_logged_in():
            msg = "Login failed"
            box.set_locator(self._config.get_locator("err_msg"))
            if box.exists():
                msg = box.get_text()
            assert msg == ""
        return MainPage(self._browser, False)
Esempio n. 11
0
 def __init__(self, browser, load=False):
     self._config = ConfigReader(self.__class__.__name__)
     url = self._config.get_page_locator('Url', 'url') + \
             self._config.get_locator('url')
     Page.__init__(self, browser, url, load)
Esempio n. 12
0
 def __init__(self, browser, load=False):
     self._config = ConfigReader(self.__class__.__name__)
     url = self._config.get_page_locator("Url", "url") + self._config.get_locator("url")
     Page.__init__(self, browser, url, load)
Esempio n. 13
0
 def __init__(self, browser, load = True):
     self._config = ConfigReader(self.__class__.__name__)
     page_url = self._config.get_page_locator('Url', 'url') + \
             self._config.get_locator('url')
     Page.__init__(self, browser, page_url, load)
Esempio n. 14
0
 def __init__(self, browser, load=True):
     self._config = ConfigReader("HomePage")
     page_url = self._config.get_page_locator('Url', 'url') + \
                 self._config.get_locator('url')
     Page.__init__(self, browser, page_url, load)
Esempio n. 15
0
 def __init__(self, browser, load=True):
     self._config = ConfigReader("HomePage")
     page_url = self._config.get_page_locator('Url', 'url') + \
                 self._config.get_locator('url')
     Page.__init__(self, browser, page_url, load)