Example #1
0
    def handle_noargs(self, **options):
        from compress.packager import Packager
        packager = Packager(force=options.get('force', False),
                            verbose=int(options.get('verbosity', 1)) >= 2)

        for package_name in packager.packages['css']:
            package = packager.package_for('css', package_name)
            if packager.verbose or packager.force:
                print
                message = "CSS Group '%s'" % package_name
                print message
                print len(message) * '-'
            packager.pack(package)

        packager = Packager(force=options.get('force', False),
                            verbose=int(options.get('verbosity', 1)) >= 2)

        for package_name in packager.packages['js']:
            package = packager.package_for('js', package_name)
            if packager.verbose or packager.force:
                print
                message = "JS Group '%s'" % package_name
                print message
                print len(message) * '-'
            packager.pack(package)
Example #2
0
 def test_individual_url(self):
     """Check that individual URL is correctly generated"""
     packager = Packager()
     filename = os.path.join(settings.COMPRESS_ROOT, u'js/application.js')
     individual_url = packager.individual_url(filename)
     self.assertEqual(individual_url,
                      settings.COMPRESS_URL + "js/application.js")
Example #3
0
 def __init__(self, name, aType):
     self.name = name
     self.type = aType
     if aType == 'css':
         self.template = "compress/css.html"
     else:
         self.template = "compress/js.html"
     self.packager = Packager()
Example #4
0
    def test_create_package(self):
        packager = Packager()
        self.assertEqual(packager.create_packages({}), {})

        with self.assertRaises(PackageNotFound):
            packager.package_for('css', 'test_package')

        old_root = settings.COMPRESS_ROOT
        settings.COMPRESS_ROOT = os.path.join(os.path.dirname(__file__),
                                              "testdata/")
        packages = {
            'data': {
                'jquery': {
                    'external_urls':
                    ('http://ajax.googleapis.com/ajax/libs/jquery/1.6.0/jquery.min.js',
                     )
                },
                'main': {
                    'source_filenames': (
                        'js/application.js',
                        'js/application1.js',
                    ),
                    'output_filename':
                    'application.r?.js'
                },
                'mixed': {
                    'external_urls':
                    ('http://ajax.googleapis.com/ajax/libs/jquery/1.6.0/jquery.min.js',
                     ),
                    'source_filenames': (
                        'js/application.js',
                        'js/application1.js',
                    ),
                    'output_filename':
                    'application.r?.js'
                },
                'test': {
                    'source_filenames': ('css/abs*.css', ),
                    'output_filename': 'application.r?.css',
                    'template_name': 'test/template.html',
                    'extra_context': {
                        'a': 'a',
                    }
                }
            },
            'expected': {
                'jquery': {
                    'context': {},
                    'externals':
                    ('http://ajax.googleapis.com/ajax/libs/jquery/1.6.0/jquery.min.js',
                     ),
                    'output':
                    '',
                    'paths': []
                },
                'main': {
                    'context': {},
                    'output': 'application.r?.js',
                    'paths': ['js/application1.js']
                },
                'mixed': {
                    'context': {},
                    'externals':
                    ('http://ajax.googleapis.com/ajax/libs/jquery/1.6.0/jquery.min.js',
                     ),
                    'output':
                    'application.r?.js',
                    'paths': ['js/application1.js']
                },
                'test': {
                    'context': {
                        'a': 'a'
                    },
                    'paths': ['css/absolute.css'],
                    'output': 'application.r?.css',
                    'template': 'test/template.html'
                }
            }
        }
        out = packager.create_packages(packages['data'])
        self.assertEqual(out, packages['expected'])
        settings.COMPRESS_ROOT = old_root