def get_selected_page_object_elements(): if request.method == 'POST': project = request.form['project'] page_name = request.form['pageObject'] po_elements = page_object.get_page_object_content(project, page_name) print(po_elements) return json.dumps(po_elements)
def page_view(project, full_page_name, no_sidebar=False): path = page_object.generate_page_path(root_path, project, full_page_name) page_exists_ = page_object.page_exists(test_execution.root_path, project, full_page_name) if not page_exists_: abort(404, 'The page {} does not exist'.format(full_page_name)) _, error = utils.import_module(path) if error: if no_sidebar: url = url_for('page_code_view_no_sidebar', project=project, full_page_name=full_page_name) else: url = url_for('page_code_view', project=project, full_page_name=full_page_name) content = ('<h4>There are errors in the page</h4>' '<p>There are errors and the page cannot be displayed, ' 'open the page code editor to solve them.</p>' '<a class="btn btn-default" href="{}">Open Page Code</a>' .format(url)) return render_template('common_element_error.html', project=project, item_name=full_page_name, content=content, no_sidebar=no_sidebar) else: page_data = page_object.get_page_object_content(project, full_page_name) return render_template('page_builder/page_object.html', project=project, page_object_data=page_data, page_name=full_page_name, no_sidebar=no_sidebar)
def page_view(project, full_page_name): if not user.has_permissions_to_project(g.user.id, project, root_path, 'gui'): return render_template('not_permission.html') page_object_data = page_object.get_page_object_content(root_path, project, full_page_name) return render_template('page_object.html', project=project, page_object_data=page_object_data, page_name=full_page_name)
def get_selected_page_object_elements(): if request.method == 'POST': project = request.form['project'] page_name = request.form['pageObject'] result = {'error': None, 'content': []} if not page_object.page_exists(root_path, project, page_name): result['error'] = 'page does not exist' else: result['content'] = page_object.get_page_object_content( project, page_name) return json.dumps(result)
def get_selected_page_object_elements(): project = request.args['project'] page = request.args['page'] result = { 'error': '', 'contents': [] } if not page_object.page_exists(root_path, project, page): result['error'] = 'page does not exist' else: result['content'] = page_object.get_page_object_content(project, page) return json.dumps(result)
def get_selected_page_object_elements(): if request.method == 'POST': project = request.form['project'] page_name = request.form['pageObject'] result = { 'error': None, 'content': [] } if not page_object.page_exists(root_path, project, page_name): result['error'] = 'page does not exist' else: result['content'] = page_object.get_page_object_content(project, page_name) return json.dumps(result)
def test_get_page_object_content(self, permanent_project_fixture): project = permanent_project_fixture['name'] testdir = permanent_project_fixture['testdir'] page_name = 'page_test_get_content_ab1412' page_object.new_page_object(testdir, project, [], page_name, add_parents=False) page_path = os.path.join(testdir, 'projects', project, 'pages', page_name + '.py') with open(page_path, 'w') as page_file: page_file.write('elem1 = (\'id\', \'someId\', \'Elem1\')\n') page_file.write('def func1(c, b, a):\n') page_file.write(' pass') content = page_object.get_page_object_content(project, page_name) expected = { 'functions': [{ 'function_name': 'func1', 'full_function_name': 'page_test_get_content_ab1412.func1', 'description': None, 'arguments': ['c', 'b', 'a'], 'code': 'def func1(c, b, a):\n pass\n' }], 'elements': [{ 'element_name': 'elem1', 'element_selector': 'id', 'element_value': 'someId', 'element_display_name': 'Elem1', 'element_full_name': 'page_test_get_content_ab1412.elem1' }], 'import_lines': [], 'code_lines': [ "elem1 = ('id', 'someId', 'Elem1')", 'def func1(c, b, a):', ' pass', '' ], 'source_code': ("elem1 = ('id', 'someId', 'Elem1')\ndef func1(c, b, a):\n" " pass\n") } assert content == expected
def page_view(project, full_page_name, no_sidebar=False): if not user.has_permissions_to_project(g.user.id, project, root_path, 'gui'): return render_template('not_permission.html') path = page_object.generate_page_path(root_path, project, full_page_name) error = utils.validate_python_file_syntax(path) if error: return render_template('page_builder/page_syntax_error.html', project=project, full_page_name=full_page_name) else: page_data = page_object.get_page_object_content(project, full_page_name) return render_template('page_builder/page_object.html', project=project, page_object_data=page_data, page_name=full_page_name, no_sidebar=no_sidebar)
def test_get_page_object_content(self, project_session): testdir = project_session.testdir project = project_session.name page_name = 'page_test_get_content_ab1412' page_object.new_page_object(testdir, project, [], page_name) page_path = os.path.join(project_session.path, 'pages', page_name + '.py') with open(page_path, 'w') as page_file: page_file.write('elem1 = (\'id\', \'someId\', \'Elem1\')\n') page_file.write('def func1(c, b, a):\n') page_file.write(' pass') from golem.core import test_execution test_execution.root_path = testdir content = page_object.get_page_object_content(project, page_name) expected = { 'functions': [{ 'function_name': 'func1', 'full_function_name': 'page_test_get_content_ab1412.func1', 'description': None, 'arguments': ['c', 'b', 'a'], 'code': 'def func1(c, b, a):\n pass\n' }], 'elements': [{ 'element_name': 'elem1', 'element_selector': 'id', 'element_value': 'someId', 'element_display_name': 'Elem1', 'element_full_name': 'page_test_get_content_ab1412.elem1' }], 'import_lines': [], 'code_lines': [ "elem1 = ('id', 'someId', 'Elem1')", 'def func1(c, b, a):', ' pass', '' ], 'source_code': ("elem1 = ('id', 'someId', 'Elem1')\ndef func1(c, b, a):\n" " pass\n") } assert content == expected
def test_get_page_object_content(self, testdir_fixture, random_project_fixture): project = random_project_fixture['name'] page_name = 'page_test_get_content' page_object.new_page_object(testdir_fixture['path'], project, [], page_name, add_parents=False) page_path = os.path.join(testdir_fixture['path'], 'projects', project, 'pages', page_name + '.py') with open(page_path, 'w') as page_file: page_file.write('elem1 = (\'id\', \'someId\', \'Elem1\')\n') page_file.write('def func1(c, b, a):\n') page_file.write(' pass') #sys.path.append(testdir_fixture['path']) content = page_object.get_page_object_content(project, page_name) expected = { 'function_list': [ { 'function_name': 'func1', 'full_function_name': 'page_test_get_content.func1', 'description': None, 'arguments': ['c', 'b', 'a'], 'code': 'def func1(c, b, a):\n pass\n' }], 'element_list': [ { 'element_name': 'elem1', 'element_selector': 'id', 'element_value': 'someId', 'element_display_name': 'Elem1', 'element_full_name': 'page_test_get_content.elem1' }], 'import_lines': [], 'code_line_list': ["elem1 = ('id', 'someId', 'Elem1')", 'def func1(c, b, a):', ' pass', ''], 'source_code': "elem1 = ('id', 'someId', 'Elem1')\ndef func1(c, b, a):\n pass\n" } assert content == expected