"""
tests
"""

import pytest
from load_one_data import dump_diff, dump_same_and_not_same, one_dump_test

from ArWikiCats.new_resolvers.relations_resolver.nationalities_double_v2 import resolve_by_nats_double_v2

male_tests = {
    "sri lankan tamil descent": "أصل تاميلي سريلانكي",
    "jewish german history": "تاريخ ألماني يهودي",
    "german jewish history": "تاريخ ألماني يهودي",
    "afghan jewish descent": "أصل أفغاني يهودي",
    "afghan-jewish descent": "أصل أفغاني يهودي",
    "african jewish descent": "أصل إفريقي يهودي",
    "african jewish diaspora": "شتات إفريقي يهودي",
    "african-jewish descent": "أصل إفريقي يهودي",
    "african-jewish diaspora": "شتات إفريقي يهودي",
    "algerian jewish descent": "أصل جزائري يهودي",
    "algerian jewish diaspora": "شتات جزائري يهودي",
    "algerian-jewish descent": "أصل جزائري يهودي",
    "algerian-jewish diaspora": "شتات جزائري يهودي",
    "american jewish descent": "أصل أمريكي يهودي",
    "american jewish diaspora": "شتات أمريكي يهودي",
    "american-jewish descent": "أصل أمريكي يهودي",
    "american-jewish diaspora": "شتات أمريكي يهودي",
    "argentine jewish descent": "أصل أرجنتيني يهودي",
    "argentine jewish diaspora": "شتات أرجنتيني يهودي",
    "argentine-jewish descent": "أصل أرجنتيني يهودي",
    "argentine-jewish diaspora": "شتات أرجنتيني يهودي",
    "armenian jewish descent": "أصل أرميني يهودي",
    "armenian-jewish descent": "أصل أرميني يهودي",
    "asian jewish descent": "أصل آسيوي يهودي",
    "asian jewish diaspora": "شتات آسيوي يهودي",
    "asian south african": "آسيويون جنوب إفريقيون",
    "asian-jewish descent": "أصل آسيوي يهودي",
    "asian-jewish diaspora": "شتات آسيوي يهودي",
    "australian jewish descent": "أصل أسترالي يهودي",
    "australian jewish diaspora": "شتات أسترالي يهودي",
    "australian-jewish descent": "أصل أسترالي يهودي",
    "australian-jewish diaspora": "شتات أسترالي يهودي",
    "austrian jewish descent": "أصل نمساوي يهودي",
    "austrian jewish diaspora": "شتات نمساوي يهودي",
    "austrian-jewish descent": "أصل نمساوي يهودي",
    "austrian-jewish diaspora": "شتات نمساوي يهودي",
    "azerbaijani jewish descent": "أصل أذربيجاني يهودي",
    "azerbaijani-jewish descent": "أصل أذربيجاني يهودي",
    "belarusian jewish descent": "أصل بيلاروسي يهودي",
    "belarusian jewish diaspora": "شتات بيلاروسي يهودي",
    "belarusian-jewish descent": "أصل بيلاروسي يهودي",
    "belarusian-jewish diaspora": "شتات بيلاروسي يهودي",
    "belgian jewish descent": "أصل بلجيكي يهودي",
    "belgian-jewish descent": "أصل بلجيكي يهودي",
    "bosnia and herzegovina jewish descent": "أصل بوسني يهودي",
    "bosnia and herzegovina-jewish descent": "أصل بوسني يهودي",
    "brazilian jewish descent": "أصل برازيلي يهودي",
    "brazilian jewish diaspora": "شتات برازيلي يهودي",
    "brazilian-jewish descent": "أصل برازيلي يهودي",
    "brazilian-jewish diaspora": "شتات برازيلي يهودي",
    "british jewish descent": "أصل بريطاني يهودي",
    "british jewish diaspora": "شتات بريطاني يهودي",
    "british-jewish descent": "أصل بريطاني يهودي",
    "british-jewish diaspora": "شتات بريطاني يهودي",
    "bulgarian jewish descent": "أصل بلغاري يهودي",
    "bulgarian jewish diaspora": "شتات بلغاري يهودي",
    "bulgarian-jewish descent": "أصل بلغاري يهودي",
    "bulgarian-jewish diaspora": "شتات بلغاري يهودي",
    "burmese jewish descent": "أصل بورمي يهودي",
    "burmese-jewish descent": "أصل بورمي يهودي",
    "cameroonian jewish descent": "أصل كاميروني يهودي",
    "cameroonian-jewish descent": "أصل كاميروني يهودي",
    "canadian jewish descent": "أصل كندي يهودي",
    "canadian jewish diaspora": "شتات كندي يهودي",
    "canadian-jewish descent": "أصل كندي يهودي",
    "canadian-jewish diaspora": "شتات كندي يهودي",
    "chilean jewish descent": "أصل تشيلي يهودي",
    "chilean-jewish descent": "أصل تشيلي يهودي",
    "chinese canadians": "صينيون كنديون",
    "chinese jewish descent": "أصل صيني يهودي",
    "chinese jewish diaspora": "شتات صيني يهودي",
    "chinese-jewish descent": "أصل صيني يهودي",
    "chinese-jewish diaspora": "شتات صيني يهودي",
    "colombian jewish descent": "أصل كولومبي يهودي",
    "colombian-jewish descent": "أصل كولومبي يهودي",
    "coptic british": "أقباط بريطانيون",
    "costa rican jewish descent": "أصل كوستاريكي يهودي",
    "costa rican-jewish descent": "أصل كوستاريكي يهودي",
    "croatian jewish descent": "أصل كرواتي يهودي",
    "croatian-jewish descent": "أصل كرواتي يهودي",
    "cuban jewish descent": "أصل كوبي يهودي",
    "cuban-jewish descent": "أصل كوبي يهودي",
    "czech jewish descent": "أصل تشيكي يهودي",
    "czech jewish diaspora": "شتات تشيكي يهودي",
    "czech-jewish descent": "أصل تشيكي يهودي",
    "czech-jewish diaspora": "شتات تشيكي يهودي",
    "czechoslovak jewish descent": "أصل تشيكوسلوفاكي يهودي",
    "czechoslovak-jewish descent": "أصل تشيكوسلوفاكي يهودي",
    "danish jewish descent": "أصل دنماركي يهودي",
    "danish-jewish descent": "أصل دنماركي يهودي",
    "dutch jewish descent": "أصل هولندي يهودي",
    "dutch jewish diaspora": "شتات هولندي يهودي",
    "dutch-jewish descent": "أصل هولندي يهودي",
    "dutch-jewish diaspora": "شتات هولندي يهودي",
    "egyptian jewish descent": "أصل مصري يهودي",
    "egyptian jewish diaspora": "شتات مصري يهودي",
    "egyptian-jewish descent": "أصل مصري يهودي",
    "egyptian-jewish diaspora": "شتات مصري يهودي",
    "english jewish descent": "أصل إنجليزي يهودي",
    "english jewish diaspora": "شتات إنجليزي يهودي",
    "english-jewish descent": "أصل إنجليزي يهودي",
    "english-jewish diaspora": "شتات إنجليزي يهودي",
    "estonian jewish descent": "أصل إستوني يهودي",
    "estonian-jewish descent": "أصل إستوني يهودي",
    "ethiopian jewish descent": "أصل إثيوبي يهودي",
    "ethiopian jewish diaspora": "شتات إثيوبي يهودي",
    "ethiopian-jewish descent": "أصل إثيوبي يهودي",
    "ethiopian-jewish diaspora": "شتات إثيوبي يهودي",
    "european jewish descent": "أصل أوروبي يهودي",
    "european jewish diaspora": "شتات أوروبي يهودي",
    "european-jewish descent": "أصل أوروبي يهودي",
    "european-jewish diaspora": "شتات أوروبي يهودي",
    "finnish jewish descent": "أصل فنلندي يهودي",
    "finnish-jewish descent": "أصل فنلندي يهودي",
    "french jewish descent": "أصل فرنسي يهودي",
    "french jewish diaspora": "شتات فرنسي يهودي",
    "french-jewish descent": "أصل فرنسي يهودي",
    "french-jewish diaspora": "شتات فرنسي يهودي",
    "georgian jewish descent": "أصل جورجي يهودي",
    "georgian-jewish descent": "أصل جورجي يهودي",
    "german jewish descent": "أصل ألماني يهودي",
    "german jewish diaspora": "شتات ألماني يهودي",
    "german romanian descent": "أصل ألماني روماني",
    "german-jewish descent": "أصل ألماني يهودي",
    "german-jewish diaspora": "شتات ألماني يهودي",
    "greek jewish descent": "أصل يهودي يوناني",
    "greek jewish diaspora": "شتات يهودي يوناني",
    "greek-jewish descent": "أصل يهودي يوناني",
    "greek-jewish diaspora": "شتات يهودي يوناني",
    "hungarian jewish descent": "أصل مجري يهودي",
    "hungarian jewish diaspora": "شتات مجري يهودي",
    "hungarian nazis": "مجريون نازيون",
    "hungarian-jewish descent": "أصل مجري يهودي",
    "hungarian-jewish diaspora": "شتات مجري يهودي",
    "indian jewish descent": "أصل هندي يهودي",
    "indian jewish diaspora": "شتات هندي يهودي",
    "indian-jewish descent": "أصل هندي يهودي",
    "indian-jewish diaspora": "شتات هندي يهودي",
    "iranian jewish descent": "أصل إيراني يهودي",
    "iranian jewish diaspora": "شتات إيراني يهودي",
    "iranian-jewish descent": "أصل إيراني يهودي",
    "iranian-jewish diaspora": "شتات إيراني يهودي",
    "iraqi jewish descent": "أصل عراقي يهودي",
    "iraqi jewish diaspora": "شتات عراقي يهودي",
    "iraqi-jewish descent": "أصل عراقي يهودي",
    "iraqi-jewish diaspora": "شتات عراقي يهودي",
    "irish jewish descent": "أصل أيرلندي يهودي",
    "irish-jewish descent": "أصل أيرلندي يهودي",
    "italian canadian culture": "ثقافة إيطالية كندية",
    "italian jewish descent": "أصل إيطالي يهودي",
    "italian jewish diaspora": "شتات إيطالي يهودي",
    "italian-jewish descent": "أصل إيطالي يهودي",
    "italian-jewish diaspora": "شتات إيطالي يهودي",
    "jamaican jewish descent": "أصل جامايكي يهودي",
    "jamaican-jewish descent": "أصل جامايكي يهودي",
    "jewish afghan history": "تاريخ أفغاني يهودي",
    "jewish albanian history": "تاريخ ألباني يهودي",
    "jewish algerian history": "تاريخ جزائري يهودي",
    "jewish angolan history": "تاريخ أنغولي يهودي",
    "jewish argentine history": "تاريخ أرجنتيني يهودي",
    "jewish armenian history": "تاريخ أرميني يهودي",
    "jewish australian history": "تاريخ أسترالي يهودي",
    "jewish austrian history": "تاريخ نمساوي يهودي",
    "jewish azerbaijani history": "تاريخ أذربيجاني يهودي",
    "jewish bangladeshi history": "تاريخ بنغلاديشي يهودي",
    "jewish belarusian history": "تاريخ بيلاروسي يهودي",
    "jewish belgian history": "تاريخ بلجيكي يهودي",
    "jewish bosnian history": "تاريخ بوسني يهودي",
    "jewish brazilian history": "تاريخ برازيلي يهودي",
    "jewish british history": "تاريخ بريطاني يهودي",
    "jewish bulgarian history": "تاريخ بلغاري يهودي",
    "jewish canadian cuisine": "مطبخ كندي يهودي",
    "jewish canadian history": "تاريخ كندي يهودي",
    "jewish canadian literature": "أدب كندي يهودي",
    "jewish cape verdean history": "تاريخ رأس أخضري يهودي",
    "jewish chilean history": "تاريخ تشيلي يهودي",
    "jewish chinese history": "تاريخ صيني يهودي",
    "jewish christian literature": "أدب مسيحي يهودي",
    "jewish croatian history": "تاريخ كرواتي يهودي",
    "jewish cuban history": "تاريخ كوبي يهودي",
    "jewish cypriot history": "تاريخ قبرصي يهودي",
    "jewish czech history": "تاريخ تشيكي يهودي",
    "jewish danish history": "تاريخ دنماركي يهودي",
    "jewish dutch history": "تاريخ هولندي يهودي",
    "jewish egyptian history": "تاريخ مصري يهودي",
    "jewish english history": "تاريخ إنجليزي يهودي",
    "jewish eritrean history": "تاريخ إريتري يهودي",
    "jewish estonian history": "تاريخ إستوني يهودي",
    "jewish ethiopian history": "تاريخ إثيوبي يهودي",
    "jewish finnish history": "تاريخ فنلندي يهودي",
    "jewish french history": "تاريخ فرنسي يهودي",
    "jewish georgian history": "تاريخ جورجي يهودي",
    "jewish gibraltarian history": "تاريخ جبل طارقي يهودي",
    "jewish greek history": "تاريخ يهودي يوناني",
    "jewish guatemalan history": "تاريخ غواتيمالي يهودي",
    "jewish hong kong history": "تاريخ هونغ كونغي يهودي",
    "jewish hungarian history": "تاريخ مجري يهودي",
    "jewish indian history": "تاريخ هندي يهودي",
    "jewish indonesian history": "تاريخ إندونيسي يهودي",
    "jewish iraqi history": "تاريخ عراقي يهودي",
    "jewish irish history": "تاريخ أيرلندي يهودي",
    "jewish italian history": "تاريخ إيطالي يهودي",
    "jewish jamaican history": "تاريخ جامايكي يهودي",
    "jewish japanese history": "تاريخ ياباني يهودي",
    "jewish jordanian history": "تاريخ أردني يهودي",
    "jewish kenyan history": "تاريخ كيني يهودي",
    "jewish kosovan history": "تاريخ كوسوفي يهودي",
    "jewish kurdish history": "تاريخ كردي يهودي",
    "jewish latvian history": "تاريخ لاتفي يهودي",
    "jewish lebanese history": "تاريخ لبناني يهودي",
    "jewish libyan history": "تاريخ ليبي يهودي",
    "jewish lithuanian history": "تاريخ ليتواني يهودي",
    "jewish luxembourgian history": "تاريخ لوكسمبورغي يهودي",
    "jewish macedonian history": "تاريخ مقدوني يهودي",
    "jewish malagasy history": "تاريخ مدغشقري يهودي",
    "jewish mexican history": "تاريخ مكسيكي يهودي",
    "jewish moldovan history": "تاريخ مولدوفي يهودي",
    "jewish moroccan history": "تاريخ مغربي يهودي",
    "jewish nepalese history": "تاريخ نيبالي يهودي",
    "jewish nigerian history": "تاريخ نيجيري يهودي",
    "jewish norwegian history": "تاريخ نرويجي يهودي",
    "jewish pakistani history": "تاريخ باكستاني يهودي",
    "jewish peruvian history": "تاريخ بيروي يهودي",
    "jewish polish history": "تاريخ بولندي يهودي",
    "jewish portuguese history": "تاريخ برتغالي يهودي",
    "jewish romanian history": "تاريخ روماني يهودي",
    "jewish russian history": "تاريخ روسي يهودي",
    "jewish saudiarabian history": "تاريخ سعودي يهودي",
    "jewish scottish history": "تاريخ إسكتلندي يهودي",
    "jewish serbian history": "تاريخ صربي يهودي",
    "jewish slovak history": "تاريخ سلوفاكي يهودي",
    "jewish slovenian history": "تاريخ سلوفيني يهودي",
    "jewish south african history": "تاريخ جنوب إفريقي يهودي",
    "jewish south korean history": "تاريخ كوري جنوبي يهودي",
    "jewish spanish history": "تاريخ إسباني يهودي",
    "jewish sudanese history": "تاريخ سوداني يهودي",
    "jewish surinamese history": "تاريخ سورينامي يهودي",
    "jewish swedish history": "تاريخ سويدي يهودي",
    "jewish swiss history": "تاريخ سويسري يهودي",
    "jewish syrian history": "تاريخ سوري يهودي",
    "jewish tunisian history": "تاريخ تونسي يهودي",
    "jewish turkish history": "تاريخ تركي يهودي",
    "jewish ugandan history": "تاريخ أوغندي يهودي",
    "jewish ukrainian history": "تاريخ أوكراني يهودي",
    "jewish uruguayan history": "تاريخ أوروغوياني يهودي",
    "jewish uzbek history": "تاريخ أوزبكي يهودي",
    "jewish venezuelan history": "تاريخ فنزويلي يهودي",
    "jewish vietnamese history": "تاريخ فيتنامي يهودي",
    "jewish welsh history": "تاريخ ويلزي يهودي",
    "jewish yemeni history": "تاريخ يمني يهودي",
    "jewish zimbabwean history": "تاريخ زيمبابوي يهودي",
    "jewish-afghan history": "تاريخ أفغاني يهودي",
    "kazakhstani jewish descent": "أصل كازاخستاني يهودي",
    "kazakhstani-jewish descent": "أصل كازاخستاني يهودي",
    "kurdish jewish descent": "أصل كردي يهودي",
    "kurdish jewish diaspora": "شتات كردي يهودي",
    "kurdish-jewish descent": "أصل كردي يهودي",
    "kurdish-jewish diaspora": "شتات كردي يهودي",
    "latvian jewish descent": "أصل لاتفي يهودي",
    "latvian jewish diaspora": "شتات لاتفي يهودي",
    "latvian-jewish descent": "أصل لاتفي يهودي",
    "latvian-jewish diaspora": "شتات لاتفي يهودي",
    "lebanese jewish descent": "أصل لبناني يهودي",
    "lebanese jewish diaspora": "شتات لبناني يهودي",
    "lebanese-jewish descent": "أصل لبناني يهودي",
    "lebanese-jewish diaspora": "شتات لبناني يهودي",
    "libyan jewish descent": "أصل ليبي يهودي",
    "libyan jewish diaspora": "شتات ليبي يهودي",
    "libyan-jewish descent": "أصل ليبي يهودي",
    "libyan-jewish diaspora": "شتات ليبي يهودي",
    "lithuanian jewish descent": "أصل ليتواني يهودي",
    "lithuanian jewish diaspora": "شتات ليتواني يهودي",
    "lithuanian-jewish descent": "أصل ليتواني يهودي",
    "lithuanian-jewish diaspora": "شتات ليتواني يهودي",
    "luxembourgian jewish descent": "أصل لوكسمبورغي يهودي",
    "luxembourgian-jewish descent": "أصل لوكسمبورغي يهودي",
    "macedonian jewish descent": "أصل مقدوني يهودي",
    "macedonian-jewish descent": "أصل مقدوني يهودي",
    "mexican jewish descent": "أصل مكسيكي يهودي",
    "mexican-jewish descent": "أصل مكسيكي يهودي",
    "moldovan jewish descent": "أصل مولدوفي يهودي",
    "moldovan jewish diaspora": "شتات مولدوفي يهودي",
    "moldovan-jewish descent": "أصل مولدوفي يهودي",
    "moldovan-jewish diaspora": "شتات مولدوفي يهودي",
    "moroccan jewish descent": "أصل مغربي يهودي",
    "moroccan jewish diaspora": "شتات مغربي يهودي",
    "moroccan-jewish descent": "أصل مغربي يهودي",
    "moroccan-jewish diaspora": "شتات مغربي يهودي",
    "north african jewish descent": "أصل إفريقي شمالي يهودي",
    "north african jewish diaspora": "شتات إفريقي شمالي يهودي",
    "north african-jewish descent": "أصل إفريقي شمالي يهودي",
    "north african-jewish diaspora": "شتات إفريقي شمالي يهودي",
    "north american jewish descent": "أصل أمريكي شمالي يهودي",
    "north american jewish diaspora": "شتات أمريكي شمالي يهودي",
    "north american-jewish descent": "أصل أمريكي شمالي يهودي",
    "north american-jewish diaspora": "شتات أمريكي شمالي يهودي",
    "ottoman jewish descent": "أصل عثماني يهودي",
    "ottoman-jewish descent": "أصل عثماني يهودي",
    "palestinian jewish descent": "أصل فلسطيني يهودي",
    "palestinian-jewish descent": "أصل فلسطيني يهودي",
    "persian jewish cuisine": "مطبخ فارسي يهودي",
    "polish jewish descent": "أصل بولندي يهودي",
    "polish jewish diaspora": "شتات بولندي يهودي",
    "polish-jewish descent": "أصل بولندي يهودي",
    "polish-jewish diaspora": "شتات بولندي يهودي",
    "portuguese jewish descent": "أصل برتغالي يهودي",
    "portuguese jewish diaspora": "شتات برتغالي يهودي",
    "portuguese-jewish descent": "أصل برتغالي يهودي",
    "portuguese-jewish diaspora": "شتات برتغالي يهودي",
    "romanian jewish descent": "أصل روماني يهودي",
    "romanian jewish diaspora": "شتات روماني يهودي",
    "romanian-jewish descent": "أصل روماني يهودي",
    "romanian-jewish diaspora": "شتات روماني يهودي",
    "russian jewish descent": "أصل روسي يهودي",
    "russian jewish diaspora": "شتات روسي يهودي",
    "russian-jewish descent": "أصل روسي يهودي",
    "russian-jewish diaspora": "شتات روسي يهودي",
    "scottish jewish descent": "أصل إسكتلندي يهودي",
    "scottish-jewish descent": "أصل إسكتلندي يهودي",
    "serbian jewish descent": "أصل صربي يهودي",
    "serbian-jewish descent": "أصل صربي يهودي",
    "slovak jewish descent": "أصل سلوفاكي يهودي",
    "slovak jewish diaspora": "شتات سلوفاكي يهودي",
    "slovak-jewish descent": "أصل سلوفاكي يهودي",
    "slovak-jewish diaspora": "شتات سلوفاكي يهودي",
    "south african jewish descent": "أصل جنوب إفريقي يهودي",
    "south african jewish diaspora": "شتات جنوب إفريقي يهودي",
    "south african-jewish descent": "أصل جنوب إفريقي يهودي",
    "south african-jewish diaspora": "شتات جنوب إفريقي يهودي",
    "south american jewish descent": "أصل أمريكي جنوبي يهودي",
    "south american jewish diaspora": "شتات أمريكي جنوبي يهودي",
    "south american-jewish descent": "أصل أمريكي جنوبي يهودي",
    "south american-jewish diaspora": "شتات أمريكي جنوبي يهودي",
    "spanish jewish descent": "أصل إسباني يهودي",
    "spanish jewish diaspora": "شتات إسباني يهودي",
    "spanish-jewish descent": "أصل إسباني يهودي",
    "spanish-jewish diaspora": "شتات إسباني يهودي",
    "surinamese jewish descent": "أصل سورينامي يهودي",
    "surinamese-jewish descent": "أصل سورينامي يهودي",
    "swedish jewish descent": "أصل سويدي يهودي",
    "swedish-jewish descent": "أصل سويدي يهودي",
    "swiss jewish descent": "أصل سويسري يهودي",
    "swiss-jewish descent": "أصل سويسري يهودي",
    "syrian jewish descent": "أصل سوري يهودي",
    "syrian jewish diaspora": "شتات سوري يهودي",
    "syrian-jewish descent": "أصل سوري يهودي",
    "syrian-jewish diaspora": "شتات سوري يهودي",
    "tajikistani jewish descent": "أصل طاجيكي يهودي",
    "tajikistani-jewish descent": "أصل طاجيكي يهودي",
    "tunisian jewish descent": "أصل تونسي يهودي",
    "tunisian jewish diaspora": "شتات تونسي يهودي",
    "tunisian-jewish descent": "أصل تونسي يهودي",
    "tunisian-jewish diaspora": "شتات تونسي يهودي",
    "turkish jewish descent": "أصل تركي يهودي",
    "turkish jewish diaspora": "شتات تركي يهودي",
    "turkish-jewish descent": "أصل تركي يهودي",
    "turkish-jewish diaspora": "شتات تركي يهودي",
    "ukrainian jewish descent": "أصل أوكراني يهودي",
    "ukrainian jewish diaspora": "شتات أوكراني يهودي",
    "ukrainian-jewish descent": "أصل أوكراني يهودي",
    "ukrainian-jewish diaspora": "شتات أوكراني يهودي",
    "uruguayan jewish descent": "أصل أوروغوياني يهودي",
    "uruguayan-jewish descent": "أصل أوروغوياني يهودي",
    "uzbekistani jewish descent": "أصل أوزبكستاني يهودي",
    "uzbekistani-jewish descent": "أصل أوزبكستاني يهودي",
    "venezuelan jewish descent": "أصل فنزويلي يهودي",
    "venezuelan-jewish descent": "أصل فنزويلي يهودي",
    "welsh jewish descent": "أصل ويلزي يهودي",
    "welsh-jewish descent": "أصل ويلزي يهودي",
    "yemeni jewish descent": "أصل يمني يهودي",
    "yemeni jewish diaspora": "شتات يمني يهودي",
    "yemeni-jewish descent": "أصل يمني يهودي",
    "yemeni-jewish diaspora": "شتات يمني يهودي",
}

