1diff --git a/src/webassets/test.py b/src/webassets/test.py
2index 232806c..a362120 100644
3--- a/src/webassets/test.py
4+++ b/src/webassets/test.py
5@@ -27,7 +27,7 @@ class TempDirHelper(object):
6
7 default_files = {}
8
9- def setup(self):
10+ def setup_method(self):
11 self._tempdir_created = tempfile.mkdtemp()
12 self.create_files(self.default_files)
13
14@@ -35,7 +35,7 @@ class TempDirHelper(object):
15 shutil.rmtree(self._tempdir_created)
16
17 def __enter__(self):
18- self.setup()
19+ self.setup_method()
20 return self
21
22 def __exit__(self, type, value, traceback):
23@@ -136,8 +136,8 @@ class TempEnvironmentHelper(TempDirHelper):
24
25 default_files = {'in1': 'A', 'in2': 'B', 'in3': 'C', 'in4': 'D'}
26
27- def setup(self):
28- TempDirHelper.setup(self)
29+ def setup_method(self):
30+ TempDirHelper.setup_method(self)
31
32 self.env = self._create_environment()
33 # Unless we explicitly test it, we don't want to use the cache
34diff --git a/tests/__init__.py b/tests/__init__.py
35index 7d859d3..363b641 100644
36--- a/tests/__init__.py
37+++ b/tests/__init__.py
38@@ -1,4 +1,4 @@
39-def setup():
40+def setup_method():
41 # For some strange reason (using Python 2.6.6), if a warning has
42 # already been raised somewhere else before a test attempts to
43 # capture and verify it using warnings.catch_warnings(), the warning
44diff --git a/tests/test_bundle_build.py b/tests/test_bundle_build.py
45index 9325bb9..86f69b9 100644
46--- a/tests/test_bundle_build.py
47+++ b/tests/test_bundle_build.py
48@@ -473,8 +473,8 @@ class TestAutoBuild(TempEnvironmentHelper):
49 generally everything involving the updater (as used by the build() method).
50 """
51
52- def setup(self):
53- TempEnvironmentHelper.setup(self)
54+ def setup_method(self):
55+ TempEnvironmentHelper.setup_method(self)
56
57 class CustomUpdater(BaseUpdater):
58 allow = True
59diff --git a/tests/test_bundle_urls.py b/tests/test_bundle_urls.py
60index 317889e..9bd8753 100644
61--- a/tests/test_bundle_urls.py
62+++ b/tests/test_bundle_urls.py
63@@ -29,8 +29,8 @@ class BaseUrlsTester(TempEnvironmentHelper):
64
65 default_files = {'a': '', 'b': '', 'c': '', '1': '', '2': ''}
66
67- def setup(self):
68- TempEnvironmentHelper.setup(self)
69+ def setup_method(self):
70+ TempEnvironmentHelper.setup_method(self)
71
72 self.env.url_expire = False
73
74@@ -282,8 +282,8 @@ class TestUrlsWithDebugTrue(BaseUrlsTester):
75 """Test url generation in debug mode.
76 """
77
78- def setup(self):
79- BaseUrlsTester.setup(self)
80+ def setup_method(self):
81+ BaseUrlsTester.setup_method(self)
82 self.env.debug = True
83
84 def test_simple_bundle(self):
85@@ -427,8 +427,8 @@ class TestUrlsWithDebugTrue(BaseUrlsTester):
86
87 class TestUrlsWithDebugMerge(BaseUrlsTester):
88
89- def setup(self):
90- BaseUrlsTester.setup(self)
91+ def setup_method(self):
92+ BaseUrlsTester.setup_method(self)
93 self.env.debug = 'merge'
94
95 def test_simple_bundle(self):
96diff --git a/tests/test_bundle_various.py b/tests/test_bundle_various.py
97index b24a903..6d92eb3 100644
98--- a/tests/test_bundle_various.py
99+++ b/tests/test_bundle_various.py
100@@ -177,8 +177,8 @@ class TestVersionFeatures(TempEnvironmentHelper):
101
102 default_files = {'in': 'foo'}
103
104- def setup(self):
105- super(TestVersionFeatures, self).setup()
106+ def setup_method(self):
107+ super(TestVersionFeatures, self).setup_method()
108 self.env.manifest = DummyManifest()
109 self.env.versions = DummyVersion()
110
111@@ -371,8 +371,8 @@ class TestLoadPath(TempEnvironmentHelper):
112 an optional feature.
113 """
114
115- def setup(self):
116- TempEnvironmentHelper.setup(self)
117+ def setup_method(self):
118+ TempEnvironmentHelper.setup_method(self)
119 self.env.updater = False
120 self.env.directory = self.path('dir')
121 self.env.debug = True
122@@ -603,8 +603,8 @@ class TestUrlContents(TempEnvironmentHelper):
123 """Test bundles containing a URL.
124 """
125
126- def setup(self):
127- TempEnvironmentHelper.setup(self)
128+ def setup_method(self):
129+ TempEnvironmentHelper.setup_method(self)
130 mock_opener = build_opener(MockHTTPHandler({
131 'http://foo': u'function() {}'}))
132 install_opener(mock_opener)
133diff --git a/tests/test_cache.py b/tests/test_cache.py
134index 9afbe3d..f8afb61 100644
135--- a/tests/test_cache.py
136+++ b/tests/test_cache.py
137@@ -89,8 +89,8 @@ class TestCacheIsUsed(TempEnvironmentHelper):
138 """Ensure the cache is used during the build process.
139 """
140
141- def setup(self):
142- TempEnvironmentHelper.setup(self)
143+ def setup_method(self):
144+ TempEnvironmentHelper.setup_method(self)
145
146 class MyCache(BaseCache):
147 def __init__(self):
148diff --git a/tests/test_environment.py b/tests/test_environment.py
149index bd89ef6..ff36289 100644
150--- a/tests/test_environment.py
151+++ b/tests/test_environment.py
152@@ -13,7 +13,7 @@ from webassets import Bundle
153 class TestEnvApi(object):
154 """General Environment functionality."""
155
156- def setup(self):
157+ def setup_method(self):
158 self.m = Environment(None, None)
159
160 def test_register_single_bundle(self):
161@@ -186,7 +186,7 @@ class TestEnvConfig(object):
162 """Custom config values through get_config/set_config.
163 """
164
165- def setup(self):
166+ def setup_method(self):
167 self.m = Environment(None, None)
168
169 def test_initial_values_override_defaults(self):
170@@ -216,7 +216,7 @@ class TestSpecialProperties(object):
171 as a string, and would receive object instances when accessing the property.
172 """
173
174- def setup(self):
175+ def setup_method(self):
176 self.m = Environment('.', None) # we won't create any files
177
178 def test_versioner(self):
179diff --git a/tests/test_ext/test_jinja2.py b/tests/test_ext/test_jinja2.py
180index 37139bb..155ad40 100644
181--- a/tests/test_ext/test_jinja2.py
182+++ b/tests/test_ext/test_jinja2.py
183@@ -12,7 +12,7 @@ from webassets.ext.jinja2 import AssetsExtension, Jinja2Loader
184
185 class TestTemplateTag(object):
186
187- def setup(self):
188+ def setup_method(self):
189 # Setup the assets environment.
190 assets_env = AssetsEnvironment('', '')
191 self.foo_bundle = Bundle()
192@@ -123,8 +123,8 @@ class TestLoader(TempEnvironmentHelper):
193 """
194 }
195
196- def setup(self):
197- TempEnvironmentHelper.setup(self)
198+ def setup_method(self):
199+ TempEnvironmentHelper.setup_method(self)
200 self.jinja_env = JinjaEnvironment()
201 self.jinja_env.add_extension(AssetsExtension)
202 self.jinja_env.assets_environment = self.env
203diff --git a/tests/test_filters.py b/tests/test_filters.py
204index 9976f4e..deec66d 100644
205--- a/tests/test_filters.py
206+++ b/tests/test_filters.py
207@@ -79,7 +79,7 @@ class TestFilterBaseClass(object):
208 env = Environment(None, None)
209 env.config['attr1'] = 'bar'
210 env.config['attr4'] = 'bar'
211- f = TestFilter(); f.ctx = ContextWrapper(env); f.setup()
212+ f = TestFilter(); f.ctx = ContextWrapper(env); f.setup_method()
213 assert f.attr1 == 'bar'
214 assert f.attr4 is None # Was configured to not support env
215
216@@ -177,7 +177,7 @@ class TestExternalToolClass(object):
217 self.__class__.result = \
218 argv, data.getvalue() if data is not None else data
219
220- def setup(self):
221+ def setup_method(self):
222 if not hasattr(str, 'format'):
223 # A large part of this functionality is not available on Python 2.5
224 pytest.skip()
225@@ -630,12 +630,12 @@ class TestBuiltinFilters(TempEnvironmentHelper):
226
227 class TestCSSPrefixer(TempEnvironmentHelper):
228
229- def setup(self):
230+ def setup_method(self):
231 try:
232 import cssprefixer
233 except ImportError:
234 pytest.skip()
235- TempEnvironmentHelper.setup(self)
236+ TempEnvironmentHelper.setup_method(self)
237
238 def test(self):
239 self.create_files({'in': """a { border-radius: 1em; }"""})
240@@ -650,10 +650,10 @@ class TestCSSPrefixer(TempEnvironmentHelper):
241
242 class TestCoffeeScript(TempEnvironmentHelper):
243
244- def setup(self):
245+ def setup_method(self):
246 if not find_executable('coffee'):
247 pytest.skip()
248- TempEnvironmentHelper.setup(self)
249+ TempEnvironmentHelper.setup_method(self)
250
251 def test_default_options(self):
252 self.create_files({'in': "alert \"I knew it!\" if elvis?"})
253@@ -674,12 +674,12 @@ class TestCoffeeScript(TempEnvironmentHelper):
254
255 class TestJinja2(TempEnvironmentHelper):
256
257- def setup(self):
258+ def setup_method(self):
259 try:
260 import jinja2
261 except ImportError:
262 pytest.skip()
263- TempEnvironmentHelper.setup(self)
264+ TempEnvironmentHelper.setup_method(self)
265
266 def test_default_options(self):
267 self.create_files({'in': """Hi there, {{ name }}!"""})
268@@ -705,13 +705,13 @@ class TestClosure(TempEnvironmentHelper):
269 """
270 }
271
272- def setup(self):
273+ def setup_method(self):
274 try:
275 import closure
276 except ImportError:
277 pytest.skip()
278
279- TempEnvironmentHelper.setup(self)
280+ TempEnvironmentHelper.setup_method(self)
281
282 def test_closure(self):
283 self.mkbundle('foo.js', filters='closure_js', output='out.js').build()
284@@ -832,10 +832,10 @@ class TestLess(TempEnvironmentHelper):
285 'foo.less': "h1 { color: #FFFFFF; }",
286 }
287
288- def setup(self):
289+ def setup_method(self):
290 if not find_executable('lessc'):
291 pytest.skip()
292- TempEnvironmentHelper.setup(self)
293+ TempEnvironmentHelper.setup_method(self)
294
295 def test(self):
296 self.mkbundle('foo.less', filters='less', output='out.css').build()
297@@ -928,14 +928,14 @@ class TestRubySass(TempEnvironmentHelper):
298 """,
299 }
300
301- def setup(self):
302+ def setup_method(self):
303 if not find_executable('sass'):
304 pytest.skip()
305
306 if "Ruby" not in check_output(["sass", "--version"]).decode('utf-8'):
307 pytest.skip()
308
309- TempEnvironmentHelper.setup(self)
310+ TempEnvironmentHelper.setup_method(self)
311
312 def test_sass(self):
313 sass = get_filter('sass_ruby', debug_info=False)
314@@ -1038,10 +1038,10 @@ class TestSass(TempEnvironmentHelper):
315 """,
316 }
317
318- def setup(self):
319+ def setup_method(self):
320 if not find_executable('sass'):
321 pytest.skip()
322- TempEnvironmentHelper.setup(self)
323+ TempEnvironmentHelper.setup_method(self)
324
325 def test_sass(self):
326 sass = get_filter('sass')
327@@ -1099,13 +1099,13 @@ class TestPyScss(TempEnvironmentHelper):
328 'bar.scss': 'h1{color:red}'
329 }
330
331- def setup(self):
332+ def setup_method(self):
333 try:
334 import scss
335 self.scss = scss
336 except ImportError:
337 pytest.skip()
338- TempEnvironmentHelper.setup(self)
339+ TempEnvironmentHelper.setup_method(self)
340
341 def test(self):
342 self.mkbundle('foo.scss', filters='pyscss', output='out.css').build()
343@@ -1136,13 +1136,13 @@ class TestLibSass(TempEnvironmentHelper):
344 'b.scss': '$foo: foo !default; .test {background-color: $foo;}'
345 }
346
347- def setup(self):
348+ def setup_method(self):
349 try:
350 import sass
351 self.sass = sass
352 except ImportError:
353 pytest.skip()
354- TempEnvironmentHelper.setup(self)
355+ TempEnvironmentHelper.setup_method(self)
356
357 def test(self):
358 self.mkbundle('foo.scss', filters='libsass', output='out.css').build()
359@@ -1198,10 +1198,10 @@ class TestCompass(TempEnvironmentHelper):
360 """
361 }
362
363- def setup(self):
364+ def setup_method(self):
365 if not find_executable('compass'):
366 pytest.skip()
367- TempEnvironmentHelper.setup(self)
368+ TempEnvironmentHelper.setup_method(self)
369
370 def test_compass(self):
371 self.mkbundle('foo.sass', filters='compass', output='out.css').build()
372@@ -1262,7 +1262,7 @@ class TestCompassConfig(object):
373 }
374 }
375
376- def setup(self):
377+ def setup_method(self):
378 self.compass_config = CompassConfig(self.config).to_string()
379
380 def test_compass_config_is_unicode(self):
381@@ -1294,8 +1294,8 @@ class TestJST(TempEnvironmentHelper):
382 'templates/bar.html': "<div>Im an html jst template. Go syntax highlighting!</div>"
383 }
384
385- def setup(self):
386- TempEnvironmentHelper.setup(self)
387+ def setup_method(self):
388+ TempEnvironmentHelper.setup_method(self)
389
390 def test_jst(self):
391 self.mkbundle('templates/*', filters='jst', output='out.js').build()
392@@ -1424,10 +1424,10 @@ class TestHandlebars(TempEnvironmentHelper):
393 """
394 }
395
396- def setup(self):
397+ def setup_method(self):
398 if not find_executable('handlebars'):
399 pytest.skip()
400- TempEnvironmentHelper.setup(self)
401+ TempEnvironmentHelper.setup_method(self)
402
403 def test_basic(self):
404 self.mkbundle('foo.html', 'dir/bar.html',
405@@ -1461,12 +1461,12 @@ class TestJinja2JS(TempEnvironmentHelper):
406 )
407 }
408
409- def setup(self):
410+ def setup_method(self):
411 try:
412 import closure_soy
413 except:
414 pytest.skip()
415- TempEnvironmentHelper.setup(self)
416+ TempEnvironmentHelper.setup_method(self)
417
418 def test(self):
419 self.mkbundle('foo.soy', filters='closure_tmpl', output='out.js').build()
420@@ -1490,10 +1490,10 @@ class TestTypeScript(TempEnvironmentHelper):
421 'foo.ts': """class X { z: number; }"""
422 }
423
424- def setup(self):
425+ def setup_method(self):
426 if not find_executable('tsc'):
427 pytest.skip()
428- TempEnvironmentHelper.setup(self)
429+ TempEnvironmentHelper.setup_method(self)
430
431 def test(self):
432 self.mkbundle('foo.ts', filters='typescript', output='out.js').build()
433@@ -1521,10 +1521,10 @@ define("script/utils",[],function(){return{debug:console.log}}),\
434 define("script/app",["./utils"],function(e){e.debug("APP")});\
435 '''
436
437- def setup(self):
438+ def setup_method(self):
439 if not find_executable('r.js'):
440 pytest.skip('"r.js" executable not found')
441- TempEnvironmentHelper.setup(self)
442+ TempEnvironmentHelper.setup_method(self)
443 self.env.config['requirejs_config'] = self.path('requirejs.json')
444 self.env.config['requirejs_baseUrl'] = self.path('')
445
446@@ -1573,10 +1573,10 @@ class TestClosureStylesheets(TempEnvironmentHelper):
447 """
448 }
449
450- def setup(self):
451+ def setup_method(self):
452 if not 'CLOSURE_STYLESHEETS_PATH' in os.environ:
453 pytest.skip()
454- TempEnvironmentHelper.setup(self)
455+ TempEnvironmentHelper.setup_method(self)
456
457 def test_compiler(self):
458 self.mkbundle('test.css', filters = 'closure_stylesheets_compiler', output = 'output.css').build()
459diff --git a/tests/test_loaders.py b/tests/test_loaders.py
460index f910ecb..5c183a5 100644
461--- a/tests/test_loaders.py
462+++ b/tests/test_loaders.py
463@@ -14,7 +14,7 @@ from webassets.exceptions import EnvironmentError
464
465 class TestYAML(object):
466
467- def setup(self):
468+ def setup_method(self):
469 yaml = pytest.importorskip("yaml")
470
471 def loader(self, text, filename=None):
472@@ -189,8 +189,8 @@ class TestPython(object):
473
474 class TestYAMLCustomFilters(TestYAML):
475
476- def setup(self):
477- super(TestYAMLCustomFilters, self).setup()
478+ def setup_method(self):
479+ super(TestYAMLCustomFilters, self).setup_method()
480
481 # If zope.dottedname is not installed, that's OK
482 pytest.importorskip("zope.dottedname.resolve")
483diff --git a/tests/test_script.py b/tests/test_script.py
484index 84b9940..479c64b 100644
485--- a/tests/test_script.py
486+++ b/tests/test_script.py
487@@ -38,8 +38,8 @@ class MockBundle(Bundle):
488
489 class TestCLI(TempEnvironmentHelper):
490
491- def setup(self):
492- super(TestCLI, self).setup()
493+ def setup_method(self):
494+ super(TestCLI, self).setup_method()
495 self.assets_env = self.env
496 self.cmd_env = CommandLineEnvironment(self.assets_env, logging)
497
498@@ -210,8 +210,8 @@ class TestWatchCommand(TestWatchMixin, TestCLI):
499
500 default_files = {'in': 'foo', 'out': 'bar'}
501
502- def setup(self):
503- super(TestWatchCommand, self).setup()
504+ def setup_method(self):
505+ super(TestWatchCommand, self).setup_method()
506
507 # Pay particular attention that the watch command works with auto_build
508 # disabled (since normally this implies no use of the updater, but
509diff --git a/tests/test_updaters.py b/tests/test_updaters.py
510index aaa5b72..8c5f48a 100644
511--- a/tests/test_updaters.py
512+++ b/tests/test_updaters.py
513@@ -15,7 +15,7 @@ class TestBundleDefBaseUpdater(object):
514 changes.
515 """
516
517- def setup(self):
518+ def setup_method(self):
519 self.env = Environment(None, None) # we won't create files
520 self.env.cache = MemoryCache(capacity=100)
521 self.bundle = Bundle(output="target")
522@@ -65,8 +65,8 @@ class TestTimestampUpdater(TempEnvironmentHelper):
523
524 default_files = {'in': '', 'out': ''}
525
526- def setup(self):
527- TempEnvironmentHelper.setup(self)
528+ def setup_method(self):
529+ TempEnvironmentHelper.setup_method(self)
530
531 # Test the timestamp updater with cache disabled, so that the
532 # BundleDefUpdater() base class won't interfere.
533diff --git a/tests/test_version.py b/tests/test_version.py
534index d83297d..3aab5eb 100644
535--- a/tests/test_version.py
536+++ b/tests/test_version.py
537@@ -32,8 +32,8 @@ def test_builtin_manifest_accessors():
538
539 class TestTimestampVersion(TempEnvironmentHelper):
540
541- def setup(self):
542- super(TestTimestampVersion, self).setup()
543+ def setup_method(self):
544+ super(TestTimestampVersion, self).setup_method()
545 self.v = TimestampVersion()
546
547 # Create a bunch of files with known mtimes
548@@ -95,8 +95,8 @@ class TestTimestampVersion(TempEnvironmentHelper):
549
550 class TestHashVersion(TempEnvironmentHelper):
551
552- def setup(self):
553- super(TestHashVersion, self).setup()
554+ def setup_method(self):
555+ super(TestHashVersion, self).setup_method()
556 self.v = HashVersion()
557
558 # Create a bunch of files with known content
559@@ -140,8 +140,8 @@ class TestHashVersion(TempEnvironmentHelper):
560
561 class TestFileManifest(TempEnvironmentHelper):
562
563- def setup(self):
564- super(TestFileManifest, self).setup()
565+ def setup_method(self):
566+ super(TestFileManifest, self).setup_method()
567 self.bundle = self.mkbundle(output='foo')
568
569 def test_repl(self):
570@@ -177,8 +177,8 @@ class TestFileManifest(TempEnvironmentHelper):
571
572 class TestJsonManifest(TempEnvironmentHelper):
573
574- def setup(self):
575- super(TestJsonManifest, self).setup()
576+ def setup_method(self):
577+ super(TestJsonManifest, self).setup_method()
578 self.bundle = self.mkbundle(output='foo')
579
580 def test_repl(self):
581@@ -200,8 +200,8 @@ class TestJsonManifest(TempEnvironmentHelper):
582
583 class TestCacheManifest(TempEnvironmentHelper):
584
585- def setup(self):
586- super(TestCacheManifest, self).setup()
587+ def setup_method(self):
588+ super(TestCacheManifest, self).setup_method()
589 self.bundle = self.mkbundle(output='foo')
590
591 def test_repl(self):