From 6d1aa42f7e7257e2cf54e5235a4acff700a8f6c5 Mon Sep 17 00:00:00 2001 From: eldadfux Date: Mon, 18 Nov 2019 07:05:10 +0200 Subject: [PATCH] Added translation tests and fixes --- app/config/locales/ar.countries.php | 2 +- app/config/locales/fi.countries.php | 2 +- app/config/locales/fr.countries.php | 4 +- app/config/locales/hi.countries.php | 390 ++++++++++++++-------------- app/config/locales/is.countries.php | 2 +- app/config/locales/lt.countries.php | 2 +- app/config/locales/sq.countries.php | 4 +- app/init.php | 2 +- tests/e2e/ProjectLocaleTest.php | 48 ++++ 9 files changed, 252 insertions(+), 204 deletions(-) diff --git a/app/config/locales/ar.countries.php b/app/config/locales/ar.countries.php index a7f4a0222..8db65fe4a 100644 --- a/app/config/locales/ar.countries.php +++ b/app/config/locales/ar.countries.php @@ -183,7 +183,7 @@ return [ 'UG' => 'أوغندا', 'UA' => 'أوكرانيا', 'UY' => 'أوروغواي', - 'UK' => 'الولايات المتحدة', + 'US' => 'الولايات المتحدة', 'UZ' => 'أوزبكستان', 'VA' => 'مدينة الفاتيكان', 'VC' => 'سانت فنسنت وجزر غرينادين', diff --git a/app/config/locales/fi.countries.php b/app/config/locales/fi.countries.php index b1aefe05a..8e04ce6bc 100644 --- a/app/config/locales/fi.countries.php +++ b/app/config/locales/fi.countries.php @@ -130,7 +130,7 @@ return [ 'NG' => 'Nigeria', 'NI' => 'Nicaragua', 'NL' => 'Alankomaat', - 'EI' => 'Norja', + 'NO' => 'Norja', 'NP' => 'Nepal', 'NR' => 'Nauru', 'NZ' => 'Uusi-Seelanti', diff --git a/app/config/locales/fr.countries.php b/app/config/locales/fr.countries.php index cd9c7dd92..28bff2bdd 100644 --- a/app/config/locales/fr.countries.php +++ b/app/config/locales/fr.countries.php @@ -51,7 +51,7 @@ return [ 'DK' => 'Danemark', 'DO' => 'République dominicaine', 'DZ' => 'Algérie', - 'CE' => 'Équateur', + 'EC' => 'Équateur', 'EG' => 'Égypte', 'ER' => 'Érythrée', 'ES' => 'Espagne', @@ -130,7 +130,7 @@ return [ 'NG' => 'Nigéria', 'NI' => 'Nicaragua', 'NL' => 'Pays-Bas', - 'NON' => 'Norvège', + 'NO' => 'Norvège', 'NP' => 'Nepal', 'NR' => 'Nauru', 'NZ' => 'Nouvelle-Zélande', diff --git a/app/config/locales/hi.countries.php b/app/config/locales/hi.countries.php index b87b8ff67..f9f40230a 100644 --- a/app/config/locales/hi.countries.php +++ b/app/config/locales/hi.countries.php @@ -2,202 +2,202 @@ return [ - 'AF' => 'अफगानिस्तान', - 'AO' => 'अंगोला', - 'AL' => 'अल्बानिया', - 'AD' => 'अंडोरा', - 'AI' => 'संयुक्त अरब अमीरात', - 'AR' => 'अर्जेंटीना', - 'AM' => 'आर्मेनिया', - 'AG' => 'एंटीगुआ और बारबुडा', - 'AU' => 'ऑस्ट्रेलिया', - 'AT' => 'ऑस्ट्रिया', - 'AZ' => 'अजरबैजान', + 'AF' => 'अफगानिस्तान', + 'AO' => 'अंगोला', + 'AL' => 'अल्बानिया', + 'AD' => 'अंडोरा', + 'AE' => 'संयुक्त अरब अमीरात', + 'AR' => 'अर्जेंटीना', + 'AM' => 'आर्मेनिया', + 'AG' => 'एंटीगुआ और बारबुडा', + 'AU' => 'ऑस्ट्रेलिया', + 'AT' => 'ऑस्ट्रिया', + 'AZ' => 'अजरबैजान', - 'BI' => 'बुरुंडी', - 'BE' => 'बेल्जियम', - 'BJ' => 'बेनिन', - 'BF' => 'बुर्किना फ़ासो', - 'BD' => 'बांग्लादेश', - 'BG' => 'बुल्गारिया', - 'BH' => 'बहरीन', - 'BS' => 'बहामास', - 'BA' => 'बोस्निया और हर्ज़ेगोविना', - 'BY' => 'बेलारूस', - 'BZ' => 'बेलीज', - 'BO' => 'बोलीविया', - 'BR' => 'ब्राज़ील', - 'BB' => 'बारबाडोस', - 'BN' => 'ब्रुनेई', - 'BT' => 'भूटान', - 'BW' => 'बोत्सवाना', - 'CF' => 'मध्य अफ्रीकी गणराज्य', - 'CA' => 'कनाडा', - 'CH' => 'स्विटज़रलैंड', - 'CL' => 'चिली', - 'CN' => 'चीन', - 'CI' => 'आइवरी कोस्ट', - 'CM' => 'कैमरून', - 'CD' => 'डीआर कांगो', - 'CG' => 'कांगो गणराज्य', - 'CO' => 'कोलंबिया', - 'KM' => 'कोमोरोस', - 'CV' => 'केप वर्डे', - 'CR' => 'कोस्टा रिका', - 'CU' => 'क्यूबा', - 'CY' => 'साइप्रस', - 'CZ' => 'चेकिया', - 'D' => 'जर्मनी', - 'DJ' => 'जिबूती', - 'DM' => 'डोमिनिका', - 'DK' => 'डेनमार्क', - 'DO' => 'डोमिनिकन रिपब्लिक', - 'DZ' => 'अल्जीरिया', + 'BI' => 'बुरुंडी', + 'BE' => 'बेल्जियम', + 'BJ' => 'बेनिन', + 'BF' => 'बुर्किना फ़ासो', + 'BD' => 'बांग्लादेश', + 'BG' => 'बुल्गारिया', + 'BH' => 'बहरीन', + 'BS' => 'बहामास', + 'BA' => 'बोस्निया और हर्ज़ेगोविना', + 'BY' => 'बेलारूस', + 'BZ' => 'बेलीज', + 'BO' => 'बोलीविया', + 'BR' => 'ब्राज़ील', + 'BB' => 'बारबाडोस', + 'BN' => 'ब्रुनेई', + 'BT' => 'भूटान', + 'BW' => 'बोत्सवाना', + 'CF' => 'मध्य अफ्रीकी गणराज्य', + 'CA' => 'कनाडा', + 'CH' => 'स्विटज़रलैंड', + 'CL' => 'चिली', + 'CN' => 'चीन', + 'CI' => 'आइवरी कोस्ट', + 'CM' => 'कैमरून', + 'CD' => 'डीआर कांगो', + 'CG' => 'कांगो गणराज्य', + 'CO' => 'कोलंबिया', + 'KM' => 'कोमोरोस', + 'CV' => 'केप वर्डे', + 'CR' => 'कोस्टा रिका', + 'CU' => 'क्यूबा', + 'CY' => 'साइप्रस', + 'CZ' => 'चेकिया', + 'DE' => 'जर्मनी', + 'DJ' => 'जिबूती', + 'DM' => 'डोमिनिका', + 'DK' => 'डेनमार्क', + 'DO' => 'डोमिनिकन रिपब्लिक', + 'DZ' => 'अल्जीरिया', + 'ER' => 'इरिट्रिया', + 'EC' => 'इक्वाडोर', + 'EG' => 'मिस्र', + 'IR' => 'इरिट्रिया', + 'ES' => 'स्पेन', + 'EE' => 'एस्टोनिया', + 'ET' => 'इथियोपिया', + 'FI' => 'फिनलैंड', + 'FJ' => 'फिजी', + 'FR' => 'फ्रांस', + 'FM' => 'माइक्रोनेशिया', + 'GA' => 'गैबॉन', + 'GB' => 'यूनाइटेड किंगडम', + 'GE' => 'जॉर्जिया', + 'GH' => 'घाना', + 'GN' => 'गिनी', + 'GM' => 'गाम्बिया', + 'GW' => 'गिनी-बिसाऊ', + 'GQ' => 'इक्वेटोरियल गिनी', + 'GR' => 'ग्रीस', + 'GD' => 'ग्रेनाडा', + 'GT' => 'ग्वाटेमाला', + 'GY' => 'गुयाना', + 'HN' => 'होंडुरास', + 'HR' => 'क्रोएशिया', + 'HT' => 'हैती', + 'HU' => 'हंगरी', + 'ID' => 'इंडोनेशिया', + 'IN' => 'भारत', + 'IE' => 'आयरलैंड', + 'IR' => 'ईरान', + 'IQ' => 'इराक', + 'IS' => 'आइसलैंड', + 'IL' => 'इज़राइल', + 'IT' => 'इटली', + 'JM' => 'जमैका', + 'JO' => 'जॉर्डन', + 'JP' => 'जापान', + 'KZ' => 'कजाकिस्तान', + 'KE' => 'केन्या', + 'KG' => 'किर्गिस्तान', + 'KH' => 'कंबोडिया', + 'KI' => 'किरीबाती', + 'KN' => 'सेंट किट्स एंड नेविस', + 'KR' => 'दक्षिण कोरिया', + 'KW' => 'कुवैत', - 'EC' => 'इक्वाडोर', - 'IG' => 'मिस्र', - 'IR' => 'इरिट्रिया', - 'ES' => 'स्पेन', - 'II' => 'एस्टोनिया', - 'ET' => 'इथियोपिया', - 'FI' => 'फिनलैंड', - 'FJ' => 'फिजी', - 'FR' => 'फ्रांस', - 'FM' => 'माइक्रोनेशिया', - 'GA' => 'गैबॉन', - 'GB' => 'यूनाइटेड किंगडम', - 'GI' => 'जॉर्जिया', - 'GH' => 'घाना', - 'GN' => 'गिनी', - 'GM' => 'गाम्बिया', - 'GW' => 'गिनी-बिसाऊ', - 'GQ' => 'इक्वेटोरियल गिनी', - 'GR' => 'ग्रीस', - 'GD' => 'ग्रेनाडा', - 'GT' => 'ग्वाटेमाला', - 'GY' => 'गुयाना', - 'HN' => 'होंडुरास', - 'HR' => 'क्रोएशिया', - 'HT' => 'हैती', - 'HU' => 'हंगरी', - 'ID' => 'इंडोनेशिया', - 'IN' => 'भारत', - 'IE' => 'आयरलैंड', - 'IR' => 'ईरान', - 'IQ' => 'इराक', - 'IS' => 'आइसलैंड', - 'IL' => 'इज़राइल', - 'IT' => 'इटली', - 'JM' => 'जमैका', - 'JO' => 'जॉर्डन', - 'JP' => 'जापान', - 'KJ' => 'कजाकिस्तान', - 'KI' => 'केन्या', - 'KG' => 'किर्गिस्तान', - 'KH' => 'कंबोडिया', - 'KI' => 'किरीबाती', - 'KN' => 'सेंट किट्स एंड नेविस', - 'KR' => 'दक्षिण कोरिया', - 'KW' => 'कुवैत', + 'LA' => 'लाओस', + 'LB' => 'लेबनान', + 'LR' => 'लाइबेरिया', + 'LY' => 'लीबिया', + 'LC' => 'सेंट लूसिया', + 'LI' => 'लिकटेंस्टीन', + 'LK' => 'श्रीलंका', + 'LS' => 'लेसोथो', + 'LT' => 'लिथुआनिया', + 'LU' => 'लक्ज़मबर्ग', + 'LV' => 'लातविया', + 'MA' => 'मोरक्को', + 'MC' => 'मोनाको', + 'MD' => 'मोल्दोवा', + 'MG' => 'मेडागास्कर', + 'MV' => 'मालदीव', + 'MX' => 'मेक्सिको', + 'MH' => 'मार्शल आइलैंड्स', + 'MK' => 'मैसिडोनिया', + 'ML' => 'रक्त', + 'MT' => 'माल्टा', + 'MM' => 'म्यांमार', + 'ME' => 'मोंटेनेग्रो', + 'MN' => 'मंगोलिया', + 'MZ' => 'मोज़ाम्बिक', + 'MR' => 'मॉरिटानिया', + 'MU' => 'मॉरीशस', + 'MW' => 'मलावी', + 'MY' => 'मलेशिया', + 'NA' => 'नामीबिया', + 'NE' => 'नाइजर', + 'NG' => 'नाइजीरिया', + 'NI' => 'निकारागुआ', + 'NL' => 'नीदरलैंड', + 'NO' => 'नॉर्वे', + 'NP' => 'नेपाल', + 'NR' => 'नारू', + 'NZ' => 'न्यूजीलैंड', + 'OM' => 'ओमान', + 'PK' => 'पाकिस्तान', + 'PA' => 'पनामा', + 'PE' => 'पेरू', + 'PH' => 'फिलीपींस', + 'PW' => 'पलाऊ', + 'PG' => 'पापुआ न्यू गिनी', + 'PL' => 'पोलैंड', + 'KP' => 'उत्तर कोरिया', + 'PT' => 'पुर्तगाल', + 'PY' => 'पराग्वे', - 'LA' => 'लाओस', - 'LB' => 'लेबनान', - 'LR' => 'लाइबेरिया', - 'LY' => 'लीबिया', - 'LC' => 'सेंट लूसिया', - 'LI' => 'लिकटेंस्टीन', - 'LK' => 'श्रीलंका', - 'LS' => 'लेसोथो', - 'LT' => 'लिथुआनिया', - 'LU' => 'लक्ज़मबर्ग', - 'LV' => 'लातविया', - 'MA' => 'मोरक्को', - 'MC' => 'मोनाको', - 'MD' => 'मोल्दोवा', - 'MG' => 'मेडागास्कर', - 'MV' => 'मालदीव', - 'MX' => 'मेक्सिको', - 'MH' => 'मार्शल आइलैंड्स', - 'MK' => 'मैसिडोनिया', - 'ML' => 'रक्त', - 'MT' => 'माल्टा', - 'MM' => 'म्यांमार', - 'ME' => 'मोंटेनेग्रो', - 'MN' => 'मंगोलिया', - 'MZ' => 'मोज़ाम्बिक', - 'MR' => 'मॉरिटानिया', - 'MU' => 'मॉरीशस', - 'MW' => 'मलावी', - 'MY' => 'मलेशिया', - 'NA' => 'नामीबिया', - 'NI' => 'नाइजर', - 'NG' => 'नाइजीरिया', - 'IS' => 'निकारागुआ', - 'NL' => 'नीदरलैंड', - 'NO' => 'नॉर्वे', - 'NP' => 'नेपाल', - 'NR' => 'नारू', - 'NZ' => 'न्यूजीलैंड', - 'OM' => 'ओमान', - 'PK' => 'पाकिस्तान', - 'PA' => 'पनामा', - 'PE' => 'पेरू', - 'PH' => 'फिलीपींस', - 'PW' => 'पलाऊ', - 'PG' => 'पापुआ न्यू गिनी', - 'PL' => 'पोलैंड', - 'KP' => 'उत्तर कोरिया', - 'PT' => 'पुर्तगाल', - 'PY' => 'पराग्वे', - - 'QA' => 'कतर', - 'RO' => 'रोमानिया', - 'RU' => 'रूस', - 'RW' => 'रवांडा', - 'SA' => 'सऊदी अरब', - 'SD' => 'सूडान', - 'SN' => 'सेनेगल', - 'SG' => 'सिंगापुर', - 'SB' => 'सोलोमन द्वीप', - 'SL' => 'सिएरा लियोन', - 'SV' => 'अल साल्वाडोर', - 'SM' => 'सैन मैरिनो', - 'SO' => 'सोमालिया', - 'RS' => 'सर्बिया', - 'SS' => 'दक्षिण सूडान', - 'ST' => 'साओ तोमे और प्रिंसिपे', - 'SR' => 'सूरीनाम', - 'SK' => 'स्लोवाकिया', - 'SI' => 'स्लोवेनिया', - 'ES' => 'स्वीडन', - 'SZ' => 'स्वाज़ीलैंड', - 'SC' => 'सेशेल्स', - 'SY' => 'सीरिया', - 'TD' => 'चाड', - 'TG' => 'टोगो', - 'TH' => 'थाईलैंड', - 'TJ' => 'ताजिकिस्तान', - 'TM' => 'तुर्कमेनिस्तान', - 'TL' => 'तिमोर-लेस्ते', - 'TU' => 'टोंगा', - 'TT' => 'त्रिनिदाद और टोबैगो', - 'TN' => 'ट्यूनीशिया', - 'TR' => 'तुर्की', - 'TV' => 'तुवालु', - 'TZ' => 'तंजानिया', - 'UG' => 'युगांडा', - 'UA' => 'यूक्रेन', - 'UY' => 'उरुग्वे', - 'US' => 'संयुक्त राज्य अमेरिका', - 'UZ' => 'उज्बेकिस्तान', - 'VA' => 'वेटिकन सिटी', - 'VC' => 'सेंट विंसेंट और ग्रेनेडाइंस', - 'VI' => 'वेनेजुएला', - 'VN' => 'वियतनाम', - 'VU' => 'वानुअतु', - 'WS' => 'समोआ', - 'YE' => 'यमन', - 'ZA' => 'दक्षिण अफ्रीका', - 'ZM' => 'ज़ाम्बिया', - 'ZW' => 'जिम्बाब्वे', + 'QA' => 'कतर', + 'RO' => 'रोमानिया', + 'RU' => 'रूस', + 'RW' => 'रवांडा', + 'SA' => 'सऊदी अरब', + 'SD' => 'सूडान', + 'SN' => 'सेनेगल', + 'SG' => 'सिंगापुर', + 'SB' => 'सोलोमन द्वीप', + 'SL' => 'सिएरा लियोन', + 'SV' => 'अल साल्वाडोर', + 'SM' => 'सैन मैरिनो', + 'SO' => 'सोमालिया', + 'RS' => 'सर्बिया', + 'SS' => 'दक्षिण सूडान', + 'ST' => 'साओ तोमे और प्रिंसिपे', + 'SR' => 'सूरीनाम', + 'SK' => 'स्लोवाकिया', + 'SI' => 'स्लोवेनिया', + 'SE' => 'स्वीडन', + 'SZ' => 'स्वाज़ीलैंड', + 'SC' => 'सेशेल्स', + 'SY' => 'सीरिया', + 'TD' => 'चाड', + 'TG' => 'टोगो', + 'TH' => 'थाईलैंड', + 'TJ' => 'ताजिकिस्तान', + 'TM' => 'तुर्कमेनिस्तान', + 'TL' => 'तिमोर-लेस्ते', + 'TO' => 'टोंगा', + 'TT' => 'त्रिनिदाद और टोबैगो', + 'TN' => 'ट्यूनीशिया', + 'TR' => 'तुर्की', + 'TV' => 'तुवालु', + 'TZ' => 'तंजानिया', + 'UG' => 'युगांडा', + 'UA' => 'यूक्रेन', + 'UY' => 'उरुग्वे', + 'US' => 'संयुक्त राज्य अमेरिका', + 'UZ' => 'उज्बेकिस्तान', + 'VA' => 'वेटिकन सिटी', + 'VC' => 'सेंट विंसेंट और ग्रेनेडाइंस', + 'VE' => 'वेनेजुएला', + 'VN' => 'वियतनाम', + 'VU' => 'वानुअतु', + 'WS' => 'समोआ', + 'YE' => 'यमन', + 'ZA' => 'दक्षिण अफ्रीका', + 'ZM' => 'ज़ाम्बिया', + 'ZW' => 'जिम्बाब्वे', ]; diff --git a/app/config/locales/is.countries.php b/app/config/locales/is.countries.php index da8c78321..fd4c32912 100644 --- a/app/config/locales/is.countries.php +++ b/app/config/locales/is.countries.php @@ -173,7 +173,7 @@ return [ 'TH' => 'Tæland', 'TJ' => 'Tadsjikistan', 'TM' => 'Túrkmenistan', - 'T' => 'Tímor-Leste', + 'TL' => 'Tímor-Leste', 'TO' => 'Tonga', 'TT' => 'Trínidad og Tóbagó', 'TN' => 'Túnis', diff --git a/app/config/locales/lt.countries.php b/app/config/locales/lt.countries.php index b34622c07..890ca13bd 100644 --- a/app/config/locales/lt.countries.php +++ b/app/config/locales/lt.countries.php @@ -130,7 +130,7 @@ return [ 'NG' => 'Nigerija', 'NI' => 'Nikaragva', 'NL' => 'Nyderlandai', - 'NE' => 'Norvegija', + 'NO' => 'Norvegija', 'NP' => 'Nepalas', 'NR' => 'Nauru', 'NZ' => 'Naujoji Zelandija', diff --git a/app/config/locales/sq.countries.php b/app/config/locales/sq.countries.php index fecc93e44..e1744bf88 100644 --- a/app/config/locales/sq.countries.php +++ b/app/config/locales/sq.countries.php @@ -55,7 +55,7 @@ return [ 'EG' => 'Egjipt', 'ER' => 'Eritrea', 'ES' => 'Spanjë', - 'BE' => 'Estonia', + 'EE' => 'Estonia', 'ET' => 'Etiopi', 'FI' => 'Finlanda', 'FJ' => 'Fiji', @@ -130,7 +130,7 @@ return [ 'NG' => 'Nigeria', 'NI' => 'Nikaragua', 'NL' => 'Hollanda', - 'JO' => 'Norvegjia', + 'NO' => 'Norvegjia', 'NP' => 'Nepal', 'NR' => 'Nauru', 'NZ' => 'Zelanda e Re', diff --git a/app/init.php b/app/init.php index dfa56cc9a..8aa758632 100644 --- a/app/init.php +++ b/app/init.php @@ -152,7 +152,7 @@ Locale::setLanguage('hy', include __DIR__.'/config/locales/hy.php'); Locale::setLanguage('id', include __DIR__.'/config/locales/id.php'); Locale::setLanguage('is', include __DIR__.'/config/locales/is.php'); Locale::setLanguage('it', include __DIR__.'/config/locales/it.php'); -Locale::setLanguage('jv', include __DIR__.'/config/locales/ja.php'); +Locale::setLanguage('ja', include __DIR__.'/config/locales/ja.php'); Locale::setLanguage('jv', include __DIR__.'/config/locales/jv.php'); Locale::setLanguage('ko', include __DIR__.'/config/locales/ko.php'); Locale::setLanguage('lt', include __DIR__.'/config/locales/lt.php'); diff --git a/tests/e2e/ProjectLocaleTest.php b/tests/e2e/ProjectLocaleTest.php index 0e355194b..afb4fae18 100644 --- a/tests/e2e/ProjectLocaleTest.php +++ b/tests/e2e/ProjectLocaleTest.php @@ -140,4 +140,52 @@ class ProjectLocaleTest extends BaseProjects return $data; } + + /** + * @depends testRegisterSuccess + */ + public function testLocaleLangsSuccess(array $data): array + { + $languages = require('app/config/locales.php'); + $defaultCountries = require('app/config/locales/en.countries.php'); + $defaultContinents = require('app/config/locales/en.continents.php'); + + foreach ($languages as $key => $lang) { + $countries = $this->client->call(Client::METHOD_GET, '/locale/countries', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $data['projectUid'], + 'x-appwrite-locale' => $lang, + ]); + + foreach ($countries['body'] as $i => $code) { + $this->assertArrayHasKey($i, $defaultCountries, $i . ' country should be removed from ' . $lang); + } + + foreach (array_keys($defaultCountries) as $i => $code) { + $this->assertArrayHasKey($code, $countries['body'], $code . ' country is missing from ' . $lang . ' (total: ' . count($countries['body']) . ')'); + } + + $this->assertEquals($countries['headers']['status-code'], 200); + $this->assertCount(194, $countries['body']); + + $continents = $this->client->call(Client::METHOD_GET, '/locale/continents', [ + 'content-type' => 'application/json', + 'x-appwrite-project' => $data['projectUid'], + 'x-appwrite-locale' => $lang, + ]); + + foreach ($continents['body'] as $i => $code) { + $this->assertArrayHasKey($i, $defaultContinents, $i . ' continent should be removed from ' . $lang); + } + + foreach (array_keys($defaultContinents) as $i => $code) { + $this->assertArrayHasKey($code, $continents['body'], $code . ' continent is missing from ' . $lang . ' (total: ' . count($continents['body']) . ')'); + } + + $this->assertEquals($continents['headers']['status-code'], 200); + $this->assertCount(7, $continents['body']); + } + + return $data; + } }