33import pytest
44from django .core import management
55
6- from static_precompiler import settings
6+ import static_precompiler . settings
77from static_precompiler .management .commands import compilestatic
88
99
1010def test_get_scanned_dirs ():
1111
1212 assert compilestatic .get_scanned_dirs () == sorted ([
13+ os .path .join (os .path .dirname (__file__ ), "compilestatic" ),
1314 os .path .join (os .path .dirname (__file__ ), "staticfiles_dir" ),
1415 os .path .join (os .path .dirname (__file__ ), "staticfiles_dir_with_prefix" ),
15- settings .STATIC_ROOT
16+ static_precompiler . settings .STATIC_ROOT ,
1617 ])
1718
1819
1920@pytest .mark .django_db
20- def test_compilestatic_command (monkeypatch , tmpdir ):
21+ @pytest .mark .parametrize ("verbosity" , (0 , 1 , ))
22+ def test_compilestatic_command (verbosity , capsys , monkeypatch , tmpdir ):
2123
24+ monkeypatch .setattr ("static_precompiler.management.commands.compilestatic.get_scanned_dirs" , lambda : (
25+ os .path .join (os .path .dirname (__file__ ), "compilestatic" ),
26+ ))
2227 monkeypatch .setattr ("static_precompiler.settings.ROOT" , tmpdir .strpath )
2328
24- management .call_command ("compilestatic" )
29+ management .call_command ("compilestatic" , verbosity = verbosity )
2530
26- output_path = os .path .join (tmpdir .strpath , settings .OUTPUT_DIR )
31+ output_path = os .path .join (tmpdir .strpath , static_precompiler . settings .OUTPUT_DIR )
2732
2833 compiled_files = []
2934 for root , dirs , files in os .walk (output_path ):
@@ -33,16 +38,18 @@ def test_compilestatic_command(monkeypatch, tmpdir):
3338 compiled_files .sort ()
3439
3540 assert compiled_files == [
36- "another_test.js" ,
37- "scripts/test.js" ,
38- "styles/less/imported.css" ,
39- "styles/less/test.css" ,
40- "styles/sass/precision.css" ,
41- "styles/sass/test.css" ,
42- "styles/stylus/A.css" ,
43- "styles/stylus/B/C.css" ,
44- "styles/stylus/D.css" ,
45- "styles/stylus/E/F.css" ,
46- "styles/stylus/E/index.css" ,
47- "test-compass.css" ,
41+ "coffee/test.js" ,
42+ "less/test.css" ,
43+ "scss/test.css" ,
4844 ]
45+
46+ stdout , _ = capsys .readouterr ()
47+
48+ if verbosity >= 1 :
49+ assert stdout == (
50+ "Compiled 'coffee/test.coffee' to 'COMPILED/coffee/test.js'\n "
51+ "Compiled 'less/test.less' to 'COMPILED/less/test.css'\n "
52+ "Compiled 'scss/test.scss' to 'COMPILED/scss/test.css'\n "
53+ )
54+ else :
55+ assert stdout == ""
0 commit comments