js/src/tests/test262/intl402/ch11/11.1/11.1.1_20_c.js

changeset 0
6474c204b198
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/js/src/tests/test262/intl402/ch11/11.1/11.1.1_20_c.js	Wed Dec 31 06:09:35 2014 +0100
     1.3 @@ -0,0 +1,196 @@
     1.4 +// Copyright 2011-2012 Norbert Lindenberg. All rights reserved.
     1.5 +// Copyright 2012 Mozilla Corporation. All rights reserved.
     1.6 +// This code is governed by the BSD license found in the LICENSE file.
     1.7 +
     1.8 +/**
     1.9 + * @description Tests that the number of fractional digits is determined correctly for currencies.
    1.10 + * @author Norbert Lindenberg
    1.11 + */
    1.12 +
    1.13 +// data from http://www.currency-iso.org/dl_iso_table_a1.xml, 2013-02-25
    1.14 +var currencyDigits = {
    1.15 +    AED: 2,
    1.16 +    AFN: 2,
    1.17 +    ALL: 2,
    1.18 +    AMD: 2,
    1.19 +    ANG: 2,
    1.20 +    AOA: 2,
    1.21 +    ARS: 2,
    1.22 +    AUD: 2,
    1.23 +    AWG: 2,
    1.24 +    AZN: 2,
    1.25 +    BAM: 2,
    1.26 +    BBD: 2,
    1.27 +    BDT: 2,
    1.28 +    BGN: 2,
    1.29 +    BHD: 3,
    1.30 +    BIF: 0,
    1.31 +    BMD: 2,
    1.32 +    BND: 2,
    1.33 +    BOB: 2,
    1.34 +    BOV: 2,
    1.35 +    BRL: 2,
    1.36 +    BSD: 2,
    1.37 +    BTN: 2,
    1.38 +    BWP: 2,
    1.39 +    BYR: 0,
    1.40 +    BZD: 2,
    1.41 +    CAD: 2,
    1.42 +    CDF: 2,
    1.43 +    CHE: 2,
    1.44 +    CHF: 2,
    1.45 +    CHW: 2,
    1.46 +    CLF: 0,
    1.47 +    CLP: 0,
    1.48 +    CNY: 2,
    1.49 +    COP: 2,
    1.50 +    COU: 2,
    1.51 +    CRC: 2,
    1.52 +    CUC: 2,
    1.53 +    CUP: 2,
    1.54 +    CVE: 2,
    1.55 +    CZK: 2,
    1.56 +    DJF: 0,
    1.57 +    DKK: 2,
    1.58 +    DOP: 2,
    1.59 +    DZD: 2,
    1.60 +    EGP: 2,
    1.61 +    ERN: 2,
    1.62 +    ETB: 2,
    1.63 +    EUR: 2,
    1.64 +    FJD: 2,
    1.65 +    FKP: 2,
    1.66 +    GBP: 2,
    1.67 +    GEL: 2,
    1.68 +    GHS: 2,
    1.69 +    GIP: 2,
    1.70 +    GMD: 2,
    1.71 +    GNF: 0,
    1.72 +    GTQ: 2,
    1.73 +    GYD: 2,
    1.74 +    HKD: 2,
    1.75 +    HNL: 2,
    1.76 +    HRK: 2,
    1.77 +    HTG: 2,
    1.78 +    HUF: 2,
    1.79 +    IDR: 2,
    1.80 +    ILS: 2,
    1.81 +    INR: 2,
    1.82 +    IQD: 3,
    1.83 +    IRR: 2,
    1.84 +    ISK: 0,
    1.85 +    JMD: 2,
    1.86 +    JOD: 3,
    1.87 +    JPY: 0,
    1.88 +    KES: 2,
    1.89 +    KGS: 2,
    1.90 +    KHR: 2,
    1.91 +    KMF: 0,
    1.92 +    KPW: 2,
    1.93 +    KRW: 0,
    1.94 +    KWD: 3,
    1.95 +    KYD: 2,
    1.96 +    KZT: 2,
    1.97 +    LAK: 2,
    1.98 +    LBP: 2,
    1.99 +    LKR: 2,
   1.100 +    LRD: 2,
   1.101 +    LSL: 2,
   1.102 +    LTL: 2,
   1.103 +    LVL: 2,
   1.104 +    LYD: 3,
   1.105 +    MAD: 2,
   1.106 +    MDL: 2,
   1.107 +    MGA: 2,
   1.108 +    MKD: 2,
   1.109 +    MMK: 2,
   1.110 +    MNT: 2,
   1.111 +    MOP: 2,
   1.112 +    MRO: 2,
   1.113 +    MUR: 2,
   1.114 +    MVR: 2,
   1.115 +    MWK: 2,
   1.116 +    MXN: 2,
   1.117 +    MXV: 2,
   1.118 +    MYR: 2,
   1.119 +    MZN: 2,
   1.120 +    NAD: 2,
   1.121 +    NGN: 2,
   1.122 +    NIO: 2,
   1.123 +    NOK: 2,
   1.124 +    NPR: 2,
   1.125 +    NZD: 2,
   1.126 +    OMR: 3,
   1.127 +    PAB: 2,
   1.128 +    PEN: 2,
   1.129 +    PGK: 2,
   1.130 +    PHP: 2,
   1.131 +    PKR: 2,
   1.132 +    PLN: 2,
   1.133 +    PYG: 0,
   1.134 +    QAR: 2,
   1.135 +    RON: 2,
   1.136 +    RSD: 2,
   1.137 +    RUB: 2,
   1.138 +    RWF: 0,
   1.139 +    SAR: 2,
   1.140 +    SBD: 2,
   1.141 +    SCR: 2,
   1.142 +    SDG: 2,
   1.143 +    SEK: 2,
   1.144 +    SGD: 2,
   1.145 +    SHP: 2,
   1.146 +    SLL: 2,
   1.147 +    SOS: 2,
   1.148 +    SRD: 2,
   1.149 +    SSP: 2,
   1.150 +    STD: 2,
   1.151 +    SVC: 2,
   1.152 +    SYP: 2,
   1.153 +    SZL: 2,
   1.154 +    THB: 2,
   1.155 +    TJS: 2,
   1.156 +    TMT: 2,
   1.157 +    TND: 3,
   1.158 +    TOP: 2,
   1.159 +    TRY: 2,
   1.160 +    TTD: 2,
   1.161 +    TWD: 2,
   1.162 +    TZS: 2,
   1.163 +    UAH: 2,
   1.164 +    UGX: 0,
   1.165 +    USD: 2,
   1.166 +    USN: 2,
   1.167 +    USS: 2,
   1.168 +    UYI: 0,
   1.169 +    UYU: 2,
   1.170 +    UZS: 2,
   1.171 +    VEF: 2,
   1.172 +    VND: 0,
   1.173 +    VUV: 0,
   1.174 +    WST: 2,
   1.175 +    XAF: 0,
   1.176 +    XCD: 2,
   1.177 +    XOF: 0,
   1.178 +    XPF: 0,
   1.179 +    YER: 2,
   1.180 +    ZAR: 2,
   1.181 +    ZMW: 2,
   1.182 +    ZWL: 2
   1.183 +};
   1.184 +
   1.185 +Object.getOwnPropertyNames(currencyDigits).forEach(function (currency) {
   1.186 +    var digits = currencyDigits[currency];
   1.187 +    format = Intl.NumberFormat([], {style: "currency", currency: currency});
   1.188 +    var min = format.resolvedOptions().minimumFractionDigits;
   1.189 +    var max = format.resolvedOptions().maximumFractionDigits;
   1.190 +    if (min !== digits) {
   1.191 +        $ERROR("Didn't get correct minimumFractionDigits for currency " +
   1.192 +            currency + "; expected " + digits + ", got " + min + ".");
   1.193 +    }
   1.194 +    if (max !== digits) {
   1.195 +        $ERROR("Didn't get correct maximumFractionDigits for currency " +
   1.196 +            currency + "; expected " + digits + ", got " + max + ".");
   1.197 +    }
   1.198 +});
   1.199 +

mercurial