Skip to content

Instantly share code, notes, and snippets.

@zoffixznet
Created December 28, 2016 14:02
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save zoffixznet/e1316dd5112d6ea2a8eb48296d34e6ad to your computer and use it in GitHub Desktop.
Save zoffixznet/e1316dd5112d6ea2a8eb48296d34e6ad to your computer and use it in GitHub Desktop.
cpan@perlbuild2~/CPANPRC/rakudo (nom)$ make t/spec/S15-unicode-information/uniprop.t
rm -f -- perl6
cp -- perl6-m perl6
chmod -- 755 perl6
/home/cpan/perl5/perlbrew/perls/perl-5.24.0/bin/perl t/harness5 --fudge --moar --keep-exit-code --verbosity=1 t/spec/S15-unicode-information/uniprop.t
ok 1 - uniprop an empty string yields Nil
ok 2 - ''.uniprop yields Nil
ok 3 - cannot call uniprop with a Str
ok 4 - cannot call uniprop with a Str
ok 5 - cannot call uniprop with a Int
ok 6 - cannot call uniprop with a Int
ok 7 - ''.uniprops yields an empty list
ok 8 - uniprops returns properties of multiple characters in a string
ok 9 - uniprop: Unicode authoratative short names return the same result as full names
ok 10 - .uniprop('General_Category') returns the correct result
ok 11 - .uniprop with no arguments returns the General_Category
ok 12 - .uniprop returns a Str for string Unicode properties
ok 13 - .uniprop('Script') returns correct result for 'a'
ok 14 - 'a'.uniprop('Age') looks like /'1.1'/
ok 15 - uniprop for Block works
not ok 16 - ¶.uniprop('Unicode_1_Name') returns Unicode 1 name# TODO Unicode 1 names NYI in MoarVM
ok 17 - uniprop: returns proper name for LATIN SMALL LIGATURE FF
not ok 18 - uniprop for Indic_Positional_Category works# TODO Indic_Positional_Category NYI in MoarVM
not ok 19 - uniprop for Indic_Positional_Category returns NA for codes that should default to this property# TODO Indic_Positional_Category NYI in MoarVM
ok 20 - .lc: returns proper lowercase mapping for LATIN SMALL LIGATURE FF
ok 21 - uniprop: returns proper lowercase mapping for LATIN SMALL LIGATURE FF
ok 22 - .tc: returns proper lowercase mapping for LATIN SMALL LIGATURE FF
ok 23 - uniprop: returns proper titlecase mapping for LATIN SMALL LIGATURE FF
ok 24 - .uc: returns proper uppercase mapping for LATIN SMALL LIGATURE FF
ok 25 - .uc: returns proper uppercase mapping for LATIN SMALL LIGATURE FF
not ok 26 - uniprop for Simple_Uppercase_Mapping returns LATIN SMALL LETTER SHARP S for LATIN SMALL LETTER SHARP S# TODO NYI
not ok 27 - uniprop for 'Simple_Lowercase_Mapping' returns LATIN SMALL LETTER SHARP S for LATIN SMALL LETTER SHARP S# TODO NYI
not ok 28 - uniprop for 'Simple_Titlecase_Mapping' returns LATIN SMALL LETTER SHARP S for LATIN SMALL LETTER SHARP S# TODO NYI
ok 29 - uniname: returns proper name for LATIN SMALL LIGATURE FF
ok 30 - 'st'.fc returns ‘st’
not ok 31 - 'st'.uniprop for Case_Folding returns ‘st’# TODO uniprop('Case_Folding') does not yet work
not ok 32 - uniprop for Jamo_Short_Name works# TODO Jamo_Short_Name NYI in MoarVM
not ok 33 - '('.uniprop('Bidi_Mirroring_Glyph') returns ')'# TODO moar returns a string containing the unicode codepoint instead of an integer for Bidi_Mirroring_Glyph
not ok 34 - uniprop: returns matching Bidi_Paired_Bracket# TODO Bidi_Paired_Bracket_Type and Bidi_Paired_Bracket NYI in MoarVM
not ok 35 - '('.uniprop('Bidi_Paired_Bracket_Type') returns 'o'# TODO Bidi_Paired_Bracket_Type and Bidi_Paired_Bracket NYI in MoarVM
not ok 36 - ')'.uniprop('Bidi_Paired_Bracket_Type') returns 'c'# TODO Bidi_Paired_Bracket_Type and Bidi_Paired_Bracket NYI in MoarVM
not ok 37 - uniprop for Bidi_Paired_Bracket_Type returns 'n' for codes without this property# TODO Bidi_Paired_Bracket_Type and Bidi_Paired_Bracket NYI in MoarVM
ok 38 - '½'.uniprop('Numeric_Value') returns a Rat
ok 39 - '½'.uniprop('Numeric_Value') returns the correct number
ok 40 - 'a'.uniprop('Numeric_Value') returns NaN
ok 41 - uniprop for Numeric_Type returns 'Decimal' for decimal numbers
ok 42 - uniprop for Numeric_Type returns 'None' for non-numbers
ok 43 - '0'.uniprop('Alphabetic') returns a False
ok 44 - uniprop('Alphabetic') returns a True for letter 'a'
ok 45 - .uniprop('Dash') returns True for the Dash property on dashes
ok 46 - .uniprop('Dash') returns False for non-dashes
ok 47 - .uniprop('Dash') returns False for hyphens which are not dash's
ok 48 - .uniprop('Hyphen') returns True for hyphens which are not dash's
ok 49 - .uniprop('Hyphen') returns False for em-dash
ok 50 - .uniprop('ASCII_Hex_Digit') returns False for ARABIC-INDIC DIGIT TWO
ok 51 - .uniprop('ASCII_Hex_Digit') returns True for 'a'
ok 52 - .uniprop('ASCII_Hex_Digit') returns True for '0'
ok 53 - .uniprop('Hex_Digit') returns True for ARABIC-INDIC DIGIT TWO
ok 54 - .uniprop('Hex_Digit') returns False for 'Z'
ok 55 - .uniprop('Case_Ignorable') is True for COMBINING GRAVE ACCENT [Mn]
ok 56 - .uniprop('Case_Ignorable') is True for MIDDLE DOT
ok 57 - "a".uniprop('Case_Ignorable') is False
ok 58 - .uniprop('Soft_Dotted') for 'i' is True
ok 59 - .uniprop('Soft_Dotted') for 'o' is False
ok 60 - .uniprop('Quotation_Mark') returns True for LEFT DOUBLE QUOTATION MARK
ok 61 - .uniprop('Quotation_Mark') returns False for 'a'
ok 62 - .uniprop('Math') returns True for Math properties
ok 63 - .uniprop('Math') returns False for non-Math properties
ok 64 - uniprop for Grapheme_Extend returns True for codes with this property
ok 65 - uniprop for Grapheme_Extend returns False for codes without this property
ok 66 - uniprop for Grapheme_Base returns True for codes with this property
ok 67 - uniprop for Grapheme_Base returns False for codes without this property
ok 68 - uniprop for Grapheme_Link returns True for codes with this property
ok 69 - uniprop for Grapheme_Link returns False for codes without this property
ok 70 - uniprop for Extender property returns True for codepoints with this property
ok 71 - uniprop for Extender property returns False for codepoints without this property
ok 72 - uniprop for Join_Control property returns True for U+200D
ok 73 - uniprop for Join_Control property returns True for U+200C
ok 74 - uniprop for Join_Control property returns False for codes without this property
ok 75 - uniprop for Depreciated property returns True for codes with this property
ok 76 - uniprop for Depreciated property returns False for codes without this property
ok 77 - uniprop for White_Space property returns True for codes with this property
ok 78 - uniprop for White_Space property returns False for codes without this property
ok 79 - uniprop for Ideographic property returns True for codes with this property
ok 80 - uniprop for Ideographic property returns False for codes without this property
ok 81 - uniprop for Ideographic property returns True for codes with this property
ok 82 - uniprop for Ideographic property returns False for codes without this property
ok 83 - uniprop for Bidi_Mirrored property returns True for codes with this property
ok 84 - uniprop for Bidi_Mirrored property returns False for codes without this property
ok 85 - uniprop for Variation_Selector property returns True for codes with this property
ok 86 - uniprop for Variation_Selector property returns False for codes without this property
ok 87 - uniprop for ID_Continue property returns True for codes with this property
ok 88 - uniprop for ID_Continue property returns False for codes without this property
ok 89 - uniprop for Sentence_Terminal property returns True for codes with this property
ok 90 - uniprop for Sentence_Terminal property returns False for codes without this property
ok 91 - uniprop for Changes_When_NFKC_Casefolded property returns True for codes with this property
ok 92 - uniprop for Sentence_Terminal property returns False for codes without this property
ok 93 - uniprop for Cased property returns True for codes with this property
ok 94 - uniprop for Cased property returns False for codes without this property
ok 95 - uniprop for Full_Composition_Exclusion property returns True for codes with this property
ok 96 - uniprop for Full_Composition_Exclusion property returns False for codes without this property
ok 97 - uniprop for Changes_When_Casefolded property returns True for codes with this property
ok 98 - uniprop for Changes_When_Casefolded property returns False for codes without this property
ok 99 - uniprop for Changes_When_Lowercased property returns True for codes with this property
ok 100 - uniprop for Changes_When_Lowercased property returns False for codes without this property
ok 101 - uniprop for Changes_When_Uppercased property returns False for codes with this property
ok 102 - uniprop for Changes_When_Uppercased property returns True for codes without this property
ok 103 - uniprop for Changes_When_Titlecased property returns False for codes with this property
ok 104 - uniprop for Changes_When_Titlecased property returns True for codes without this property
ok 105 - uniprop for Changes_When_Casemapped property returns True for codes with this property
ok 106 - uniprop for Changes_When_Casemapped property returns False for codes without this property
ok 107 - uniprop for 'Upper' property returns False for codes with this property
ok 108 - uniprop for 'Upper' property returns True for codes without this property
ok 109 - uniprop for 'Lowercase' property returns False for codes with this property
ok 110 - uniprop for 'Lowercase' property returns True for codes without this property
ok 111 - uniprop for Terminal_Punctuation property returns False for codes with this property
ok 112 - uniprop for Terminal_Punctuation property returns True for codes without this property
ok 113 - uniprop for 'Bidi_Control' property returns False for codes with this property
ok 114 - uniprop for 'Bidi_Control' property returns True for codes without this property
ok 115 - 0x202A.uniprop('Bidi_Class') returns LRE
ok 116 - 0xFB1F.uniprop('Word_Break') returns Hebrew_Letter
ok 117 - "\\n".uniprop('Line_Break') return LF
not ok 118 - uniprop('Line_Break') returns ZWJ for U+200D ZERO WIDTH JOINER# TODO MoarVM does not return correct values for all Line_Break properties
not ok 119 - uniprop('Line_Break') returns SA for U+103D MYANMAR CONSONANT SIGN MEDIAL WA# TODO MoarVM does not return correct values for all Line_Break properties
ok 120 - uniprop for Decomposition_Type returns Canonical for Canonical value codes
not ok 121 - uniprop for NFC_Quick_Check returns Maybe for ‘Maybe’ value codes# TODO MoarVM returns N/M/Y instead of their full names
not ok 122 - uniprop for NFC_Quick_Check returns Yes for ‘Yes’ value codes# TODO MoarVM returns N/M/Y instead of their full names
not ok 123 - uniprop for NFC_Quick_Check returns No for ‘No’ value codes# TODO MoarVM returns N/M/Y instead of their full names
not ok 124 - uniprop for NFD_Quick_Check returns False for codes without this property# TODO NFD_Quick_Check NFKC_Quick_Check NFKD_Quick_Check NYI in MoarVM
not ok 125 - uniprop for NFD_Quick_Check returns True for codes with this property# TODO NFD_Quick_Check NFKC_Quick_Check NFKD_Quick_Check NYI in MoarVM
not ok 126 - uniprop for NFKC_Quick_Check returns False for codes without this property# TODO NFD_Quick_Check NFKC_Quick_Check NFKD_Quick_Check NYI in MoarVM
not ok 127 - uniprop for NFKC_Quick_Check returns True for codes with this property# TODO NFD_Quick_Check NFKC_Quick_Check NFKD_Quick_Check NYI in MoarVM
not ok 128 - uniprop for NFKD_Quick_Check returns False for codes without this property# TODO NFD_Quick_Check NFKC_Quick_Check NFKD_Quick_Check NYI in MoarVM
not ok 129 - uniprop for NFKD_Quick_Check returns True for codes with this property# TODO NFD_Quick_Check NFKC_Quick_Check NFKD_Quick_Check NYI in MoarVM
not ok 130 - uniprop for Indic_Syllabic_Category returns N for ‘No’ value codes# TODO Indic_Syllabic_Category NYI in MoarVM
not ok 131 - uniprop for Indic_Syllabic_Category returns Other for codes without this property# TODO Indic_Syllabic_Category NYI in MoarVM
not ok 132 - uniprop for Canonical_Combining_Class works# TODO MoarVM returns only int's but not Canonical_Combining_Class's string value
not ok 133 - uniprop for ↉ returns A for East_Asian_Width# TODO East_Asian_Width NYI in MoarVM
not ok 134 - uniprop for ] returns Na for East_Asian_Width# TODO East_Asian_Width NYI in MoarVM
ok 135 - uniprop for Hangul_Syllable_Type works
ok 136 - uniprop for Grapheme_Cluster_Break returns Other for normal codepoints
ok 137 - uniprop for Grapheme_Cluster_Break returns LF for newline codepoint
ok 138 - uniprop for Joining_Group works
ok 139 - uniprop for Joining_Type works
ok 140 - uniprop for Sentence_Break works
ok 141 - uniprop for ISO_Comment returns an empty string. Must be empty since Unicode 5.2.0
not ok 142 - uniprop for Emoji returns True for emoji's# TODO Emoji properties NYI in MoarVM
ok 143 - uniprop for Emoji returns False for non-emoji's# TODO Emoji properties NYI in MoarVM
not ok 144 - uniprop for Emoji returns true for \## TODO Emoji properties NYI in MoarVM
not ok 145 - uniprop for Emoji_Modifier returns True for Emoji Modifiers# TODO Emoji properties NYI in MoarVM
ok 146 - uniprop for Emoji_Modifier returns False for non modifier Emoji's# TODO Emoji properties NYI in MoarVM
not ok 147 - uniprop for Emoji_Presentation returns True for visible Emoji codes# TODO Emoji properties NYI in MoarVM
ok 148 - uniprop for Emoji_Presentation returns False for Emoji's without this property# TODO Emoji properties NYI in MoarVM
ok 149 - uniprop for Emoji_Presentation returns False for non-Emoji's# TODO Emoji properties NYI in MoarVM
not ok 150 - uniprop for Emoji_All returns True for Emoji Modifiers# TODO Emoji properties NYI in MoarVM
not ok 151 - uniprop for Emoji_All returns True for non-modifier Emoji# TODO Emoji properties NYI in MoarVM
not ok 152 - uniprop for Emoji_All returns False for non-Emoji# TODO Emoji properties NYI in MoarVM
ok
All tests successful.
Test Summary Report
-------------------
t/spec/S15-unicode-information/uniprop.rakudo.moar (Wstat: 0 Tests: 152 Failed: 0)
TODO passed: 143, 146, 148-149
Files=1, Tests=152, 1 wallclock secs ( 0.04 usr 0.00 sys + 0.78 cusr 0.03 csys = 0.85 CPU)
Result: PASS
cpan@perlbuild2~/CPANPRC/rakudo (nom)$
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment