UNPKG

sku-pg

Version:

Skulpt is a Javascript implementation of Python 2.x. Python that runs in your browser!

134 lines (109 loc) 3.86 kB
<!DOCTYPE html> <html> <!-- Copyright 2009 The Closure Library Authors. All Rights Reserved. Use of this source code is governed by the Apache License, Version 2.0. See the COPYING file for details. --> <!-- --> <head> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <title>Closure Unit Tests - goog.i18n.uChar</title> <meta charset=utf-8> <script src="../base.js"></script> <script> goog.require('goog.i18n.uChar'); goog.require('goog.testing.jsunit'); </script> </head> <body> <script> function testToHexString() { var result = goog.i18n.uChar.toHexString('\uD869\uDED6'); assertEquals('U+2A6D6', result); } function testPadString() { var result = goog.i18n.uChar.padString_('abc', 4, '0'); assertEquals('0abc', result); } function testToCharCode() { var result = goog.i18n.uChar.toCharCode('\uD869\uDED6'); assertEquals(0x2A6D6, result); } function testcodePointAt() { // Basic cases. assertEquals(0x006C, goog.i18n.uChar.getCodePointAround('Hello!', 2)); assertEquals(0x2708 /* Airplane symbol (non-ASCII) */, goog.i18n.uChar.getCodePointAround('Hello\u2708', 5)); // Supplementary characters. assertEquals(0x2A6D6, goog.i18n.uChar.getCodePointAround('\uD869\uDED6', 0)); assertEquals(-0x2A6D6, goog.i18n.uChar.getCodePointAround('\uD869\uDED6', 1)); assertEquals(0xD869, goog.i18n.uChar.getCodePointAround('\uD869' + 'w', 0)); assertEquals(0xDED6, goog.i18n.uChar.getCodePointAround('\uD869' + 'w' + '\uDED6', 2)); } function testBuildSupplementaryCodePoint() { var result = goog.i18n.uChar.buildSupplementaryCodePoint(0xD869, 0xDED6); assertEquals(0x2A6D6, result); assertNull(goog.i18n.uChar.buildSupplementaryCodePoint(0xDED6, 0xD869)); assertNull(goog.i18n.uChar.buildSupplementaryCodePoint(0xD869, 0xAC00)); } function testCharCount() { assertEquals(2, goog.i18n.uChar.charCount(0x2A6D6)); assertEquals(1, goog.i18n.uChar.charCount(0xAC00)); } function testIsSupplementaryCodePoint() { assertTrue(goog.i18n.uChar.isSupplementaryCodePoint(0x2A6D6)); assertFalse(goog.i18n.uChar.isSupplementaryCodePoint(0xAC00)); } function testIsLeadSurrogateCodepoint() { assertTrue(goog.i18n.uChar.isLeadSurrogateCodePoint(0xD869)); assertFalse(goog.i18n.uChar.isLeadSurrogateCodePoint(0xDED6)); assertFalse(goog.i18n.uChar.isLeadSurrogateCodePoint(0xAC00)); } function testIsTrailSurrogateCodePoint() { assertTrue(goog.i18n.uChar.isTrailSurrogateCodePoint(0xDED6)); assertFalse(goog.i18n.uChar.isTrailSurrogateCodePoint(0xD869)); assertFalse(goog.i18n.uChar.isTrailSurrogateCodePoint(0xAC00)); } function testFromCharCode() { var result = goog.i18n.uChar.fromCharCode(0x2A6D6); assertEquals('\uD869\uDED6', result); } function testFromCharCode_invalidValues() { var result = goog.i18n.uChar.fromCharCode(-1); assertEquals(null, result); result = goog.i18n.uChar.fromCharCode( goog.i18n.uChar.CODE_POINT_MAX_VALUE_ + 1); assertEquals(null, result); result = goog.i18n.uChar.fromCharCode(null); assertEquals(null, result); result = goog.i18n.uChar.fromCharCode(undefined); assertEquals(null, result); result = goog.i18n.uChar.fromCharCode(NaN); assertEquals(null, result); } function testToName() { var result = goog.i18n.uChar.toName(' '); assertEquals('Space', result); } function testToNameForNumberKey() { var result = goog.i18n.uChar.toName('\u2028'); assertEquals('Line Separator', result); } function testToNameForVariationSelector() { var result = goog.i18n.uChar.toName('\ufe00'); assertEquals('Variation Selector - 1', result); } function testToNameForVariationSelectorSupp() { var result = goog.i18n.uChar.toName('\uDB40\uDD00'); assertEquals('Variation Selector - 17', result); } function testToNameForNull() { var result = goog.i18n.uChar.toName('a'); assertNull(result); } </script> </body> </html>