males_tests = {
    "austrian nazis": "نازيون نمساويون",
    "british antigua and barbuda": "أنتيغويون وبربوديون بريطانيون",
    "european american": "أمريكيون أوروبيون",
    "ivorian american": "أمريكيون إيفواريون",
    "japanese americans": "أمريكيون يابانيون",
    "jewish americans": "أمريكيون يهود",
    "jewish persian": "فرس يهود",
    "jewish russian": "روس يهود",
    "luxembourgian european": "أوروبيون لوكسمبورغيون",
    "romanian european": "أوروبيون رومان",
    "sri lankan english": "إنجليز سريلانكيون",
    "venezuelan spanish": "إسبان فنزويليون",
    "yemeni yugoslav": "يمنيون يوغسلافيون",
    "yemeni-yugoslav": "يمنيون يوغسلافيون",
}

female_tests = {
    "chinese australian culture": "ثقافة أسترالية صينية",
    "danish american culture": "ثقافة أمريكية دنماركية",
    "european american culture": "ثقافة أمريكية أوروبية",
    "european argentine culture": "ثقافة أرجنتينية أوروبية",
    "korean american culture": "ثقافة أمريكية كورية",
    "lebanese canadian culture": "ثقافة كندية لبنانية",
    "african jewish culture": "ثقافة إفريقية يهودية",
    "african-jewish culture": "ثقافة إفريقية يهودية",
    "algerian jewish culture": "ثقافة جزائرية يهودية",
    "algerian-jewish culture": "ثقافة جزائرية يهودية",
    "american jewish culture": "ثقافة أمريكية يهودية",
    "american-jewish culture": "ثقافة أمريكية يهودية",
    "arab jewish culture": "ثقافة عربية يهودية",
    "arab jewish surnames": "ألقاب عربية يهودية",
    "arab-jewish culture": "ثقافة عربية يهودية",
    "arab-jewish surnames": "ألقاب عربية يهودية",
    "argentine jewish culture": "ثقافة أرجنتينية يهودية",
    "argentine-jewish culture": "ثقافة أرجنتينية يهودية",
    "asian jewish culture": "ثقافة آسيوية يهودية",
    "asian-jewish culture": "ثقافة آسيوية يهودية",
    "australian jewish culture": "ثقافة أسترالية يهودية",
    "australian-jewish culture": "ثقافة أسترالية يهودية",
    "austrian jewish culture": "ثقافة نمساوية يهودية",
    "austrian-jewish culture": "ثقافة نمساوية يهودية",
    "belarusian jewish culture": "ثقافة بيلاروسية يهودية",
    "belarusian-jewish culture": "ثقافة بيلاروسية يهودية",
    "british jewish culture": "ثقافة بريطانية يهودية",
    "british-jewish culture": "ثقافة بريطانية يهودية",
    "bulgarian jewish culture": "ثقافة بلغارية يهودية",
    "bulgarian-jewish culture": "ثقافة بلغارية يهودية",
    "canadian jewish culture": "ثقافة كندية يهودية",
    "canadian-jewish culture": "ثقافة كندية يهودية",
    "czech jewish culture": "ثقافة تشيكية يهودية",
    "czech-jewish culture": "ثقافة تشيكية يهودية",
    "dutch jewish culture": "ثقافة هولندية يهودية",
    "dutch-jewish culture": "ثقافة هولندية يهودية",
    "egyptian jewish culture": "ثقافة مصرية يهودية",
    "egyptian-jewish culture": "ثقافة مصرية يهودية",
    "english jewish culture": "ثقافة إنجليزية يهودية",
    "english-jewish culture": "ثقافة إنجليزية يهودية",
    "ethiopian jewish culture": "ثقافة إثيوبية يهودية",
    "ethiopian-jewish culture": "ثقافة إثيوبية يهودية",
    "european jewish culture": "ثقافة أوروبية يهودية",
    "european-jewish culture": "ثقافة أوروبية يهودية",
    "french jewish culture": "ثقافة فرنسية يهودية",
    "french-jewish culture": "ثقافة فرنسية يهودية",
    "georgian jewish culture": "ثقافة جورجية يهودية",
    "georgian-jewish culture": "ثقافة جورجية يهودية",
    "german jewish culture": "ثقافة ألمانية يهودية",
    "german-jewish culture": "ثقافة ألمانية يهودية",
    "greek jewish culture": "ثقافة يهودية يونانية",
    "greek-jewish culture": "ثقافة يهودية يونانية",
    "hungarian jewish culture": "ثقافة مجرية يهودية",
    "hungarian-jewish culture": "ثقافة مجرية يهودية",
    "indian jewish culture": "ثقافة هندية يهودية",
    "indian-jewish culture": "ثقافة هندية يهودية",
    "iranian jewish culture": "ثقافة إيرانية يهودية",
    "iranian-jewish culture": "ثقافة إيرانية يهودية",
    "iraqi jewish culture": "ثقافة عراقية يهودية",
    "iraqi-jewish culture": "ثقافة عراقية يهودية",
    "italian jewish culture": "ثقافة إيطالية يهودية",
    "italian-jewish culture": "ثقافة إيطالية يهودية",
    "jewish argentine culture": "ثقافة أرجنتينية يهودية",
    "jewish austrian families": "عائلات نمساوية يهودية",
    "jewish british culture": "ثقافة بريطانية يهودية",
    "jewish british families": "عائلات بريطانية يهودية",
    "jewish canadian culture": "ثقافة كندية يهودية",
    "jewish canadian families": "عائلات كندية يهودية",
    "jewish canadian television series": "مسلسلات تلفزيونية كندية يهودية",
    "jewish chinese families": "عائلات صينية يهودية",
    "jewish danish families": "عائلات دنماركية يهودية",
    "jewish french culture": "ثقافة فرنسية يهودية",
    "jewish french families": "عائلات فرنسية يهودية",
    "jewish german culture": "ثقافة ألمانية يهودية",
    "jewish german families": "عائلات ألمانية يهودية",
    "jewish hungarian families": "عائلات مجرية يهودية",
    "jewish israeli culture": "ثقافة إسرائيلية يهودية",
    "jewish italian families": "عائلات إيطالية يهودية",
    "jewish polish families": "عائلات بولندية يهودية",
    "jewish portuguese families": "عائلات برتغالية يهودية",
    "jewish south african families": "عائلات جنوب إفريقية يهودية",
    "jewish-austrian families": "عائلات نمساوية يهودية",
    "jewish-british families": "عائلات بريطانية يهودية",
    "jewish-canadian families": "عائلات كندية يهودية",
    "jewish-chinese families": "عائلات صينية يهودية",
    "jewish-danish families": "عائلات دنماركية يهودية",
    "jewish-french families": "عائلات فرنسية يهودية",
    "jewish-german families": "عائلات ألمانية يهودية",
    "jewish-hungarian families": "عائلات مجرية يهودية",
    "jewish-italian families": "عائلات إيطالية يهودية",
    "jewish-polish families": "عائلات بولندية يهودية",
    "jewish-portuguese families": "عائلات برتغالية يهودية",
    "jewish-south african families": "عائلات جنوب إفريقية يهودية",
    "kurdish jewish culture": "ثقافة كردية يهودية",
    "kurdish-jewish culture": "ثقافة كردية يهودية",
    "latvian jewish culture": "ثقافة لاتفية يهودية",
    "latvian-jewish culture": "ثقافة لاتفية يهودية",
    "libyan jewish culture": "ثقافة ليبية يهودية",
    "libyan-jewish culture": "ثقافة ليبية يهودية",
    "lithuanian jewish culture": "ثقافة ليتوانية يهودية",
    "lithuanian-jewish culture": "ثقافة ليتوانية يهودية",
    "moroccan jewish culture": "ثقافة مغربية يهودية",
    "moroccan-jewish culture": "ثقافة مغربية يهودية",
    "north african jewish culture": "ثقافة إفريقية شمالية يهودية",
    "north african-jewish culture": "ثقافة إفريقية شمالية يهودية",
    "north american jewish culture": "ثقافة أمريكية شمالية يهودية",
    "north american-jewish culture": "ثقافة أمريكية شمالية يهودية",
    "polish jewish culture": "ثقافة بولندية يهودية",
    "polish-jewish culture": "ثقافة بولندية يهودية",
    "portuguese jewish culture": "ثقافة برتغالية يهودية",
    "portuguese-jewish culture": "ثقافة برتغالية يهودية",
    "romanian jewish culture": "ثقافة رومانية يهودية",
    "romanian-jewish culture": "ثقافة رومانية يهودية",
    "russian jewish culture": "ثقافة روسية يهودية",
    "russian jewish surnames": "ألقاب روسية يهودية",
    "russian-jewish culture": "ثقافة روسية يهودية",
    "russian-jewish surnames": "ألقاب روسية يهودية",
    "slovak jewish culture": "ثقافة سلوفاكية يهودية",
    "slovak-jewish culture": "ثقافة سلوفاكية يهودية",
    "south african jewish culture": "ثقافة جنوب إفريقية يهودية",
    "south african-jewish culture": "ثقافة جنوب إفريقية يهودية",
    "south american jewish culture": "ثقافة أمريكية جنوبية يهودية",
    "south american-jewish culture": "ثقافة أمريكية جنوبية يهودية",
    "spanish jewish culture": "ثقافة إسبانية يهودية",
    "spanish-jewish culture": "ثقافة إسبانية يهودية",
    "syrian jewish culture": "ثقافة سورية يهودية",
    "syrian-jewish culture": "ثقافة سورية يهودية",
    "tunisian jewish culture": "ثقافة تونسية يهودية",
    "tunisian-jewish culture": "ثقافة تونسية يهودية",
    "turkish jewish culture": "ثقافة تركية يهودية",
    "turkish-jewish culture": "ثقافة تركية يهودية",
    "ukrainian jewish culture": "ثقافة أوكرانية يهودية",
    "ukrainian-jewish culture": "ثقافة أوكرانية يهودية",
    "yemeni jewish culture": "ثقافة يمنية يهودية",
    "yemeni-jewish culture": "ثقافة يمنية يهودية",
    "yugoslav jewish culture": "ثقافة يهودية يوغسلافية",
    "yugoslav-jewish culture": "ثقافة يهودية يوغسلافية",
}

