123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127 |
- // Copyright 2009 The Go Authors. All rights reserved.
- // Use of this source code is governed by a BSD-style
- // license that can be found in the LICENSE file.
- package unicode_test
- import (
- "testing"
- . "unicode"
- )
- var testDigit = []rune{
- 0x0030,
- 0x0039,
- 0x0661,
- 0x06F1,
- 0x07C9,
- 0x0966,
- 0x09EF,
- 0x0A66,
- 0x0AEF,
- 0x0B66,
- 0x0B6F,
- 0x0BE6,
- 0x0BEF,
- 0x0C66,
- 0x0CEF,
- 0x0D66,
- 0x0D6F,
- 0x0E50,
- 0x0E59,
- 0x0ED0,
- 0x0ED9,
- 0x0F20,
- 0x0F29,
- 0x1040,
- 0x1049,
- 0x1090,
- 0x1091,
- 0x1099,
- 0x17E0,
- 0x17E9,
- 0x1810,
- 0x1819,
- 0x1946,
- 0x194F,
- 0x19D0,
- 0x19D9,
- 0x1B50,
- 0x1B59,
- 0x1BB0,
- 0x1BB9,
- 0x1C40,
- 0x1C49,
- 0x1C50,
- 0x1C59,
- 0xA620,
- 0xA629,
- 0xA8D0,
- 0xA8D9,
- 0xA900,
- 0xA909,
- 0xAA50,
- 0xAA59,
- 0xFF10,
- 0xFF19,
- 0x104A1,
- 0x1D7CE,
- }
- var testLetter = []rune{
- 0x0041,
- 0x0061,
- 0x00AA,
- 0x00BA,
- 0x00C8,
- 0x00DB,
- 0x00F9,
- 0x02EC,
- 0x0535,
- 0x06E6,
- 0x093D,
- 0x0A15,
- 0x0B99,
- 0x0DC0,
- 0x0EDD,
- 0x1000,
- 0x1200,
- 0x1312,
- 0x1401,
- 0x1885,
- 0x2C00,
- 0xA800,
- 0xF900,
- 0xFA30,
- 0xFFDA,
- 0xFFDC,
- 0x10000,
- 0x10300,
- 0x10400,
- 0x20000,
- 0x2F800,
- 0x2FA1D,
- }
- func TestDigit(t *testing.T) {
- for _, r := range testDigit {
- if !IsDigit(r) {
- t.Errorf("IsDigit(U+%04X) = false, want true", r)
- }
- }
- for _, r := range testLetter {
- if IsDigit(r) {
- t.Errorf("IsDigit(U+%04X) = true, want false", r)
- }
- }
- }
- // Test that the special case in IsDigit agrees with the table
- func TestDigitOptimization(t *testing.T) {
- for i := rune(0); i <= MaxLatin1; i++ {
- if Is(Digit, i) != IsDigit(i) {
- t.Errorf("IsDigit(U+%04X) disagrees with Is(Digit)", i)
- }
- }
- }
|