Code coverage report for queryString/setParam.js

Statements: 100% (14 / 14)      Branches: 100% (8 / 8)      Functions: 100% (3 / 3)      Lines: 100% (13 / 13)     

All files » queryString/ » setParam.js
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 291         1 10   10 10   10 4   6 2   6 3   6         1      
define(function () {
 
    /**
     * Set query string parameter value
     */
    function setParam(url, paramName, value){
        url = url || '';
 
        var re = new RegExp('(\\?|&)'+ paramName +'=[^&]*' );
        var param = paramName +'='+ encodeURIComponent( value );
 
        if ( re.test(url) ) {
            return url.replace(re, '$1'+ param);
        } else {
            if (url.indexOf('?') === -1) {
                url += '?';
            }
            if (url.indexOf('=') !== -1) {
                url += '&';
            }
            return url + param;
        }
 
    }
 
    return setParam;
 
});