test_data_fast = {
    "american christian musical groups": "فرق موسيقية أمريكية مسيحية",
    "australian christian musical groups": "فرق موسيقية أسترالية مسيحية",
    "british christian musical groups": "فرق موسيقية بريطانية مسيحية",
    "canadian christian musical groups": "فرق موسيقية كندية مسيحية",
    "swedish christian musical groups": "فرق موسيقية سويدية مسيحية",
    "english christian musical groups": "فرق موسيقية إنجليزية مسيحية",
    "finnish christian musical groups": "فرق موسيقية فنلندية مسيحية",
    "brazilian christian music": "موسيقى برازيلية مسيحية",
    "democratic republic of congo christian music": "موسيقى كونغوية ديمقراطية مسيحية",
    "ghanaian christian music": "موسيقى غانية مسيحية",
    "rwandan christian music": "موسيقى رواندية مسيحية",
    "american christian novels": "روايات أمريكية مسيحية",
    "english gothic architecture": "عمارة إنجليزية قوطية",
    "turkish kurdish people": "أتراك أكراد",
    "norwegian christian musical groups": "فرق موسيقية مسيحية نرويجية",
    "dutch christian music": "موسيقى مسيحية هولندية",
    "indian christian music": "موسيقى مسيحية هندية",
    "irish american gangs": "عصابات أمريكية أيرلندية",
    "british antigua and barbuda people": "أنتيغويون وبربوديون بريطانيون",
}


