def test_library_include_recursive(self): lib1 = view.library( 'test-lib1', path='http://ptah.org/style1.css', type='css') lib2 = view.library( 'test-lib2', path='http://ptah.org/style2.css', type='css', require='test-lib1') lib3 = view.library( 'test-lib3', path='http://ptah.org/style3.css', type='css', require=('test-lib1', 'test-lib2')) lib4 = view.library( 'test-lib4', path='http://ptah.org/style4.css', type='css', require=('test-lib1', 'test-lib2')) self._init_ptah() view.include('test-lib3', self.request) view.include('test-lib4', self.request) self.assertEqual( view.render_includes(self.request), """<link type="text/css" rel="stylesheet" href="http://ptah.org/style1.css" /> <link type="text/css" rel="stylesheet" href="http://ptah.org/style2.css" /> <link type="text/css" rel="stylesheet" href="http://ptah.org/style3.css" /> <link type="text/css" rel="stylesheet" href="http://ptah.org/style4.css" />""")
def test_library_include(self): view.library( 'test-lib', path='http://ptah.org/style.css', type='css') self._init_ptah() view.include(self.request, 'test-lib') self.assertEqual( view.render_includes(self.request), '<link type="text/css" rel="stylesheet" href="http://ptah.org/style.css" />')
def test_library_render_absurls(self): view.library( 'test-lib', path='http://ptah.org/style.css', type='css') self._init_ptah() from ptah.view.library import LIBRARY_ID lib = config.get_cfg_storage(LIBRARY_ID)['test-lib'] self.assertEqual( lib.render(self.request), '<link type="text/css" rel="stylesheet" href="http://ptah.org/style.css" />')
def test_library_simple_js(self): view.library( 'test-lib', path='http://ptah.org/test.js', type='js') self._init_ptah() from ptah.view.library import LIBRARY_ID lib = config.get_cfg_storage(LIBRARY_ID)['test-lib'] self.assertEqual( lib.render(self.request), '<script src="http://ptah.org/test.js"> </script>')
def test_library_View_include(self): view.library('test-lib', path='http://ptah.org/test.js', type='js') self._init_ptah() base = view.View(None, self.request) base.include('test-lib') self.assertEqual( base.render_includes(), '<script src="http://ptah.org/test.js"> </script>')
def test_library_render_with_extra(self): view.library( 'test-lib', path='http://ptah.org/test.js', type='js', extra={'test': "extra"}) self._init_ptah() from ptah.view.library import LIBRARY_ID lib = config.get_cfg_storage(LIBRARY_ID)['test-lib'] self.assertEqual( lib.render(self.request), '<script test="extra" src="http://ptah.org/test.js"> </script>')
def test_library_render_with_prefix_postfix(self): view.library( 'test-lib', path='http://ptah.org/style.css', type='css', prefix='<!--[if lt IE 7 ]>', postfix='<![endif]-->') self._init_ptah() from ptah.view.library import LIBRARY_ID lib = config.get_cfg_storage(LIBRARY_ID)['test-lib'] self.assertEqual( lib.render(self.request), '<!--[if lt IE 7 ]><link type="text/css" rel="stylesheet" href="http://ptah.org/style.css" /><![endif]-->')
def test_library_include_resource(self): view.static('tests2', 'ptah.view.tests:static/dir1') view.library( 'test-lib', path='style.css', resource='tests2', type='css') self._init_ptah() request = self._makeRequest() view.include(request, 'test-lib') self.assertEqual( view.render_includes(request), '<link type="text/css" rel="stylesheet" href="http://localhost:8080/static/tests2/style.css" />')
def test_library_simple_css(self): view.static('tests', 'ptah.view.tests:static/dir1') view.library( 'test-lib', path='style.css', resource='tests', type='css') self._init_ptah() from ptah.view.library import LIBRARY_ID lib = config.get_cfg_storage(LIBRARY_ID)['test-lib'] self.assertEqual(lib.name, 'test-lib') self.assertEqual(len(lib.entries), 1) self.assertEqual(len(lib.entries), 1) self.assertTrue('style.css' in lib.entries[0].paths) self.assertEqual( repr(lib), '<ptah.view.library.Library "test-lib">')
""" static assets """ from ptah import view view.static('jquery', 'ptah:static/jquery') view.static('bootstrap', 'ptah:static/bootstrap') view.static('tiny_mce', 'ptah:static/tiny_mce') # jQuery library view.library( 'jquery', path="jquery-1.6.4.min.js", resource="jquery", type="js") view.library( 'jquery-ui', path="jquery-ui-1.8.16.min.js", type="js", resource="jquery", require="jquery") view.library( 'jquery-ui', path="jquery-ui.css", resource="jquery", type='css') # Bootstrap css view.library( 'bootstrap', path="bootstrap-1.4.0.min.css",
""" static assets """ from ptah import view view.static('jquery', 'ptah:static/jquery') view.static('bootstrap', 'ptah:static/bootstrap') view.static('tiny_mce', 'ptah:static/tiny_mce') # jQuery library view.library( 'jquery', path="jquery-1.6.4.min.js", resource="jquery", type="js") view.library( 'jquery-ui', path="jquery-ui-1.8.16.min.js", type="js", resource="jquery", require="jquery") view.library( 'jquery-ui', path="jquery-ui.css", resource="jquery", type='css') # Bootstrap css view.library( 'bootstrap', path="bootstrap-1.3.0.min.css",
""" TineMCE field """ from ptah import view, form # TinyMCE view.static( 'tiny_mce', 'ptah.cmsapp:static/tiny_mce') view.library( "tiny_mce", resource="tiny_mce", path=('tiny_mce.js', 'jquery.tinymce.js'), type="js", require='jquery') class TinymceField(form.TextAreaField): __doc__ = u'TinyMCE Text Area input widget' form.field('tinymce') klass = u'tinymce-widget' width = '400px' height = '300px' theme = "advanced" tmpl_input = view.template( "ptah.cmsapp:templates/tinymce_input.pt")