You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
typesetting/pitfall/pdfkit/node_modules/unicode-properties/test/test.coffee

69 lines
2.5 KiB
CoffeeScript

unicode = require '../'
assert = require 'assert'
describe 'unicode-properties', ->
it 'getCategory', ->
assert.equal unicode.getCategory('2'.charCodeAt()), 'Nd'
assert.equal unicode.getCategory('x'.charCodeAt()), 'Ll'
it 'getCombiningClass', ->
assert.equal unicode.getCombiningClass('x'.charCodeAt()), 'Not_Reordered'
assert.equal unicode.getCombiningClass('́'.charCodeAt()), 'Above'
assert.equal unicode.getCombiningClass('ٕ'.charCodeAt()), 'Below'
assert.equal unicode.getCombiningClass('ٔ'.charCodeAt()), 'Above'
it 'getScript', ->
assert.equal unicode.getScript('x'.charCodeAt()), 'Latin'
assert.equal unicode.getScript('غ'.charCodeAt()), 'Arabic'
it 'getEastAsianWidth', ->
assert.equal unicode.getEastAsianWidth('x'.charCodeAt()), 'Na'
assert.equal unicode.getEastAsianWidth(''.charCodeAt()), 'W'
assert.equal unicode.getEastAsianWidth('Æ'.charCodeAt()), 'A'
it 'getNumericValue', ->
assert.equal unicode.getNumericValue('2'.charCodeAt()), 2
assert.equal unicode.getNumericValue('x'.charCodeAt()), null
it 'isAlphabetic', ->
assert unicode.isAlphabetic('x'.charCodeAt())
assert !unicode.isAlphabetic('2'.charCodeAt())
it 'isDigit', ->
assert !unicode.isDigit('x'.charCodeAt())
assert unicode.isDigit('2'.charCodeAt())
it 'isPunctuation', ->
assert !unicode.isPunctuation('x'.charCodeAt())
assert unicode.isPunctuation('.'.charCodeAt())
it 'isLowerCase', ->
assert !unicode.isLowerCase('X'.charCodeAt())
assert !unicode.isLowerCase('2'.charCodeAt())
assert unicode.isLowerCase('x'.charCodeAt())
it 'isUpperCase', ->
assert unicode.isUpperCase('X'.charCodeAt())
assert !unicode.isUpperCase('2'.charCodeAt())
assert !unicode.isUpperCase('x'.charCodeAt())
it 'isTitleCase', ->
assert unicode.isTitleCase('Dz'.charCodeAt())
assert !unicode.isTitleCase('2'.charCodeAt())
assert !unicode.isTitleCase('x'.charCodeAt())
it 'isWhiteSpace', ->
assert unicode.isWhiteSpace(' '.charCodeAt())
assert !unicode.isWhiteSpace('2'.charCodeAt())
assert !unicode.isWhiteSpace('x'.charCodeAt())
it 'isBaseForm', ->
assert unicode.isBaseForm('2'.charCodeAt())
assert unicode.isBaseForm('x'.charCodeAt())
assert !unicode.isBaseForm('́'.charCodeAt())
it 'isMark', ->
assert !unicode.isMark('2'.charCodeAt())
assert !unicode.isMark('x'.charCodeAt())
assert unicode.isMark('́'.charCodeAt())