def test_get_assets_from_list_excludes_EXCLUDE_LIBS(): core.config['EXCLUDE_LIBS'] = ["not_this_one.css"] asset_uri_base = "/server/here/" css_files = ["this_one.css", "not_this_one.css"] css_assets = core.get_assets_from_list(asset_uri_base, 'css', css_files) assert len(css_assets) == 1 assert "not_this_one.css" not in css_assets
def render_html(fp, src=None): """Render a tabular file to html :param fp: file pointer object :return: RenderResult object containing html and assets """ columns, rows = populate_data(fp) max_size = config['max_size'] table_width = config['table_width'] table_height = config['table_height'] if len(columns) > max_size or len(rows) > max_size: raise TableTooBigException("Table is too large to render.") if len(columns) < 1 or len(rows) < 1: raise EmptyTableException("Table is empty or corrupt.") table_size = 'small_table' if len(columns) < 9 else 'big_table' slick_grid_options = config.get('slick_grid_options').get(table_size) HERE = os.path.dirname(os.path.abspath(__file__)) filename = os.path.join(HERE, 'templates', 'tabular.html') with open(filename) as template: content = template.read().format( width=table_width, height=table_height, columns=json.dumps(columns), rows=json.dumps(rows), writing="", options=json.dumps(slick_grid_options), ) assets_uri_base = '{0}/mfr_tabular'.format(mfr.config['STATIC_URL']) assets = { 'css': get_assets_from_list(assets_uri_base, 'css', CSS_ASSETS), 'js': get_assets_from_list(assets_uri_base, 'js', JS_ASSETS), } return RenderResult(content=content, assets=assets)
def test_get_assets_from_list(): js_files = ["test_file.js"] asset_uri_base = "/server/here/" js_assets = core.get_assets_from_list(asset_uri_base, 'js', js_files) assert js_assets == ["/server/here/js/test_file.js"]