WordPress.org

Make WordPress Core

Changeset 37749


Ignore:
Timestamp:
06/19/2016 12:31:15 PM (4 years ago)
Author:
azaozz
Message:

Grunt: when running precommit use regex to check which files have been modified.

Fixes #36528.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Gruntfile.js

    r37650 r37749  
    726726                }
    727727
    728                 if ( [ 'package.json', 'Gruntfile.js' ].some( function( path ) {
    729                     return ( result.stdout + '\n' ).indexOf( ' ' + path + '\n' ) !== -1;
    730                 } ) ) {
     728                // Callback for finding modified paths.
     729                function testPath( path ) {
     730                    var regex = new RegExp( ' ' + path + '$', 'm' );
     731                    return regex.test( result.stdout );
     732                }
     733
     734                // Callback for finding modified files by extension.
     735                function testExtension( extension ) {
     736                    var regex = new RegExp( '\.' + extension + '$', 'm' );
     737                    return regex.test( result.stdout );
     738                }
     739
     740                if ( [ 'package.json', 'Gruntfile.js' ].some( testPath ) ) {
    731741                    grunt.log.writeln( 'Configuration files modified. Running `prerelease`.' );
    732742                    taskList.push( 'prerelease' );
    733743                } else {
    734                     if ( [ 'png', 'jpg', 'gif', 'jpeg' ].some( function( extension ) {
    735                         return ( result.stdout + '\n' ).indexOf( '.' + extension + '\n' ) !== -1;
    736                     } ) ) {
     744                    if ( [ 'png', 'jpg', 'gif', 'jpeg' ].some( testExtension ) ) {
    737745                        grunt.log.writeln( 'Image files modified. Minifying.' );
    738746                        taskList.push( 'precommit:image' );
     
    740748
    741749                    [ 'js', 'css', 'php' ].forEach( function( extension ) {
    742                         if ( ( result.stdout + '\n' ).indexOf( '.' + extension + '\n' ) !== -1 ) {
     750                        if ( testExtension( extension ) ) {
    743751                            grunt.log.writeln( extension.toUpperCase() + ' files modified. ' + extension.toUpperCase() + ' tests will be run.' );
    744752                            taskList.push( 'precommit:' + extension );
Note: See TracChangeset for help on using the changeset viewer.