/*
**********************************************************************
*   Copyright (C) 2000, International Business Machines
*   Corporation and others.  All Rights Reserved.
**********************************************************************
*   Date        Name        Description
*   05/23/00    aliu        Creation.
**********************************************************************
*/
#include "testutil.h"
#include "unicode/unicode.h"
#include "unicode/unistr.h"

struct Split {
    UChar ch;
    int8_t i1;
    int8_t i2;
};

static const Split gTestUtilitySplit[] = {
    {0x0250, 4, 5}, // -1
    {0x02B0, 5, 6}, // -2
    {0x0370, 7, 8}, // -3
    {0x0530, 0, 10}, // -4
    {0x0590, 10, 11}, // -5
    {0x0750, 13, 0}, // -6
    {0x07C0, 14, 0}, // -7
    {0x10A0, 28, 29}, // -8
    {0x13A0, 0, 32}, // -9
    {0x16A0, 34, 35}, // -10
    {0x18B0, 37, 0}, // -11
    {0x2070, 40, 41}, // -12
    {0x20A0, 41, -31}, // -13
    {0x2150, 44, 45}, // -14
    {0x2190, 45, 46}, // -15
    {0x2440, 49, -32}, // -16
    {0x25A0, 53, 54}, // -17
    {0x27C0, 56, 0}, // -18
    {0x2FE0, 59, -33}, // -19
    {0x3040, 61, 62}, // -20
    {0x30A0, 62, 63}, // -21
    {0x3130, 64, 65}, // -22
    {0x3190, 65, -34}, // -23
    {0x4DB6, 70, 0}, // -24
    {0xA490, 72, -35}, // -25
    {0xD7A4, 74, 0}, // -26
    {0xFB50, 80, 81}, // -27
    {0xFE20, 0, -36}, // -28
    {0xFEFF, 85, 86}, // -29
    {0xFFF0, 87, -37}, // -30
    {0x20D0, 42, 43}, // -31
    {0x2460, 50, 51}, // -32
    {0x2FF0, 0, 60}, // -33
    {0x31A0, 66, -38}, // -34
    {0xA4D0, 73, 0}, //-35
    {0xFE30, 82, -39}, //-36
    {0xFFFE, 88, 0}, //-37
    {0x31C0, 67, 0}, // -38
    {0xFE50, 83, -40}, //-39
    {0xFE70, 84, 85} // -40
};

int8_t TestUtility::getBlock(UChar c) {
  int8_t block = charToBlock[((uint16_t)c) >> 7];
  while (block < 0) { // take care of exceptions, blocks split across 128 boundaries
      const Split *tuple = &gTestUtilitySplit[-block-1];
      if (c < tuple->ch)
          block = tuple->i1;
      else
          block = tuple->i2;
  }
  return block;
}

// returns next letter of script, or 0xFFFF if done

UChar TestUtility::getNextLetter(UChar c, int8_t script) {
    while (c < 0xFFFF) {
        ++c;
        if (getScript(c) == script && Unicode::isLetter(c)) {
            return c;
        }
    }
    return c;
}

static const UChar HEX[16]={48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70};

UnicodeString TestUtility::hex(UChar ch) {
    UnicodeString buf;
    buf.append(HEX[0xF&(ch>>12)]);
    buf.append(HEX[0xF&(ch>>8)]);
    buf.append(HEX[0xF&(ch>>4)]);
    buf.append(HEX[0xF&ch]);
    return buf;
}

UnicodeString TestUtility::hex(const UnicodeString& s) {
    return hex(s, 44 /*,*/);
}

UnicodeString TestUtility::hex(const UnicodeString& s, UChar sep) {
    if (s.length() == 0) return "";
    UnicodeString result = hex(s.charAt(0));
    for (int32_t i = 1; i < s.length(); ++i) {
        result.append(sep);
        result.append(hex(s.charAt(i)));
    }
    return result;
}

