aboutsummaryrefslogtreecommitdiff
path: root/tests/test_loader.py
AgeCommit message (Collapse)Author
2017-01-06Cleaned up shitty syntax in testsuiteArmin Ronacher
2016-05-21Change environment cache key constructionpgjones
Changing from a tuple of the loader ID and template name to a weakref to the loader and the template name should avoid situations whereby the loader has changed, yet the cached templates are returned. This would occur if the id of the new loader matches the old. A weakref is preferred over a direct reference so that the loader can be garbaged collected.
2016-05-19Change cache key definitiion in environmentpgjones
In 6671b973e6de5abc46829a27fd3bbb989d68ca3a the load_template method was altered to use a cache key other than the template name. The key chosen was the abs path as returned from the loader get_source method. Unless there is no path in which case the name is used. Unfortunately this introduced a performance regression, #485, as the get_source method (in the FileStoreLoader) loads the template (causing IO). The purpose of #332 was to allow the loader to change whilst ensuring the correct template was loaded, i.e. to fix this case env.loader = loader1 env.get_template('index.html') # return loader1/index.html env.loader = loader2 env.get_template('index.html') # also return loader1/index.html because of cache This commit changes the cache key to be a tuple of the id(loader) and the template name. Therefore fixing the above case without calling the get_source method and thereby avoiding the IO load. A test has been added to ensure the above case works as expected, this required a minor refactor of the caching tests.
2015-03-22Rename testsuite to tests and suggestionsKartheek Lenkala
Remove py.test from setup.py install_requires Rename testsuite folder to tests.