spiegel-keyman/developer/kmcompx/tests/meson.build_700

738 lines
15 KiB
Text

#
# Keyman is copyright (C) SIL International. MIT License.
#
# Cross platform build script to compile and run tests for kmcompx
#
tests_flags = []
# We'll use the test kmx files from Core for now
input_path = join_paths(
meson.current_source_dir(),
'../../../core/tests/unit/kmx'
)
output_path = meson.current_build_dir()
kmcompxtest = executable('kmcompxtest', 'kmcompxtest.cpp',
cpp_args: defns,
include_directories: inc,
link_args: links + tests_flags,
dependencies: [version_lib],
objects: lib.extract_all_objects())
tests = [
'000 - null keyboard',
'001 - basic input UnicodeI',
'002 - basic input Unicode',
'003 - nul',
'004 - basic input (shift 2)',
'005 - nul with initial context',
'006 - vkey input (shift ctrl)',
'007 - vkey input (ctrl alt)',
'008 - vkey input (ctrl alt 2)',
'012 - ralt',
'013 - deadkeys',
'014 - groups and virtual keys',
'015 - ralt 2',
'017 - space mnemonic kbd',
'018 - nul testing',
'019 - multiple deadkeys',
'020 - deadkeys and backspace',
'021 - options',
'022 - options with preset',
'023 - options with save',
'024 - options with save and preset',
'025 - options with reset',
'026 - system stores',
'027 - system stores 2',
'028 - smp',
'029 - beep',
'030 - multiple groups',
'031 - caps lock',
'032 - caps control',
'033 - caps always off',
'034 - options double set reset',
'035 - options double set staged',
'036 - options - double reset staged',
'037 - options - double reset',
'038 - punctkeys',
'039 - generic ctrlalt',
'040 - long context',
'041 - long context and deadkeys',
'042 - long context and split deadkeys',
'043 - output and keystroke',
'cim',
'colchis_phonetic',
'finongan',
'hcesar',
'ishkashimi_cyrillic',
'meitei_legacy',
'munji',
'naijatype',
'pingelap',
'remington_gail',
'santali_latin',
'taigi_poj',
'tangsa_lakhum',
'teggargrent_lat',
'wakhi_cyrillic',
'wakhi_standard',
'wancho',
'adiga_danef',
'ahom_star',
'aksarabali_panlex',
'anii',
'arabic_izza',
'aramaic_hebrew',
'armenian_mnemonic',
'athinkra_vai',
'athinkra_vai_typewriter',
'balochi_inpage',
'balochi_latin',
'balochi_persian',
'balochi_phonetic',
'balochi_scientific',
'balochi_urdu',
'bangla_joy',
'bangla_munir',
'bangla_probhat',
'basic_kbda1',
'basic_kbda2',
'basic_kbda3',
'basic_kbdadlm',
'basic_kbdal',
'basic_kbdarme',
'basic_kbdarmph',
'basic_kbdarmty',
'basic_kbdarmw',
'basic_kbdaze',
'basic_kbdazel',
'basic_kbdazst',
'basic_kbdbash',
'basic_kbdbe',
'basic_kbdbene',
'basic_kbdbgph',
'basic_kbdbgph1',
'basic_kbdbhc',
'basic_kbdblr',
'basic_kbdbr',
'basic_kbdbu',
'basic_kbdbug',
'basic_kbdbulg',
'basic_kbdca',
'basic_kbdcan',
'basic_kbdcher',
'basic_kbdcherp',
'basic_kbdcr',
'basic_kbdcz',
'basic_kbdcz1',
'basic_kbdcz2',
'basic_kbdda',
'basic_kbddiv1',
'basic_kbddiv2',
'basic_kbddv',
'basic_kbddzo',
'basic_kbdes',
'basic_kbdest',
'basic_kbdfa',
'basic_kbdfar',
'basic_kbdfi',
'basic_kbdfi1',
'basic_kbdfo',
'basic_kbdfr',
'basic_kbdfthrk',
'basic_kbdgae',
'basic_kbdgeo',
'basic_kbdgeoer',
'basic_kbdgeome',
'basic_kbdgeooa',
'basic_kbdgeoqw',
'basic_kbdgkl',
'basic_kbdgn',
'basic_kbdgr',
'basic_kbdgr1',
'basic_kbdgrlnd',
'basic_kbdgthc',
'basic_kbdhau',
'basic_kbdhaw',
'basic_kbdhe',
'basic_kbdhe220',
'basic_kbdhe319',
'basic_kbdheb',
'basic_kbdhebl3',
'basic_kbdhela2',
'basic_kbdhela3',
'basic_kbdhept',
'basic_kbdhu',
'basic_kbdhu1',
'basic_kbdibo',
'basic_kbdic',
'basic_kbdinasa',
'basic_kbdinbe2',
'basic_kbdinben',
'basic_kbdindev',
'basic_kbdinen',
'basic_kbdinguj',
'basic_kbdinhin',
'basic_kbdinkan',
'basic_kbdinmal',
'basic_kbdinmar',
'basic_kbdinori',
'basic_kbdinpun',
'basic_kbdintam',
'basic_kbdintel',
'basic_kbdinuk2',
'basic_kbdir',
'basic_kbdit',
'basic_kbdit142',
'basic_kbdiulat',
'basic_kbdjav',
'basic_kbdkaz',
'basic_kbdkhmr',
'basic_kbdkni',
'basic_kbdkurd',
'basic_kbdkyr',
'basic_kbdla',
'basic_kbdlao',
'basic_kbdlisub',
'basic_kbdlisus',
'basic_kbdlt',
'basic_kbdlt1',
'basic_kbdlt2',
'basic_kbdlv',
'basic_kbdlv1',
'basic_kbdlvst',
'basic_kbdmac',
'basic_kbdmacst',
'basic_kbdmaori',
'basic_kbdmlt47',
'basic_kbdmlt48',
'basic_kbdmon',
'basic_kbdmonmo',
'basic_kbdmonst',
'basic_kbdmyan',
'basic_kbdne',
'basic_kbdnepr',
'basic_kbdnko',
'basic_kbdno',
'basic_kbdno1',
'basic_kbdnso',
'basic_kbdntl',
'basic_kbdogham',
'basic_kbdolch',
'basic_kbdoldit',
'basic_kbdosa',
'basic_kbdosm',
'basic_kbdpash',
'basic_kbdphags',
'basic_kbdpl',
'basic_kbdpl1',
'basic_kbdpo',
'basic_kbdropr',
'basic_kbdrost',
'basic_kbdru',
'basic_kbdru1',
'basic_kbdrum',
'basic_kbdsf',
'basic_kbdsg',
'basic_kbdsl',
'basic_kbdsl1',
'basic_kbdsmsfi',
'basic_kbdsmsno',
'basic_kbdsn1',
'basic_kbdsora',
'basic_kbdsorex',
'basic_kbdsors1',
'basic_kbdsp',
'basic_kbdsw',
'basic_kbdsw09',
'basic_kbdsyr1',
'basic_kbdsyr2',
'basic_kbdtaile',
'basic_kbdtajik',
'basic_kbdtam99',
'basic_kbdth0',
'basic_kbdth1',
'basic_kbdth2',
'basic_kbdth3',
'basic_kbdtifi',
'basic_kbdtifi2',
'basic_kbdtiprd',
'basic_kbdtt102',
'basic_kbdtuf',
'basic_kbdtuq',
'basic_kbdturme',
'basic_kbdtzm',
'basic_kbdughr',
'basic_kbdughr1',
'basic_kbduk',
'basic_kbdukx',
'basic_kbdur',
'basic_kbdur1',
'basic_kbdurdu',
'basic_kbdus',
'basic_kbdusa',
'basic_kbdusl',
'basic_kbdusr',
'basic_kbdusx',
'basic_kbduzb',
'basic_kbdvntc',
'basic_kbdwol',
'basic_kbdyak',
'basic_kbdyba',
'basic_kbdycc',
'basic_kbdycl',
'batak',
'baybayin',
'bj_cree_east',
'bj_cree_east_james_bay',
'bj_cree_east_latn',
'bj_cree_west_latn',
'bj_cree_woods',
'bj_innu',
'bj_innu_phonemic',
'bj_mista_wasaha_cree',
'bj_naskapi_classic',
'bj_naskapi_common',
'bj_oji_cree',
'btl_kenya',
'buhid',
'burushaski_girminas',
'bu_phonetic',
'cabecar',
'chinuk_wawa',
'clavbur9',
'colchis_latin',
'common_devanagari',
'coptic_greek',
'coptic_qwerty',
'dagbani',
'dega',
'dene',
'easy_chakma',
'eKwtamil99Uni',
'eKwTamil99UniUpdt',
'el_dinka',
'el_harari_latin',
'el_naija',
'el_nuer',
'el_pasifika',
'el_yolngu',
'embera_north',
'enga',
'enggano',
'english_shavian_igc',
'english_shavian_qwerty',
'engram',
'esperuni',
'farsiman',
'fulfulde_ajami_qwerty',
'fulfulde_latin_qwerty',
'fv_anicinapemi8in',
'fv_anishinaabemowin',
'fv_atikamekw',
'fv_australian',
'fv_blackfoot',
'fv_bodewadminwen',
'fv_cree_latin',
'fv_dakelh',
'fv_dakota_mb',
'fv_dakota_sk',
'fv_dane_zaa_zaage',
'fv_denesuline',
'fv_denesuline_epsilon',
'fv_dene_dzage',
'fv_dene_mb',
'fv_dene_nt',
'fv_dene_zhatie',
'fv_dexwlesucid',
'fv_diitiidatx',
'fv_dine_bizaad',
'fv_eastern_canadian_inuktitut',
'fv_gitsenimx',
'fv_goyogohono',
'fv_gwichin',
'fv_hailzaqvla',
'fv_haisla',
'fv_halqemeylem',
'fv_han',
'fv_henqeminem',
'fv_hlgaagilda_xaayda_kil',
'fv_hulquminum',
'fv_ilnu_innu_aimun',
'fv_inuvialuktun',
'fv_isga_iabi',
'fv_kanienkeha_e',
'fv_kashogotine_yati',
'fv_klahoose',
'fv_ktunaxa',
'fv_kwakwala',
'fv_kwakwala_liqwala',
'fv_lakota',
'fv_lunaapeewi_huluniixsuwaakan',
'fv_maori',
'fv_migmaq',
'fv_moose_cree',
'fv_nakoda',
'fv_naskapi',
'fv_natwits',
'fv_neeaandeg',
'fv_neeaaneegn',
'fv_nexwslayemucen',
'fv_nisgaa',
'fv_nlekepmxcin',
'fv_nlha7kapmxtsin',
'fv_northern_east_cree',
'fv_northern_tutchone',
'fv_nsilxcen',
'fv_nuucaanul',
'fv_nuxalk',
'fv_ojibwa',
'fv_onayotaaka',
'fv_onodagega_onondagega',
'fv_onodowaga',
'fv_plains_cree',
'fv_sahugotine_yati',
'fv_secwepemctsin',
'fv_sencoten',
'fv_severn_ojibwa',
'fv_shashishalhem',
'fv_shihgotine_yati',
'fv_skaru_re',
'fv_skicinuwatuwewakon',
'fv_skwxwumesh_snichim',
'fv_smalgyax',
'fv_southern_carrier',
'fv_southern_tutchone',
'fv_statimcets',
'fv_stlatlimxec',
'fv_swampy_cree',
'fv_tagizi_dene',
'fv_taltan',
'fv_tlicho_yatii',
'fv_tlingit',
'fv_tsekehne',
'fv_tsilhqotin',
'fv_tsuutina',
'fv_uummarmiutun',
'fv_uwikala',
'fv_wendat',
'fv_wobanakiodwawogan',
'fv_xaislakala',
'galaxie_greek_mnemonic',
'galaxie_greek_positional',
'galaxie_hebrew_mnemonic',
'galaxie_hebrew_positional',
'gandhari',
'geezbrhan',
'gff-amh-7',
'gff_amharic',
'gff_amharic_classic',
'gff_amh_7',
'gff_blin',
'gff_ethiopic_7',
'gff_geez',
'gff_gurage',
'gff_gurage_legacy',
'gff_musnad',
'gff_tigrinya_eritrea',
'gff_tigrinya_ethiopia',
'ghana',
'gilaki',
'gilaki_phonetic',
'gondi_dev',
'gondi_gunjala',
'gondi_tel',
'greekclassical',
'haroi',
'hausa_ajami_qwerty',
'hausa_kano',
'header',
'hieroglyphic',
'hindi_modular',
'indigenous_nt',
'indonesia',
'indonesian_suku',
'inuktitut_latin',
'inuktitut_naqittaut',
'inuktitut_pirurvik',
'itrans_bengali',
'itrans_devanagari_hindi',
'itrans_devanagari_sanskrit_vedic',
'itrans_gujarati',
'itrans_gurmukhi',
'itrans_odia',
'itrans_roman',
'jawa',
'jorai',
'kayan',
'kbdsn1',
'khmer_advanced',
'khmer_angkor',
'kmhmu_2008',
'koalibrere',
'korean_rr',
'krung',
'lahu',
'lamkaang',
'landuma',
'lao_2008_basic',
'lao_2008_rapid',
'lao_pali',
'lao_pali_us',
'lao_phonetic',
'lazuri',
'libtralo',
'malar_braille',
'malar_malayalam',
'malar_malayalam_inscript',
'malar_tirhuta',
'maltese',
'mandaic_phonetic',
'masaram_gondi',
'me_en',
'mongolian_cyrillic_qwerty',
'mon_anonta',
'mon_phonetic',
'mozhi_malayalam',
'mro_phonetic',
'multi_pak_phonetic',
'myancode_san',
'nailangs',
'nepali_traditional',
'newa_romanized',
'newa_traditional',
'nias',
'nisenan',
'nko',
'nkonya',
'nlci_bengali_winscript',
'nlci_devanagari_winscript',
'nlci_gujarati_winscript',
'nlci_gurmukhi_winscript',
'nlci_ipa',
'nlci_kannada_winscript',
'nlci_malayalam_winscript',
'nlci_oriya_winscript',
'nlci_tamil_winscript',
'nlci_telugu_winscript',
'nrc_crk_cans',
'nrc_makah',
'ntl_onekey',
'numanggang',
'nw_iranian_latin',
'obolo_chwerty',
'obolo_qwerty',
'old_hungarian',
'old_turkic_udw21_qwerty',
'osage_nation',
'o_tissi',
'persian_phonetic',
'pid_piaroa',
'postmodern_english_uk_dualstroke',
'postmodern_english_uk_natural',
'postmodern_english_us_dualstroke',
'postmodern_english_us_natural',
'pukapuka',
'qom',
'quinault',
'qwerty_farang',
'rac_aer',
'rac_arabic',
'rac_balti',
'rac_brahui',
'rac_brahui_latin',
'rac_burushaski',
'rac_dameli',
'rac_dhatki',
'rac_dogri',
'rac_gawar_bati',
'rac_gawri',
'rac_hazaragi',
'rac_hindko',
'rac_indus_kohistani',
'rac_kalasha',
'rac_kashmiri',
'rac_kashmir_shina',
'rac_khowar',
'rac_marwari',
'rac_munji',
'rac_oadki',
'rac_ormuri',
'rac_pahari',
'rac_palula',
'rac_parkari_koli',
'rac_pashai',
'rac_pashto',
'rac_saraiki',
'rac_shina',
'rac_sindhi',
'rac_torwali',
'rac_urdu',
'rac_ushojo',
'rac_uyghur',
'rac_wadiyara',
'rac_wakhi',
'rac_western_punjabi',
'rac_yidgha',
'rawang',
'rohingya_arab',
'russian_mnemonic_r',
'sabdalipi_assamese',
'sahaptin_umatilla',
'sahaptin_yakima',
'sanjha_punjabi',
'saraiki',
'shahmukhi_phonetic',
'shan',
'sil_akha_act',
'sil_arabic_phonetic',
'sil_areare',
'sil_bari',
'sil_bengali_phonetic',
'sil_bolivia',
'sil_boonkit',
'sil_brao',
'sil_bru',
'sil_buang',
'sil_bunong',
'sil_busa',
'sil_bwe_karen',
'sil_cameroon_azerty',
'sil_cameroon_qwerty',
'sil_cherokee_nation',
'sil_cheyenne',
'sil_cipher_music',
'sil_devanagari_phonetic',
'sil_devanagari_romanized',
'sil_dzongkha',
'sil_eastern_congo',
'sil_el_ethiopian_latin',
'sil_ethiopic',
'sil_ethiopic_power_g',
'sil_euro_latin',
'sil_extended_urdu_np',
'sil_greek_polytonic',
'sil_hawaiian',
'sil_hebrew',
'sil_hebrew_legacy',
'sil_hebr_grek_trans',
'sil_hmd_plrd',
'sil_indic_roman',
'sil_ipa',
'sil_jarai',
'sil_kayah_kali',
'sil_kayah_latn',
'sil_kayah_mymr',
'sil_khmer',
'sil_khowar',
'sil_kmhmu',
'sil_korda_jamo',
'sil_korda_latin',
'sil_korean_morse',
'sil_kvl_kayaw',
'sil_lepcha',
'sil_limbu_phonetic',
'sil_limbu_typewriter',
'sil_lisu_basic',
'sil_lisu_standard',
'sil_lpo_plrd',
'sil_madi',
'sil_makuri',
'sil_mali_azerty',
'sil_mali_qwerty',
'sil_mali_qwertz',
'sil_moore',
'sil_myanmar_my3',
'sil_myanmar_mywinext',
'sil_nigeria_dot',
'sil_nigeria_odd_vowels',
'sil_nigeria_underline',
'sil_nko',
'sil_nubian',
'sil_pan_africa_mnemonic',
'sil_pan_africa_positional',
'sil_philippines',
'sil_sahu',
'sil_sgaw_karen',
'sil_shan',
'sil_tai_dam',
'sil_tai_dam_lao',
'sil_tai_dam_latin',
'sil_tawallammat',
'sil_tchad',
'sil_tepehuan',
'sil_torwali',
'sil_tunisian',
'sil_uganda_tanzania',
'sil_vai',
'sil_ygp_plrd',
'sil_yi',
'sil_yna_plrd',
'sil_yoruba8',
'sil_yoruba_bar',
'sil_yoruba_dot',
'sil_yupik_cyrillic',
'sil_ywq_plrd',
'soqotri_arabic',
'srr_ajami_qwerty',
'sundanese',
'sundanese_latin',
'swanalekha_malayalam',
'sxava',
'sylheti_nagri',
'syriac_arabic',
'syriac_phonetic',
'tainua',
'tawallammat_latin',
'tem_kdh',
'thamizha_anjal_paangu',
'thamizha_bamini',
'thamizha_new_typewriter',
'thamizha_tamil99_ext',
'tibetan_direct_input',
'tibetan_ewts',
'tlahuica',
'tohono_oodham',
'tuareg_tifinagh',
'turkmen_cyrl',
'udi_keyboard',
'ukwuani',
'uma_graphic',
'uma_phonetic',
'urdu_phonetic',
'urdu_phonetic_crulp',
'venetia_et_histria',
'vietnamese_telex',
'vietnamese_telex_legacy',
'vietnamese_vni',
'vm_tamil_modular',
'vm_tamil_typewriter',
'wakhi_anglicized',
'warang_citi',
'wolofal',
'xinaliq',
'yiddish_pasekh',
'yidgha',
'044 - if and context',
'045 - deadkey and context',
'046 - deadkey and contextex',
'047 - caps always off initially on',
'048 - modifier keys keep context'
]
foreach kbd : tests
kbd_src = join_paths(input_path, kbd) + '.kmn'
kbd_obj = join_paths(output_path, kbd) + '.kmx'
test(kbd, kmcompxtest, args: [kbd_src, kbd_obj])
endforeach