<commit_before>module.exports = function(grunt) {

    grunt.initConfig({
        shell:{
            updateWebdriver: {
                command: 'npm run update-webdriver',
            },
            serverAsync: {
                command: 'node server.js',
                options: {
                    async: true,
                    execOptions: {
                        cwd: './'
                    },
                },    
            },
        },
        run: {
            server: {
                args: ['./server.js']
            },
        },    
        karma: {
            unit: {
                configFile: './test/karma.conf.js'
            },
            //continuous integration mode: run tests once in PhantomJS browser.
            continuous: {
                configFile: './test/karma.conf.js',
                singleRun: true
            },
        },
        watch: {
            karma: {
                files: ['client/scripts/**/*.js', 'test/unit/client/**/*.js'],
                tasks: ['karma:unit:run']
            },
        },
        protractor: {
            options: {
              configFile: "./test/karma-e2e.conf.js",
              keepAlive: true, // The grunt process stops when the test fails.
              noColor: false, // We use colors in its output.
              args: { }
            },
            all: { },
        },
    });

 
    grunt.loadNpmTasks('grunt-shell-spawn');
    grunt.loadNpmTasks('grunt-run');

    grunt.loadNpmTasks('grunt-protractor-runner');
    grunt.loadNpmTasks('grunt-contrib-watch');
    grunt.loadNpmTasks('grunt-karma');

    grunt.registerTask('unitWatch', ['karma:unit', 'watch']);
    grunt.registerTask('unitNoWatch', ['karma:unit']);

    grunt.registerTask('serverAsync', ['shell:serverAsync']);    
    grunt.registerTask('updateWebdriver', ['shell:updateWebdriver']);    
    grunt.registerTask('server', ['run:server']);    

    grunt.registerTask('e2e', ['serverAsync', 'protractor']);
    grunt.registerTask('testDEV', ['server', 'e2e', 'unitWatch']);
    grunt.registerTask('testCI', ['serverAsync', 'updateWebdriver', 'e2e','unitNoWatch']);
};<commit_msg>Grunt && CircleCi && Heroku<commit_after>module.exports = function(grunt) {

    grunt.initConfig({
        shell:{
            updateWebdriver: {
                command: 'npm run update-webdriver',
            },
            serverAsync: {
                command: 'node server.js',
                options: {
                    async: true,
                    execOptions: {
                        cwd: './'
                    },
                },    
            },
        },
        run: {
            server: {
                args: ['./server.js']
            },
        },    
        karma: {
            unit: {
                configFile: './test/karma.conf.js'
            },
            //continuous integration mode: run tests once in PhantomJS browser.
            continuous: {
                configFile: './test/karma.conf.js',
                singleRun: true
            },
        },
        watch: {
            karma: {
                files: ['client/scripts/**/*.js', 'test/unit/client/**/*.js'],
                tasks: ['karma:unit:run']
            },
        },
        protractor: {
            options: {
              configFile: "./test/karma-e2e.conf.js",
              keepAlive: true, // The grunt process stops when the test fails.
              noColor: false, // We use colors in its output.
              args: { }
            },
            all: { },
        },
    });

 
    grunt.loadNpmTasks('grunt-shell-spawn');
    grunt.loadNpmTasks('grunt-run');

    grunt.loadNpmTasks('grunt-protractor-runner');
    grunt.loadNpmTasks('grunt-contrib-watch');
    grunt.loadNpmTasks('grunt-karma');

    grunt.registerTask('unitWatch', ['karma:unit', 'watch']);
    grunt.registerTask('unitNoWatch', ['karma:unit']);

    grunt.registerTask('serverAsync', ['shell:serverAsync']);    
    grunt.registerTask('updateWebdriver', ['shell:updateWebdriver']);    
    grunt.registerTask('server', ['run:server']);    

    grunt.registerTask('e2e', ['serverAsync', 'protractor']);
    grunt.registerTask('testDEV', ['server', 'e2e', 'unitWatch']);
    grunt.registerTask('testCI', ['updateWebdriver', 'e2e','unitNoWatch']);
};
{'fraction_non_alphanumeric': 0.1525816161148414, 'fraction_numerical': 0.0018522806205140078, 'mean_word_length': 1.5087108013937283, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3041259', 'n_tokens_mistral': 1255, 'n_tokens_neox': 1199, 'n_words': 197}