123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115 |
- /*jshint node: true */
- 'use strict';
- module.exports = function (grunt) {
- grunt.initConfig({
- pkg: grunt.file.readJSON('package.json'),
- qunit: {
- all: ['test/index.html']
- },
- jshint: {
- files: [
- 'Gruntfile.js',
- 'jquery.cookie.js'
- ],
- options: {
- jshintrc: '.jshintrc'
- }
- },
- uglify: {
- options: {
- banner: '/*! <%= pkg.name %> v<%= pkg.version %> | <%= pkg.license %> */\n'
- },
- build: {
- files: {
- 'build/jquery.cookie-<%= pkg.version %>.min.js': 'jquery.cookie.js'
- }
- }
- },
- watch: {
- files: [
- 'jquery.cookie.js',
- 'test/tests.js'
- ],
- tasks: 'default'
- },
- compare_size: {
- files: [
- 'build/jquery.cookie-<%= pkg.version %>.min.js',
- 'jquery.cookie.js'
- ],
- options: {
- compress: {
- gz: function (fileContents) {
- return require('gzip-js').zip(fileContents, {}).length;
- }
- }
- }
- },
- connect: {
- server: {
- options: {
- base: '.',
- directory: 'test',
- port: 9999
- }
- }
- },
- 'saucelabs-qunit': {
- all: {
- options: {
- urls: ['http://127.0.0.1:9999/test/index.html'],
- tunnelTimeout: 5,
- build: process.env.TRAVIS_JOB_ID,
- concurrency: 3,
- browsers: [
- {
- browserName: 'safari',
- platform: 'OS X 10.8'
- },
- {
- browserName: 'firefox',
- platform: 'Windows 7'
- },
- {
- browserName: 'firefox',
- platform: 'Windows XP'
- },
- {
- browserName: 'firefox',
- platform: 'Linux'
- },
- {
- browserName: 'chrome',
- platform: 'Windows 7'
- },
- {
- browserName: 'internet explorer',
- platform: 'Windows 8',
- version: '10'
- },
- {
- browserName: 'internet explorer',
- platform: 'Windows 7',
- version: '9'
- }
- ],
- testname: 'jquery.cookie qunit tests'
- }
- }
- }
- });
- // Loading dependencies
- for (var key in grunt.file.readJSON('package.json').devDependencies) {
- if (key !== 'grunt' && key.indexOf('grunt') === 0) {
- grunt.loadNpmTasks(key);
- }
- }
- grunt.registerTask('default', ['jshint', 'qunit', 'uglify', 'compare_size']);
- grunt.registerTask('saucelabs', ['connect', 'saucelabs-qunit']);
- grunt.registerTask('ci', ['jshint', 'qunit', 'saucelabs']);
- };
|