const int8_t TestUtility::blockToScript[] = {
    COMMON_SCRIPT, // 0, <RESERVED_BLOCK>
    LATIN_SCRIPT, // 1, BASIC_LATIN
    LATIN_SCRIPT, // 2, LATIN_1_SUPPLEMENT
    LATIN_SCRIPT, // 3, LATIN_EXTENDED_A
    LATIN_SCRIPT, // 4, LATIN_EXTENDED_B
    LATIN_SCRIPT, // 5, IPA_EXTENSIONS
    COMMON_SCRIPT, // 6, SPACING_MODIFIER_LETTERS
    COMMON_SCRIPT, // 7, COMBINING_DIACRITICAL_MARKS
    GREEK_SCRIPT, // 8, GREEK
    CYRILLIC_SCRIPT, // 9, CYRILLIC
    ARMENIAN_SCRIPT, // 10, ARMENIAN
    HEBREW_SCRIPT, // 11, HEBREW
    ARABIC_SCRIPT, // 12, ARABIC
    SYRIAC_SCRIPT, // 13, SYRIAC
    THAANA_SCRIPT, // 14, THAANA
    DEVANAGARI_SCRIPT, // 15, DEVANAGARI
    BENGALI_SCRIPT, // 16, BENGALI
    GURMUKHI_SCRIPT, // 17, GURMUKHI
    GUJARATI_SCRIPT, // 18, GUJARATI
    ORIYA_SCRIPT, // 19, ORIYA
    TAMIL_SCRIPT, // 20, TAMIL
    TELUGU_SCRIPT, // 21, TELUGU
    KANNADA_SCRIPT, // 22, KANNADA
    MALAYALAM_SCRIPT, // 23, MALAYALAM
    SINHALA_SCRIPT, // 24, SINHALA
    THAI_SCRIPT, // 25, THAI
    LAO_SCRIPT, // 26, LAO
    TIBETAN_SCRIPT, // 27, TIBETAN
    MYANMAR_SCRIPT, // 28, MYANMAR
    GEORGIAN_SCRIPT, // 29, GEORGIAN
    JAMO_SCRIPT, // 30, HANGUL_JAMO
    ETHIOPIC_SCRIPT, // 31, ETHIOPIC
    CHEROKEE_SCRIPT, // 32, CHEROKEE
    ABORIGINAL_SCRIPT, // 33, UNIFIED_CANADIAN_ABORIGINAL_SYLLABICS
    OGHAM_SCRIPT, // 34, OGHAM
    RUNIC_SCRIPT, // 35, RUNIC
    KHMER_SCRIPT, // 36, KHMER
    MONGOLIAN_SCRIPT, // 37, MONGOLIAN
    LATIN_SCRIPT, // 38, LATIN_EXTENDED_ADDITIONAL
    GREEK_SCRIPT, // 39, GREEK_EXTENDED
    COMMON_SCRIPT, // 40, GENERAL_PUNCTUATION
    COMMON_SCRIPT, // 41, SUPERSCRIPTS_AND_SUBSCRIPTS
    COMMON_SCRIPT, // 42, CURRENCY_SYMBOLS
    COMMON_SCRIPT, // 43, COMBINING_MARKS_FOR_SYMBOLS
    COMMON_SCRIPT, // 44, LETTERLIKE_SYMBOLS
    COMMON_SCRIPT, // 45, NUMBER_FORMS
    COMMON_SCRIPT, // 46, ARROWS
    COMMON_SCRIPT, // 47, MATHEMATICAL_OPERATORS
    COMMON_SCRIPT, // 48, MISCELLANEOUS_TECHNICAL
    COMMON_SCRIPT, // 49, CONTROL_PICTURES
    COMMON_SCRIPT, // 50, OPTICAL_CHARACTER_RECOGNITION
    COMMON_SCRIPT, // 51, ENCLOSED_ALPHANUMERICS
    COMMON_SCRIPT, // 52, BOX_DRAWING
    COMMON_SCRIPT, // 53, BLOCK_ELEMENTS
    COMMON_SCRIPT, // 54, GEOMETRIC_SHAPES
    COMMON_SCRIPT, // 55, MISCELLANEOUS_SYMBOLS
    COMMON_SCRIPT, // 56, DINGBATS
    COMMON_SCRIPT, // 57, BRAILLE_PATTERNS
    HAN_SCRIPT, // 58, CJK_RADICALS_SUPPLEMENT
    HAN_SCRIPT, // 59, KANGXI_RADICALS
    HAN_SCRIPT, // 60, IDEOGRAPHIC_DESCRIPTION_CHARACTERS
    COMMON_SCRIPT, // 61, CJK_SYMBOLS_AND_PUNCTUATION
    HIRAGANA_SCRIPT, // 62, HIRAGANA
    KATAKANA_SCRIPT, // 63, KATAKANA
    BOPOMOFO_SCRIPT, // 64, BOPOMOFO
    JAMO_SCRIPT, // 65, HANGUL_COMPATIBILITY_JAMO
    HAN_SCRIPT, // 66, KANBUN
    BOPOMOFO_SCRIPT, // 67, BOPOMOFO_EXTENDED
    COMMON_SCRIPT, // 68, ENCLOSED_CJK_LETTERS_AND_MONTHS
    COMMON_SCRIPT, // 69, CJK_COMPATIBILITY
    HAN_SCRIPT, // 70, CJK_UNIFIED_IDEOGRAPHS_EXTENSION_A
    HAN_SCRIPT, // 71, CJK_UNIFIED_IDEOGRAPHS
    YI_SCRIPT, // 72, YI_SYLLABLES
    YI_SCRIPT, // 73, YI_RADICALS
    HANGUL_SCRIPT, // 74, HANGUL_SYLLABLES
    COMMON_SCRIPT, // 75, HIGH_SURROGATES
    COMMON_SCRIPT, // 76, HIGH_PRIVATE_USE_SURROGATES
    COMMON_SCRIPT, // 77, LOW_SURROGATES
    COMMON_SCRIPT, // 78, PRIVATE_USE
    HAN_SCRIPT, // 79, CJK_COMPATIBILITY_IDEOGRAPHS
    COMMON_SCRIPT, // 80, ALPHABETIC_PRESENTATION_FORMS
    ARABIC_SCRIPT, // 81, ARABIC_PRESENTATION_FORMS_A
    COMMON_SCRIPT, // 82, COMBINING_HALF_MARKS
    COMMON_SCRIPT, // 83, CJK_COMPATIBILITY_FORMS
    COMMON_SCRIPT, // 84, SMALL_FORM_VARIANTS
    ARABIC_SCRIPT, // 85, ARABIC_PRESENTATION_FORMS_B
    COMMON_SCRIPT, // 86, SPECIALS
    COMMON_SCRIPT, // 87, HALFWIDTH_AND_FULLWIDTH_FORMS
    COMMON_SCRIPT, // 88, SPECIALS
};

