// 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 import ( "testing"; "unicode"; ) var upper = []int{ 0x41, 0xc0, 0xd8, 0x100, 0x139, 0x14a, 0x178, 0x181, 0x376, 0x3cf, 0x1f2a, 0x2102, 0x2c00, 0x2c10, 0x2c20, 0xa650, 0xa722, 0xff3a, 0x10400, 0x1d400, 0x1d7ca, } var notupper = []int{ 0x40, 0x5b, 0x61, 0x185, 0x1b0, 0x377, 0x387, 0x2150, 0xffff, 0x10000, } var letter = []int{ 0x41, 0x61, 0xaa, 0xba, 0xc8, 0xdb, 0xf9, 0x2ec, 0x535, 0x6e6, 0x93d, 0xa15, 0xb99, 0xdc0, 0xedd, 0x1000, 0x1200, 0x1312, 0x1401, 0x1885, 0x2c00, 0xa800, 0xf900, 0xfa30, 0xffda, 0xffdc, 0x10000, 0x10300, 0x10400, 0x20000, 0x2f800, 0x2fa1d, } var notletter = []int{ 0x20, 0x35, 0x375, 0x620, 0x700, 0xfffe, 0x1ffff, 0x10ffff, } func TestIsLetter(t *testing.T) { for i, r := range(upper) { if !IsLetter(r) { t.Errorf("IsLetter(%#x) = false, want true\n", r); } } for i, r := range(letter) { if !IsLetter(r) { t.Errorf("IsLetter(%#x) = false, want true\n", r); } } for i, r := range(notletter) { if IsLetter(r) { t.Errorf("IsLetter(%#x) = true, want false\n", r); } } } func TestIsUpper(t *testing.T) { for i, r := range(upper) { if !IsUpper(r) { t.Errorf("IsUpper(%#x) = false, want true\n", r); } } for i, r := range(notupper) { if IsUpper(r) { t.Errorf("IsUpper(%#x) = true, want false\n", r); } } for i, r := range(notletter) { if IsUpper(r) { t.Errorf("IsUpper(%#x) = true, want false\n", r); } } }