Skip to content

Commit 61c4353

Browse files
authored
Add es_ES currency provider. (#1199)
* Add es_ES currency provider. * Fix Dolar without accent. * Skip assert isinstance in tests.
1 parent 845d757 commit 61c4353

File tree

2 files changed

+193
-0
lines changed

2 files changed

+193
-0
lines changed
Lines changed: 171 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,171 @@
1+
from .. import Provider as CurrencyProvider
2+
3+
4+
class Provider(CurrencyProvider):
5+
# Format: (code, name)
6+
currencies = (
7+
("AED", "Dírham de los Emiratos Árabes Unidos"),
8+
("AFN", "Afghaní"),
9+
("ALL", "Lek albanés"),
10+
("AMD", "Dram armenio"),
11+
("ANG", "Florín de las Antillas Holandesas"),
12+
("AOA", "Kwanza angoleño"),
13+
("ARS", "Peso argentino"),
14+
("AUD", "Dólar australiano"),
15+
("AWG", "Florín arubeño"),
16+
("AZN", "Manat azerbaiyano"),
17+
("BAM", "Marco bosnioherzegovino"),
18+
("BBD", "Dólar barbadense"),
19+
("BDT", "Taka bangladesí"),
20+
("BGN", "Lev búlgaro"),
21+
("BHD", "Dinar bahreiní"),
22+
("BIF", "Franco burundés"),
23+
("BMD", "Dólar de Bermudas"),
24+
("BND", "Dólar bruneano"),
25+
("BOB", "Boliviano"),
26+
("BRL", "Real brasileño"),
27+
("BSD", "Dólar bahameño"),
28+
("BTN", "Ngultrum butanés"),
29+
("BWP", "Pula de Botswana"),
30+
("BYR", "Rublio bielurruso"),
31+
("BZD", "Dólar beliceño"),
32+
("CAD", "Dólar canadiense"),
33+
("CDF", "Franco congolés"),
34+
("CHF", "Franco suizo"),
35+
("CLP", "Peso chileno"),
36+
("CNY", "Yuan"),
37+
("COP", "Peso colombiano"),
38+
("CRC", "Colón costarricense"),
39+
("CUC", "Peso cubano convertible"),
40+
("CUP", "Peso subano"),
41+
("CVE", "Escudo de Cabo Verde"),
42+
("CZK", "Corona checa"),
43+
("DJF", "Franco yibutiano"),
44+
("DKK", "Corona danesa"),
45+
("DOP", "Peso dominicano"),
46+
("DZD", "Dinar argelino"),
47+
("EGP", "Libra egipcia"),
48+
("ERN", "Nafka"),
49+
("ETB", "Bir de Etiopía"),
50+
("EUR", "Euro"),
51+
("FJD", "Dólar fiyiano"),
52+
("FKP", "Libra de las islas Falkland"),
53+
("GBP", "Libra esterlina"),
54+
("GEL", "Larí georgiano"),
55+
("GGP", "Libra de Guernsey"),
56+
("GHS", "Cedi"),
57+
("GIP", "Libra de Gibraltar"),
58+
("GMD", "Dalasi"),
59+
("GNF", "Franco guineano"),
60+
("GTQ", "Quetzal guatemalteco"),
61+
("GYD", "Dólar guyanés"),
62+
("HKD", "Dólar hongkonés"),
63+
("HNL", "Lempira hondureño"),
64+
("HRK", "Kuna croata"),
65+
("HTG", "Gourde haitiano"),
66+
("HUF", "Forinto húngaro"),
67+
("IDR", "Rupia indonesia"),
68+
("ILS", "Séquel israelí"),
69+
("NIS", "Nuevo Séquel israelí"),
70+
("IMP", "Libra manesa"),
71+
("INR", "Rupia india"),
72+
("IQD", "Dinar iraquí"),
73+
("IRR", "Rial iraní"),
74+
("ISK", "Corona islandesa"),
75+
("JEP", "Libra de Jersey"),
76+
("JMD", "Dólar jamaicano"),
77+
("JOD", "Dinar jordano"),
78+
("JPY", "Yen japonés"),
79+
("KES", "Chelín keniano"),
80+
("KGS", "Som kirguís"),
81+
("KHR", "Riel camboyano"),
82+
("KMF", "Franco comorense"),
83+
("KPW", "Won norcoreano"),
84+
("KRW", "Krahn Occidental"),
85+
("KWD", "Dinar kuwaití"),
86+
("KYD", "Dólar de las islas Cayman"),
87+
("KZT", "Tenge kazako"),
88+
("LAK", "Kip laosiano"),
89+
("LBP", "Libra libanesa"),
90+
("LKR", "Rupia esrilanquesa"),
91+
("LRD", "Dólar liberiano"),
92+
("LSL", "Loti lesothense"),
93+
("LTL", "Litas lituana"),
94+
("LYD", "Dinar libio"),
95+
("MAD", "Dirham marroquí"),
96+
("MDL", "Leu moldavo"),
97+
("MGA", "Ariary malgache"),
98+
("MKD", "Denar normacedonio"),
99+
("MMK", "Kyat birmano"),
100+
("MNT", "Tugrik mongol"),
101+
("MOP", "Pataca macaense"),
102+
("MRO", "Ouguiya mauritano"),
103+
("MUR", "Rupia mauritana"),
104+
("MVR", "Rupia de Maldivas"),
105+
("MWK", "Kwacha malauí"),
106+
("MXN", "Peso mexicano"),
107+
("MYR", "Ringgit"),
108+
("MZN", "Metical mozambiqueño"),
109+
("NAD", "Dólar namibio"),
110+
("NGN", "Naira nigeriano"),
111+
("NIO", "Córdoba nicaragüense"),
112+
("NOK", "Corona noruega"),
113+
("NPR", "Rupia nepalí"),
114+
("NZD", "Dólar neozelandés"),
115+
("OMR", "Rial omaní"),
116+
("PAB", "Balboa panameño"),
117+
("PEN", "Sol peruano"),
118+
("PGK", "Kina"),
119+
("PHP", "Peso filipino"),
120+
("PKR", "Rupia pakistaní"),
121+
("PLN", "Złoty polaco"),
122+
("PYG", "Guaraní paraguayo"),
123+
("QAR", "Riyal catarí"),
124+
("RON", "Leu rumano"),
125+
("RSD", "Dinar serbio"),
126+
("RUB", "Rublo ruso"),
127+
("RWF", "Franco ruandés"),
128+
("SAR", "Riyal saudí"),
129+
("SBD", "Dólar de las islas Solomon"),
130+
("SCR", "Rupia seychellense"),
131+
("SDG", "Libra sudanesa"),
132+
("SEK", "Corona sueca"),
133+
("SGD", "Dólar de Singapur"),
134+
("SHP", "Libra de Santa Elena"),
135+
("SLL", "Leona"),
136+
("SOS", "Chelín somalí"),
137+
("SPL", "Luigino"),
138+
("SRD", "Dólar surinamés"),
139+
("STD", "Dobra santotomense"),
140+
("SVC", "Colón salvadoreño"),
141+
("SYP", "Libra siria"),
142+
("SZL", "Lilangeni"),
143+
("THB", "Baht tailandés"),
144+
("TJS", "Somoni tayiko"),
145+
("TMT", "Manat turcomano"),
146+
("TND", "Dinar tunecino"),
147+
("TOP", "Pa'anga tongano"),
148+
("TRY", "Lira turca"),
149+
("TTD", "Dólar de Trinidad and Tobago"),
150+
("TVD", "Dólar tuvaluano"),
151+
("TWD", "Nuevo dólar taiwanés"),
152+
("TZS", "Chelín tanzano"),
153+
("UAH", "Grivna ucraniano"),
154+
("UGX", "Chelín ugandés"),
155+
("USD", "Dólar de Estados Unidos"),
156+
("UYU", "Peso uruguayo"),
157+
("UZS", "Soʻm Uzbekistani"),
158+
("VEF", "Bolívar venezolano"),
159+
("VND", "Đồng vietnamita"),
160+
("VUV", "Vanuatu vatu"),
161+
("WST", "Tālā samoano"),
162+
("XAF", "Franco centro africano"),
163+
("XCD", "Dólar del Caribe Oriental"),
164+
("XDR", "Derechos especiales de giro"),
165+
("XOF", "Franco de África occidental"),
166+
("XPF", "Franco CFP"),
167+
("YER", "Rial yemení"),
168+
("ZAR", "Rand sudafricano"),
169+
("ZMW", "Kwacha zambiano"),
170+
("ZWD", "Dólar zimbabuense"),
171+
)

tests/providers/test_currency.py

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -88,3 +88,25 @@ def test_currency_name(self, faker, num_samples):
8888
for _ in range(num_samples):
8989
name = faker.currency_name()
9090
assert isinstance(name, str) and name in self.currency_names
91+
92+
93+
class TestEsEs:
94+
"""Test es_ES currency provider"""
95+
num_samples = 100
96+
97+
@classmethod
98+
def setup_class(cls):
99+
from faker.providers.currency.es_ES import Provider as EsEsCurrencyProvider
100+
cls.provider = EsEsCurrencyProvider
101+
cls.currencies = cls.provider.currencies
102+
cls.currency_codes, cls.currency_names = tuple(zip(*cls.currencies))
103+
104+
def test_currency(self, faker, num_samples):
105+
for _ in range(num_samples):
106+
cur = faker.currency()
107+
assert cur in self.currencies
108+
109+
def test_currency_name(self, faker, num_samples):
110+
for _ in range(num_samples):
111+
name = faker.currency_name()
112+
assert name in self.currency_names

0 commit comments

Comments
 (0)