예제 #1
0
 def test_parse_imported_pages(self):
     code = (
         'from projects.project_name.pages import page1\n'
         'from projects.project_name.pages import page2, page3\n'
         'from projects.project_name.pages.module import page4\n'
         'from projects.project_name.pages.module import page5, page6\n'
         'from projects.project_name.pages.module.sub_module import page7\n'
         '\n'
         'def test(data):\n'
         '    pass')
     pages = test_parser.parse_imported_pages(code)
     assert pages == [
         'page1', 'page2', 'page3', 'module.page4', 'module.page5',
         'module.page6', 'module.sub_module.page7'
     ]
     # new line between imports
     code = ('from projects.project_name.pages import page1\n'
             '\n'
             'from projects.project_name.pages import page2\n'
             '\n'
             'def test(data):\n'
             '    pass')
     pages = test_parser.parse_imported_pages(code)
     assert pages == ['page1', 'page2']
     # invalid import format
     code = ('from project_name.pages import page1\n'
             'from projects.project_name import page2\n'
             'from project_name.pages import *\n'
             'from project_name.pages.page1 import *\n'
             '\n'
             'def test(data):\n'
             '    pass')
     pages = test_parser.parse_imported_pages(code)
     assert pages == []
예제 #2
0
 def pages(self):
     page_list = getattr(self.get_module(), 'pages', [])
     imported_pages = test_parser.parse_imported_pages(self.code)
     return page_list + imported_pages