const int8_t TestUtility::charToBlock[] = {
  1, 2, 3, 4, -1, -2, -3, 8, 9, 9, -4, -5, 12, 12, -6, -7,
  0, 0, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 27,
  28, -8, 30, 30, 31, 31, 31, -9, 33, 33, 33, 33, 33, -10, 0, 36,
  37, -11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 38, 38, 39, 39,
  -12, -13, -14, -15, 47, 47, 48, 48, -16, 51, 52, -17, 55, 55, 56, -18,
  57, 57, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 58, 59, -19,
  -20, -21, -22, -23, 68, 68, 69, 69, 70, 70, 70, 70, 70, 70, 70, 70,
  70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70,
  70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70,
  70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, -24, 71, 71, 71, 71,
  71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
  71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
  71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
  71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
  71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
  71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
  71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
  71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
  71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
  71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
  72, 72, 72, 72, 72, 72, 72, 72, 72, -25, 0, 0, 0, 0, 0, 0,
  0, 0, 0, 0, 0, 0, 0, 0, 74, 74, 74, 74, 74, 74, 74, 74,
  74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74,
  74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74,
  74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74,
  74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74,
  74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, -26,
  75, 75, 75, 75, 75, 75, 75, 76, 77, 77, 77, 77, 77, 77, 77, 77,
  78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78,
  78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78,
  78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78,
  78, 78, 79, 79, 79, 79, -27, 81, 81, 81, 81, 81, -28, -29, 87, -30
};
