getScore = function (value) {
                var score = parseInt(value, 10);

                if (isNaN(score) && typeof value === 'string') {
                    score = scores[value.toLowerCase()];
                }

                // edge case for F or 0
                if (score === 0) {
                    return 0;
                }

                return score || overall || scores.b;
            }
Test result against a certain threshold for CI
@param {Object} obj the Object with YSlow results
@param {String|Number|Object} threshold The definition of OK (inclusive)
       Anything >= threshold == OK. It can be a number [0-100],
       a letter [A-F] as follows:
       100 >= A >= 90 > B >= 80 > C >= 70 > D >= 60 > E >= 50 > F >= 0 > N/A = -1
       It can also be a specific per rule. e.g:
       {overall: 80, ycdn: 65, ynumreq: 'B'}
       where overall is the common threshold to be
       used by all rules except those listed
@return {Array} the test result array containing each test result details: