Exemple #1
0
    def test_output_popen_error_output(self, popen_mock):
        popen_mock.return_value.wait.return_value = 1
        popen_mock.return_value.communicate.return_value = 'ERROR COMMAND OUTPUT'

        instance = UglifyJSSourcemapFilter(content='')
        with pytest.raises(FilterError) as exc:
            instance.output(root_location='', outfile='out.js', content_meta=[])

        assert str(exc.value) == 'ERROR COMMAND OUTPUT'
Exemple #2
0
    def test_output_popen_exception(self, popen_mock):
        popen_mock.side_effect = OSError('foo')

        instance = UglifyJSSourcemapFilter(content='')
        with pytest.raises(FilterError) as exc:
            instance.output(root_location='', outfile='out.js', content_meta=[])

        assert str(exc.value) == (
            'Unable to apply UglifyJSSourcemapFilter (uglifyjs  -o out.js '
            '--source-map out.map.js --source-map-root /static/ '
            '--source-map-url /static/out.map.js -c -m): foo'
        )
Exemple #3
0
    def test_output_popen_errorcode(self, popen_mock):
        popen_mock.return_value.wait.return_value = 1
        popen_mock.return_value.communicate.return_value = ''

        instance = UglifyJSSourcemapFilter(content='')
        with pytest.raises(FilterError) as exc:
            instance.output(root_location='', outfile='out.js', content_meta=[])

        assert str(exc.value) == (
            'Unable to apply UglifyJSSourcemapFilter (uglifyjs  -o out.js '
            '--source-map out.map.js --source-map-root /static/ '
            '--source-map-url /static/out.map.js -c -m)'
        )
Exemple #4
0
    def test_output(self, popen_mock, settings):
        popen_mock.return_value.wait.return_value = 0
        instance = UglifyJSSourcemapFilter(content='')

        inline_content = (
            "function test( test, test2)  { console.log(test);alert(test2 +'lorem');}")

        instance.output(root_location=settings.STATIC_ROOT, outfile='out.js', content_meta=[
            ('file', None, 'file.js'),
            ('inline', inline_content, None)
        ])

        assert popen_mock.called is True
        assert popen_mock.call_args[0][0] == (
            'uglifyjs file.js inline-66ba8f5c4310.js -o out.js '
            '--source-map out.map.js '
            '--source-map-root /static/ '
            '--source-map-url /static/out.map.js -c -m'
        )
        assert open(os.path.join(
            settings.STATIC_ROOT, 'inline-66ba8f5c4310.js'), 'r').read() == inline_content