@pytest.mark.parametrize("category, expected_key", male_tests.items(), ids=male_tests.keys())
@pytest.mark.fast
def test_male_tests(category: str, expected_key: str) -> None:
    label2 = resolve_by_nats_double_v2(category)
    assert label2 == expected_key


@pytest.mark.parametrize("category, expected_key", males_tests.items(), ids=males_tests.keys())
@pytest.mark.fast
def test_males_tests(category: str, expected_key: str) -> None:
    label2 = resolve_by_nats_double_v2(category)
    assert label2 == expected_key


@pytest.mark.parametrize("category, expected_key", female_tests.items(), ids=female_tests.keys())
@pytest.mark.fast
def test_female_tests(category: str, expected_key: str) -> None:
    label2 = resolve_by_nats_double_v2(category)
    assert label2 == expected_key


to_test = [
    ("test_male_tests", male_tests, resolve_by_nats_double_v2),
    ("test_males_tests", males_tests, resolve_by_nats_double_v2),
    ("test_female_tests", female_tests, resolve_by_nats_double_v2),
    ("test_data_fast", test_data_fast, resolve_by_nats_double_v2),
]


@pytest.mark.parametrize("name,data,callback", to_test)
@pytest.mark.dump
def test_non_dump(name: str, data: dict[str, str], callback) -> None:
    expected, diff_result = one_dump_test(data, callback)

    dump_diff(diff_result, name)
    dump_same_and_not_same(data, diff_result, name)
    assert diff_result == expected, f"Differences found: {len(diff_result):,}, len all :{len(data):,}"
