Skip to content

Commit 441b6fb

Browse files
authored
Ukrainian Locale Enhancements (#1704)
* Add Ukrainian universities * Add Ukrainian vehicle details * Add tests for Ukrainian license plates, fuel types, and transmissions * Move tests for Ukrainian license plates, fuel types, and transmissions to the new VehicleLocaleTest class * Normalize license plates by converting them to uppercase for consistency * Add locale-specific testing infrastructure for BaseFaker and tests for UK and UZ university names
1 parent bf4482d commit 441b6fb

File tree

10 files changed

+278
-104
lines changed

10 files changed

+278
-104
lines changed

src/main/java/net/datafaker/providers/base/Vehicle.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@ public String doors() {
116116
}
117117

118118
public String licensePlate() {
119-
return faker.bothify(faker.resolve("vehicle.license_plate"));
119+
return faker.bothify(faker.resolve("vehicle.license_plate")).toUpperCase(Locale.ROOT);
120120
}
121121

122122
public String licensePlate(String stateAbbreviation) {

src/main/resources/_UA.yml

Lines changed: 40 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3,18 +3,49 @@
33
_UA:
44
faker:
55
address:
6-
default_country_code: ["UA"]
7-
building_number: ['#', '##', '1##']
8-
postcode: ['#####']
6+
default_country_code: [ "UA" ]
7+
building_number: [ '#', '##', '1##' ]
8+
postcode: [ '#####' ]
99

1010
country:
11-
code2: ['af', 'al', 'dz', 'ad', 'ao', 'ag', 'ar', 'am', 'au', 'at', 'az', 'bs', 'bh', 'bd', 'bb', 'by', 'be', 'bz', 'bj', 'bt', 'bo', 'ba', 'bw', 'br', 'bn', 'bg', 'bf', 'bi', 'cv', 'kh', 'cm', 'ca', 'cf', 'td', 'cl', 'cn', 'co', 'km', 'cg', 'cd', 'cr', 'ci', 'hr', 'cu', 'cy', 'cz', 'dk', 'dj', 'dm', 'do', 'ec', 'eg', 'sv', 'gq', 'er', 'ee', 'sz', 'et', 'fj', 'fi', 'fr', 'ga', 'gm', 'ge', 'de', 'gh', 'gr', 'gd', 'gt', 'gn', 'gw', 'gy', 'ht', 'hn', 'hu', 'is', 'in', 'id', 'ir', 'iq', 'ie', 'il', 'it', 'jm', 'jp', 'jo', 'kz', 'ke', 'ki', 'kp', 'kr', 'kw', 'kg', 'la', 'lv', 'lb', 'ls', 'lr', 'ly', 'li', 'lt', 'lu', 'mk', 'mg', 'mw', 'my', 'mv', 'ml', 'mt', 'mh', 'mr', 'mu', 'mx', 'fm', 'md', 'mc', 'mn', 'me', 'ma', 'mz', 'mm', 'na', 'nr', 'np', 'nl', 'nz', 'ni', 'ne', 'ng', 'no', 'om', 'pk', 'pw', 'pa', 'pg', 'py', 'pe', 'ph', 'pl', 'pt', 'qa', 'ro', 'ru', 'rw', 'kn', 'lc', 'vc', 'ws', 'sm', 'st', 'sa', 'sn', 'rs', 'sc', 'sl', 'sg', 'sk', 'si', 'sb', 'so', 'za', 'ss', 'es', 'lk', 'sd', 'sr', 'se', 'ch', 'sy', 'tj', 'tz', 'th', 'tl', 'tg', 'to', 'tt', 'tn', 'tr', 'tm', 'tv', 'ug', 'ua', 'ae', 'gb', 'us', 'uy', 'uz', 'vu', 've', 'vn', 'ye', 'zm', 'zw']
12-
code3: ['afg', 'alb', 'dza', 'and', 'ago', 'atg', 'arg', 'arm', 'aus', 'aut', 'aze', 'bhs', 'bhr', 'bgd', 'brb', 'blr', 'bel', 'blz', 'ben', 'btn', 'bol', 'bih', 'bwa', 'bra', 'brn', 'bgr', 'bfa', 'bdi', 'cpv', 'khm', 'cmr', 'can', 'caf', 'tcd', 'chl', 'chn', 'col', 'com', 'cog', 'cod', 'cri', 'civ', 'hrv', 'cub', 'cyp', 'cze', 'dnk', 'dji', 'dma', 'dom', 'ecu', 'egy', 'slv', 'gnq', 'eri', 'est', 'swz', 'eth', 'fji', 'fin', 'fra', 'gab', 'gmb', 'geo', 'deu', 'gha', 'grc', 'grd', 'gtm', 'gin', 'gnb', 'guy', 'hti', 'hnd', 'hun', 'isl', 'ind', 'idn', 'irn', 'irq', 'irl', 'isr', 'ita', 'jam', 'jpn', 'jor', 'kaz', 'ken', 'kir', 'prk', 'kor', 'kwt', 'kgz', 'lao', 'lva', 'lbn', 'lso', 'lbr', 'lby', 'lie', 'ltu', 'lux', 'mkd', 'mdg', 'mwi', 'mys', 'mdv', 'mli', 'mlt', 'mhl', 'mrt', 'mus', 'mex', 'fsm', 'mda', 'mco', 'mng', 'mne', 'mar', 'moz', 'mmr', 'nam', 'nru', 'npl', 'nld', 'nzl', 'nic', 'ner', 'nga', 'nor', 'omn', 'pak', 'plw', 'pan', 'png', 'pry', 'per', 'phl', 'pol', 'prt', 'qat', 'rou', 'rus', 'rwa', 'kna', 'lca', 'vct', 'wsm', 'smr', 'stp', 'sau', 'sen', 'srb', 'syc', 'sle', 'sgp', 'svk', 'svn', 'slb', 'som', 'zaf', 'ssd', 'esp', 'lka', 'sdn', 'sur', 'swe', 'che', 'syr', 'tjk', 'tza', 'tha', 'tls', 'tgo', 'ton', 'tto', 'tun', 'tur', 'tkm', 'tuv', 'uga', 'ukr', 'are', 'gbr', 'usa', 'ury', 'uzb', 'vut', 'ven', 'vnm', 'yem', 'zmb', 'zwe']
13-
currency_code: ["AUD", "EUR", "AZN", "ALL", "DZD", "AOA", "XCD", "ARS", "AWG", "AFN", "BSD", "BDT", "BBD", "BHD", "BZD", "XOF", "BMD", "BYN", "BGN", "BOB", "BOV", "USD", "BAM", "BWP", "BRL", "GBP", "BND", "BIF", "INR", "BTN", "VUV", "VEF", "VND", "AMD", "XAF", "HTG", "GYD", "GMD", "GHS", "GNF", "HNL", "HKD", "GEL", "GTQ", "GIP", "DKK", "DJF", "DOP", "ERN", "ETB", "EGP", "XSU", "YER", "ZMW", "MAD", "ZWL", "ILS", "IDR", "IQD", "IRR", "ISK", "JOD", "CVE", "KZT", "KYD", "KHR", "CAD", "QAR", "KES", "KGS", "CNY", "COP", "COU", "KMF", "CDF", "KPW", "KRW", "CRC", "XUA", "CUP", "CUC", "KWD", "ANG", "LAK", "LSL", "ZAR", "LRD", "LBP", "LYD", "CHF", "MRO", "MUR", "MGA", "MOP", "MKD", "MWK", "MYR", "MVR", "MXN", "MXV", "XDR", "MZN", "MDL", "MNT", "MMK", "NAD", "NPR", "NGN", "NIO", "NZD", "XPF", "NOK", "AED", "OMR", "SHP", "PKR", "PAB", "PGK", "PYG", "PEN", "SSP", "PLN", "RUB", "RWF", "RON", "SVC", "WST", "STD", "SAR", "SZL", "SCR", "RSD", "SYP", "SGD", "SBD", "SOS", "SDG", "SRD", "USN", "SLL", "TJS", "THB", "TWD", "TZS", "TOP", "TTD", "TND", "TRY", "TMT", "UGX", "HUF", "UZS", "UAH", "UYU", "UYI", "FJD", "PHP", "FKP", "HRK", "CZK", "CLP", "CLF", "CHE", "CHW", "SEK", "LKR", "JMD", "JPY", "XBA", "XBB", "XBC", "XBD", "XTS", "XXX", "XAU", "XPD", "XPT", "XAG"]
11+
code2: [ 'af', 'al', 'dz', 'ad', 'ao', 'ag', 'ar', 'am', 'au', 'at', 'az', 'bs', 'bh', 'bd', 'bb', 'by', 'be', 'bz', 'bj', 'bt', 'bo', 'ba', 'bw', 'br', 'bn', 'bg', 'bf', 'bi', 'cv', 'kh', 'cm', 'ca', 'cf', 'td', 'cl', 'cn', 'co', 'km', 'cg', 'cd', 'cr', 'ci', 'hr', 'cu', 'cy', 'cz', 'dk', 'dj', 'dm', 'do', 'ec', 'eg', 'sv', 'gq', 'er', 'ee', 'sz', 'et', 'fj', 'fi', 'fr', 'ga', 'gm', 'ge', 'de', 'gh', 'gr', 'gd', 'gt', 'gn', 'gw', 'gy', 'ht', 'hn', 'hu', 'is', 'in', 'id', 'ir', 'iq', 'ie', 'il', 'it', 'jm', 'jp', 'jo', 'kz', 'ke', 'ki', 'kp', 'kr', 'kw', 'kg', 'la', 'lv', 'lb', 'ls', 'lr', 'ly', 'li', 'lt', 'lu', 'mk', 'mg', 'mw', 'my', 'mv', 'ml', 'mt', 'mh', 'mr', 'mu', 'mx', 'fm', 'md', 'mc', 'mn', 'me', 'ma', 'mz', 'mm', 'na', 'nr', 'np', 'nl', 'nz', 'ni', 'ne', 'ng', 'no', 'om', 'pk', 'pw', 'pa', 'pg', 'py', 'pe', 'ph', 'pl', 'pt', 'qa', 'ro', 'ru', 'rw', 'kn', 'lc', 'vc', 'ws', 'sm', 'st', 'sa', 'sn', 'rs', 'sc', 'sl', 'sg', 'sk', 'si', 'sb', 'so', 'za', 'ss', 'es', 'lk', 'sd', 'sr', 'se', 'ch', 'sy', 'tj', 'tz', 'th', 'tl', 'tg', 'to', 'tt', 'tn', 'tr', 'tm', 'tv', 'ug', 'ua', 'ae', 'gb', 'us', 'uy', 'uz', 'vu', 've', 'vn', 'ye', 'zm', 'zw' ]
12+
code3: [ 'afg', 'alb', 'dza', 'and', 'ago', 'atg', 'arg', 'arm', 'aus', 'aut', 'aze', 'bhs', 'bhr', 'bgd', 'brb', 'blr', 'bel', 'blz', 'ben', 'btn', 'bol', 'bih', 'bwa', 'bra', 'brn', 'bgr', 'bfa', 'bdi', 'cpv', 'khm', 'cmr', 'can', 'caf', 'tcd', 'chl', 'chn', 'col', 'com', 'cog', 'cod', 'cri', 'civ', 'hrv', 'cub', 'cyp', 'cze', 'dnk', 'dji', 'dma', 'dom', 'ecu', 'egy', 'slv', 'gnq', 'eri', 'est', 'swz', 'eth', 'fji', 'fin', 'fra', 'gab', 'gmb', 'geo', 'deu', 'gha', 'grc', 'grd', 'gtm', 'gin', 'gnb', 'guy', 'hti', 'hnd', 'hun', 'isl', 'ind', 'idn', 'irn', 'irq', 'irl', 'isr', 'ita', 'jam', 'jpn', 'jor', 'kaz', 'ken', 'kir', 'prk', 'kor', 'kwt', 'kgz', 'lao', 'lva', 'lbn', 'lso', 'lbr', 'lby', 'lie', 'ltu', 'lux', 'mkd', 'mdg', 'mwi', 'mys', 'mdv', 'mli', 'mlt', 'mhl', 'mrt', 'mus', 'mex', 'fsm', 'mda', 'mco', 'mng', 'mne', 'mar', 'moz', 'mmr', 'nam', 'nru', 'npl', 'nld', 'nzl', 'nic', 'ner', 'nga', 'nor', 'omn', 'pak', 'plw', 'pan', 'png', 'pry', 'per', 'phl', 'pol', 'prt', 'qat', 'rou', 'rus', 'rwa', 'kna', 'lca', 'vct', 'wsm', 'smr', 'stp', 'sau', 'sen', 'srb', 'syc', 'sle', 'sgp', 'svk', 'svn', 'slb', 'som', 'zaf', 'ssd', 'esp', 'lka', 'sdn', 'sur', 'swe', 'che', 'syr', 'tjk', 'tza', 'tha', 'tls', 'tgo', 'ton', 'tto', 'tun', 'tur', 'tkm', 'tuv', 'uga', 'ukr', 'are', 'gbr', 'usa', 'ury', 'uzb', 'vut', 'ven', 'vnm', 'yem', 'zmb', 'zwe' ]
13+
currency_code: [ "AUD", "EUR", "AZN", "ALL", "DZD", "AOA", "XCD", "ARS", "AWG", "AFN", "BSD", "BDT", "BBD", "BHD", "BZD", "XOF", "BMD", "BYN", "BGN", "BOB", "BOV", "USD", "BAM", "BWP", "BRL", "GBP", "BND", "BIF", "INR", "BTN", "VUV", "VEF", "VND", "AMD", "XAF", "HTG", "GYD", "GMD", "GHS", "GNF", "HNL", "HKD", "GEL", "GTQ", "GIP", "DKK", "DJF", "DOP", "ERN", "ETB", "EGP", "XSU", "YER", "ZMW", "MAD", "ZWL", "ILS", "IDR", "IQD", "IRR", "ISK", "JOD", "CVE", "KZT", "KYD", "KHR", "CAD", "QAR", "KES", "KGS", "CNY", "COP", "COU", "KMF", "CDF", "KPW", "KRW", "CRC", "XUA", "CUP", "CUC", "KWD", "ANG", "LAK", "LSL", "ZAR", "LRD", "LBP", "LYD", "CHF", "MRO", "MUR", "MGA", "MOP", "MKD", "MWK", "MYR", "MVR", "MXN", "MXV", "XDR", "MZN", "MDL", "MNT", "MMK", "NAD", "NPR", "NGN", "NIO", "NZD", "XPF", "NOK", "AED", "OMR", "SHP", "PKR", "PAB", "PGK", "PYG", "PEN", "SSP", "PLN", "RUB", "RWF", "RON", "SVC", "WST", "STD", "SAR", "SZL", "SCR", "RSD", "SYP", "SGD", "SBD", "SOS", "SDG", "SRD", "USN", "SLL", "TJS", "THB", "TWD", "TZS", "TOP", "TTD", "TND", "TRY", "TMT", "UGX", "HUF", "UZS", "UAH", "UYU", "UYI", "FJD", "PHP", "FKP", "HRK", "CZK", "CLP", "CLF", "CHE", "CHW", "SEK", "LKR", "JMD", "JPY", "XBA", "XBB", "XBC", "XBD", "XTS", "XXX", "XAU", "XPD", "XPT", "XAG" ]
1414

1515
internet:
16-
free_email: [ukr.net, ex.ua, e-mail.ua, i.ua, meta.ua, yandex.ua, gmail.com]
17-
domain_suffix: [cherkassy.ua, cherkasy.ua, ck.ua, cn.ua, com.ua, crimea.ua, cv.ua, dn.ua, dnepropetrovsk.ua, dnipropetrovsk.ua, donetsk.ua, dp.ua, if.ua, in.ua, ivano-frankivsk.ua, kh.ua, kharkiv.ua, kharkov.ua, kherson.ua, khmelnitskiy.ua, kiev.ua, kirovograd.ua, km.ua, kr.ua, ks.ua, lg.ua, lt.ua, lugansk.ua, lutsk.ua, lutsk.net, lviv.ua, mk.ua, net.ua, nikolaev.ua, od.ua, odessa.ua, org.ua, pl.ua, poltava.ua, rovno.ua, rv.ua, sebastopol.ua, sm.ua, sumy.ua, te.ua, ternopil.ua, ua, uz.ua, uzhgorod.ua, vinnica.ua, vn.ua, volyn.net, volyn.ua, yalta.ua, zaporizhzhe.ua, zhitomir.ua, zp.ua, zt.ua, укр]
16+
free_email: [ ukr.net, ex.ua, e-mail.ua, mail.ua, i.ua, meta.ua, yahoo.com, gmail.com, outlook.com ]
17+
domain_suffix: [ gov.ua, cherkassy.ua, cherkasy.ua, ck.ua, cn.ua, com.ua, crimea.ua, cv.ua, dn.ua, dnepropetrovsk.ua, dnipropetrovsk.ua, donetsk.ua, dp.ua, if.ua, in.ua, ivano-frankivsk.ua, kh.ua, kharkiv.ua, kharkov.ua, kherson.ua, khmelnitskiy.ua, kyiv.ua, kiev.ua, kirovograd.ua, km.ua, kr.ua, ks.ua, lg.ua, lt.ua, lugansk.ua, lutsk.ua, lutsk.net, lviv.ua, mk.ua, net.ua, nikolaev.ua, od.ua, odessa.ua, org.ua, pl.ua, poltava.ua, rovno.ua, rv.ua, sebastopol.ua, sm.ua, sumy.ua, te.ua, ternopil.ua, ua, uz.ua, uzhgorod.ua, vinnica.ua, vn.ua, volyn.net, volyn.ua, yalta.ua, zaporizhzhe.ua, zhitomir.ua, zp.ua, zt.ua, укр ]
1818

1919
phone_number:
20-
country_code: ['380']
20+
country_code: [ '380' ]
21+
22+
vehicle:
23+
state_abbr: [ AA, KA, # Kyiv city
24+
AB, KB, # Vinnytsia
25+
AC, KC, # Volyn
26+
AE, KE, # Dnipropetrovsk
27+
AH, KH, # Donetsk
28+
AI, KI, # Kyiv region
29+
AK, KK, # Crimea
30+
AM, KM, # Zhytomyr
31+
AO, KO, # Zakarpattia
32+
AP, KP, # Zaporizhzhia
33+
AT, KT, # Ivano-Frankivsk
34+
AX, KX, # Kharkiv
35+
BA, HA, # Kirovohrad
36+
BB, HB, # Luhansk
37+
BC, HC, # Lviv
38+
BE, HE, # Mykolaiv
39+
BH, HH, # Odesa
40+
BI, HI, # Poltava
41+
BK, HK, # Rivne
42+
BM, HM, # Sumy
43+
BO, HO, # Ternopil
44+
BT, HT, # Kherson
45+
BX, HX, # Khmelnytskyi
46+
CA, IA, # Cherkasy
47+
CB, IB, # Chernihiv
48+
CE, IE, # Chernivtsi
49+
CH, IH ] # Chernihiv
50+
51+
license_plate: "#{vehicle.state_abbr}####??"

0 commit comments

Comments
 (0)