Changeset 1952


Ignore:
Timestamp:
2011-09-16 13:13:30 (8 months ago)
Author:
mpo
Message:

Important lesson learned: jslint is always right!

Finally checked up on the warnings about using Number() without 'new'
This makes sure you end up with native objects in stead of Object wrappers.
The same applies for String() and Boolean()
This should get rid of the false qunit reports: "equals ok but still showing difference"

It also showed a lingering failure in our tests.

Location:
trunk/modules
Files:
14 edited

Legend:

Unmodified
Added
Removed
  • trunk/modules/kauri-forms/kauri-forms-framework/src/main/kauri/static-{build}.key/kauri.forms/basic-controls.js

    r1948 r1952  
    212212    CheckBoxControl.prototype.normaliseValue = function (value) { 
    213213        if (value && value.constructor == Boolean && typeof value === 'object') { return value; }// note Boolean object holding false would become true with !! operation 
    214         return new Boolean(!!value); //anything becomes true, nothing or false becomes false 
     214        return Boolean(!!value); //anything becomes true, nothing or false becomes false 
    215215    }; 
    216216 
  • trunk/modules/kauri-forms/kauri-forms-framework/src/main/kauri/static-{build}.key/kauri.forms/basic-formatters.js

    r1948 r1952  
    4747                    var match = FALSE_REGEX.test(valstr); 
    4848                    if (match) { 
    49                         return new Boolean(false); 
     49                        return Boolean(false); 
    5050                    } 
    5151                } 
    52                 return new Boolean(valstr); 
     52                return Boolean(valstr); 
    5353            } 
    5454        }, 
     
    7777                    // no decimals wanted, skip the trailing zeros 
    7878                    var parts = val.toLocaleString().split($.getDecimalSeparator()); 
    79                     if(parts.length>1 && new Number(parts[1]) == 0) { 
     79                    if(parts.length>1 && Number(parts[1]) == 0) { 
    8080                        return parts[0]; 
    8181                    } else {  
     
    113113                } 
    114114 
    115                 var val = (valstr == null) ? null : new Number(valstr); 
     115                var val = (valstr == null) ? null : Number(valstr); 
    116116                 
    117117                if (isNaN(val)) { 
  • trunk/modules/kauri-forms/kauri-forms-framework/src/main/kauri/static-{build}.key/kauri.forms/basic-validators.js

    r1948 r1952  
    3535 
    3636        if (typeof value == 'number') { 
    37             value = new Number(value); 
     37            value = Number(value); 
    3838        } 
    3939 
  • trunk/modules/kauri-forms/kauri-forms-framework/src/main/kauri/static-{build}.key/kauri.forms/date.js

    r1948 r1952  
    3535         
    3636        max = max || 60; // default 
    37         var num = new Number(numStr); 
     37        var num = Number(numStr); 
    3838        if (isNaN(num) || num > max || num < 0) { 
    3939            return undefined;     
  • trunk/modules/kauri-forms/kauri-forms-framework/src/main/kauri/static-{build}.key/kauri.forms/location.js

    r1948 r1952  
    8686                var val = me.getWireValue(); 
    8787                if (val && val.latitude != null && val.longitude != null && val.zoom != null) { 
    88                     var mapVal = {latitude : new Number(val.latitude).valueOf(), longitude : new Number(val.longitude).valueOf(), zoom : new Number(val.zoom).valueOf()}; 
     88                    var mapVal = {latitude : Number(val.latitude).valueOf(), longitude : Number(val.longitude).valueOf(), zoom : Number(val.zoom).valueOf()}; 
    8989                    me.setMapValue(mapVal);                     
    9090                }                             
     
    106106            var val = me.getWireValue(); 
    107107            if (val && val.latitude != null && val.longitude != null && val.zoom != null) { 
    108                 var mapVal = {latitude : new Number(val.latitude).valueOf(), longitude : new Number(val.longitude).valueOf(), zoom : new Number(val.zoom).valueOf()}; 
     108                var mapVal = {latitude : Number(val.latitude).valueOf(), longitude : Number(val.longitude).valueOf(), zoom : Number(val.zoom).valueOf()}; 
    109109                me.setMapValue(mapVal);                     
    110110            }                             
  • trunk/modules/kauri-forms/kauri-forms-framework/src/main/kauri/static-{build}.key/kauri.forms/numeric-range.js

    r1948 r1952  
    5252                } 
    5353                     
    54                 start = new Number(valArr[0]); 
    55                 end = new Number(valArr[1]); 
     54                start = Number(valArr[0]); 
     55                end = Number(valArr[1]); 
    5656                 
    5757                if (isNaN(start) || isNaN(end)) {  
  • trunk/modules/kauri-forms/kauri-forms-framework/src/main/kauri/static-{build}.key/kauri.forms/upload.js

    r1948 r1952  
    195195    UploadControl.prototype.humanSize = function(size, level) { 
    196196        level = level || 0; 
    197         var nextOrder = Number(new Number(size) / 1024).toFixed(); 
     197        var nextOrder = Number( Number(size) / 1024).toFixed(); 
    198198        if (nextOrder !== "0" && ORDER_SIZES.length > level +1) { 
    199199            return this.humanSize(nextOrder, level+1); 
  • trunk/modules/kauri-forms/kauri-forms-framework/src/main/kauri/static-{build}.key/kauri.forms/validator.js

    r1948 r1952  
    123123    ValidationListener.newSequenceId = function() { 
    124124 
    125         return new Number(Math.random() * 10000).toFixed(); 
     125        return Number(Math.random() * 10000).toFixed(); 
    126126    }; 
    127127 
  • trunk/modules/kauri-forms/kauri-forms-framework/src/test/kauri.forms/test-basic-controls.js

    r1929 r1952  
    176176    var initial = c.getValue(); 
    177177    ok(initial == false, "initially we should be logically false"); 
    178     ok(initial.constructor == Boolean && typeof initial === 'object', "and the actual type should be nicely converted"); 
     178    ok(initial.constructor === Boolean && typeof initial === 'boolean', "and the actual type should be nicely converted to " + typeof initial); 
    179179     
    180180    // verify creation  of control elements 
     
    211211 
    212212    equal(changes, 2, "receiving 2nd value-change event"); 
    213     equal(c.hasChanges(), true, "change state");  
     213    equal(c.hasChanges(), false, "no change state"); // changed back to last setWireValue! 
    214214    equal($messages.html(), "", "validation error cleared."); 
    215215    equal(c.getValue(), okValue, "get-set value match."); 
  • trunk/modules/kauri-forms/kauri-forms-framework/src/test/kauri.forms/test-basic-formatters.js

    r1906 r1952  
    2222    var f = getFormatter("true-false"); 
    2323    assertConvert(f, "format", undefined, ""); 
    24     assertConvert(f, "format", new Boolean(true), "true"); 
    25     assertConvert(f, "format", new Boolean(false), "false"); 
     24    assertConvert(f, "format", Boolean(true), "true"); 
     25    assertConvert(f, "format", Boolean(false), "false"); 
    2626 
    2727    assertConvert(f, "parse", "", undefined); 
     
    4141     
    4242    assertConvert(f, "format", undefined, ""); 
    43     assertConvert(f, "format", new Boolean(true), new Boolean(true)); 
    44     assertConvert(f, "format", new Boolean(false), new Boolean(false)); 
     43    assertConvert(f, "format", Boolean(true), Boolean(true)); 
     44    assertConvert(f, "format", Boolean(false), Boolean(false)); 
    4545 
    4646}); 
     
    5454    assertConvert(f, "format", undefined, ""); 
    5555    assertConvert(f, "parse", "", undefined); 
    56     assertConvert(f, "format", new Number(9999.9), (new Number(9999.9)).toLocaleString()); 
    57     assertConvert(f, "parse", "   9999.9   ", new Number(9999.9)); 
     56    assertConvert(f, "format", Number(9999.9), (Number(9999.9)).toLocaleString()); 
     57    assertConvert(f, "parse", "   9999.9   ", Number(9999.9)); 
    5858    assertFail(f, "format", "abc"); 
    5959    assertFail(f, "parse", "abc"); 
    6060     
    6161    f.decimal = false; 
    62     assertConvert(f, "parse", "1" + $.getThousandSeparator() + "001", new Number(1001)); 
    63     assertConvert(f, "parse", "-1" + $.getThousandSeparator() + "001", new Number(-1001)); 
    64     assertConvert(f, "parse", "-  1" + $.getThousandSeparator() + "001", new Number(-1001)); 
    65     assertConvert(f, "format", new Number(1001), "1" + $.getThousandSeparator() + "001"); 
    66     assertConvert(f, "format", new Number(-1001), "-1" + $.getThousandSeparator() + "001"); 
     62    assertConvert(f, "parse", "1" + $.getThousandSeparator() + "001", Number(1001)); 
     63    assertConvert(f, "parse", "-1" + $.getThousandSeparator() + "001", Number(-1001)); 
     64    assertConvert(f, "parse", "-  1" + $.getThousandSeparator() + "001", Number(-1001)); 
     65    assertConvert(f, "format", Number(1001), "1" + $.getThousandSeparator() + "001"); 
     66    assertConvert(f, "format", Number(-1001), "-1" + $.getThousandSeparator() + "001"); 
    6767     
    6868     
     
    7171     
    7272    assertConvert(f, "format", undefined, ""); 
    73     assertConvert(f, "format", new Number(9999.9), new Number(9999.9)); 
     73    assertConvert(f, "format", Number(9999.9), Number(9999.9)); 
    7474    assertFail(f, "format", "abc"); 
    7575     
    76     assertConvert(f, "parse", "1" + $.getThousandSeparator() + "001", new Number(1001)); 
    77     assertConvert(f, "parse", "-1" + $.getThousandSeparator() + "001", new Number(-1001)); 
    78     assertConvert(f, "format", new Number(1001), 1001); 
    79     assertConvert(f, "format", new Number(-1001), -1001); 
     76    assertConvert(f, "parse", "1" + $.getThousandSeparator() + "001", Number(1001)); 
     77    assertConvert(f, "parse", "-1" + $.getThousandSeparator() + "001", Number(-1001)); 
     78    assertConvert(f, "format", Number(1001), 1001); 
     79    assertConvert(f, "format", Number(-1001), -1001); 
    8080     
    8181}); 
  • trunk/modules/kauri-forms/kauri-forms-framework/src/test/kauri.forms/test-basic-validators.js

    r1898 r1952  
    33module('Validator logic testing.'); 
    44 
     5test("why Number() should not also have 'new'", function(){ 
     6    var n = Number(5); 
     7    var o = new Number(5); 
     8 
     9    expect(4); 
     10 
     11    equals(n,o, "of course 5 is 5"); 
     12    ok(n!==o, "yet then again not quite"); 
     13    ok(n.constructor === o.constructor, "Of course the constructor is just " + o.constructor); 
     14    ok(typeof n !== typeof o, "But the typeof yields " + typeof n + "!==" + typeof o); 
     15}); 
     16 
     17 
    518test("isInt", function() { 
    619 
     
    922    var v = getValidator("isInt"); 
    1023    valueCheck(v, undefined, true); 
    11     valueCheck(v, new Number(""), true); 
    12     valueCheck(v, new Number("aa"), false); 
    13     valueCheck(v, new Number("10.01"), false); 
    14     valueCheck(v, new Number("10.00"), true); 
    15     valueCheck(v, new Number("10."), true); 
    16     valueCheck(v, new Number("10"), true); 
    17     valueCheck(v, new Number("-10"), true); 
    18     valueCheck(v, new Number("-0"), true); 
     24    valueCheck(v, Number(""), true); 
     25    valueCheck(v, Number("aa"), false); 
     26    valueCheck(v, Number("10.01"), false); 
     27    valueCheck(v, Number("10.00"), true); 
     28    valueCheck(v, Number("10."), true); 
     29    valueCheck(v, Number("10"), true); 
     30    valueCheck(v, Number("-10"), true); 
     31    valueCheck(v, Number("-0"), true); 
    1932}); 
    2033 
  • trunk/modules/kauri-forms/kauri-forms-framework/src/test/kauri.forms/test-date.js

    r1920 r1952  
    9292    valueCheck(v, undefined, true);     
    9393    valueCheck(v, new Date(), true); 
    94     valueCheck(v, new Number(), false); 
     94    valueCheck(v, Number(), false); 
    9595     
    9696    valueCheck(v, "", true); 
  • trunk/modules/kauri-forms/kauri-forms-framework/src/test/kauri.forms/test-numeric-range.js

    r1896 r1952  
    99    var f = getFormatter("numeric-range"); 
    1010     
    11     var val = {start : new Number(5.5), end : new Number(9999.9)}; 
    12     var valStrFormatted = new Number(5.5).toLocaleString() + " - " + new Number(9999.9).toLocaleString(); 
    13     var valStr = new Number(5.5) + " - " + new Number(9999.9); 
     11    var val = {start : Number(5.5), end : Number(9999.9)}; 
     12    var valStrFormatted = Number(5.5).toLocaleString() + " - " + Number(9999.9).toLocaleString(); 
     13    var valStr = Number(5.5) + " - " + Number(9999.9); 
    1414 
    1515    assertConvert(f, "format", undefined, ""); 
  • trunk/modules/kauri-jquery/src/main/kauri/static-{build}.key/kauri.util/locale.js

    r1939 r1952  
    9090    Locale.numericSeparators = function() { 
    9191 
    92         var s = new Number(9999.9).toLocaleString(); 
     92        var s = Number(9999.9).toLocaleString(); 
    9393        var d = ""; 
    9494        var t = "."; 
Note: See TracChangeset for help on using the changeset viewer.