Skip to content

Commit ae9c1e5

Browse files
authored
Merge pull request #95 from deanology/NewCountries_7
New countries 7
2 parents c94553f + 6b1bf0d commit ae9c1e5

File tree

11 files changed

+681
-0
lines changed

11 files changed

+681
-0
lines changed
Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
using System;
2+
using System.Collections.Generic;
3+
using System.Linq;
4+
using System.Text;
5+
using System.Threading.Tasks;
6+
7+
namespace World.Net.UnitTests.Countries
8+
{
9+
public sealed class QatarTest : AssertCountryTestBase
10+
{
11+
private const string QATAR_COUNTRY_NAME = "Qatar";
12+
private const string QATAR_NATIVE_NAME = "دولة قطر";
13+
private const string QATAR_CAPITAL = "Doha";
14+
private const string QATAR_OFFICIAL_NAME = "State of Qatar";
15+
private const string QATAR_ISO2_CODE = "QA";
16+
private const string QATAR_ISO3_CODE = "QAT";
17+
private const int QATAR_NUMERIC_CODE = 634;
18+
private readonly string[] QATAR_CALLING_CODE = ["+974"];
19+
private const CountryIdentifier EXPECTEDID = CountryIdentifier.Qatar;
20+
21+
private static readonly (string Name, string IsoCode, string Type)[] EXPECTED_STATES =
22+
[
23+
new("Ad Dawhah", "QA-DA", "Municipality"),
24+
new("Al Khor", "QA-KH", "Municipality"),
25+
new("Al Rayyan", "QA-RA", "Municipality"),
26+
new("Al Shamal", "QA-SH", "Municipality"),
27+
new("Al Wakrah", "QA-WA", "Municipality"),
28+
new("Al Shahaniya", "QA-SN", "Municipality"),
29+
new("Umm Salal", "QA-US", "Municipality"),
30+
new("Al Daayen", "QA-DAA", "Municipality")
31+
];
32+
33+
[Fact]
34+
public void GetCountry_ReturnsCorrectInformation_ForQatar()
35+
{
36+
// Arrange
37+
// Act
38+
var country = CountryProvider.GetCountry(EXPECTEDID);
39+
40+
// Assert
41+
AssertCorrectInformation(
42+
country,
43+
EXPECTEDID,
44+
QATAR_COUNTRY_NAME,
45+
QATAR_OFFICIAL_NAME,
46+
QATAR_NATIVE_NAME,
47+
QATAR_CAPITAL,
48+
QATAR_NUMERIC_CODE,
49+
QATAR_ISO2_CODE,
50+
QATAR_ISO3_CODE,
51+
QATAR_CALLING_CODE,
52+
EXPECTED_STATES
53+
);
54+
}
55+
}
56+
57+
}
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
namespace World.Net.UnitTests.Countries;
2+
3+
public sealed class ReunionTest : AssertCountryTestBase
4+
{
5+
private const string REUNION_COUNTRY_NAME = "Réunion";
6+
private const string REUNION_NATIVE_NAME = "Réunion";
7+
private const string REUNION_CAPITAL = "Saint-Denis";
8+
private const string REUNION_OFFICIAL_NAME = "Réunion";
9+
private const string REUNION_ISO2_CODE = "RE";
10+
private const string REUNION_ISO3_CODE = "REU";
11+
private const int REUNION_NUMERIC_CODE = 638;
12+
private readonly string[] REUNION_CALLING_CODE = ["+262"];
13+
private const CountryIdentifier EXPECTEDID = CountryIdentifier.Reunion;
14+
15+
private static readonly (string Name, string IsoCode, string Type)[] EXPECTED_STATES =
16+
[
17+
new("Réunion", "RE-RE", "Region")
18+
];
19+
20+
[Fact]
21+
public void GetCountry_ReturnsCorrectInformation_ForReunion()
22+
{
23+
// Arrange
24+
// Act
25+
var country = CountryProvider.GetCountry(EXPECTEDID);
26+
27+
// Assert
28+
AssertCorrectInformation(
29+
country,
30+
EXPECTEDID,
31+
REUNION_COUNTRY_NAME,
32+
REUNION_OFFICIAL_NAME,
33+
REUNION_NATIVE_NAME,
34+
REUNION_CAPITAL,
35+
REUNION_NUMERIC_CODE,
36+
REUNION_ISO2_CODE,
37+
REUNION_ISO3_CODE,
38+
REUNION_CALLING_CODE,
39+
EXPECTED_STATES
40+
);
41+
}
42+
}
Lines changed: 83 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,83 @@
1+
namespace World.Net.UnitTests.Countries;
2+
3+
public sealed class RomaniaTest : AssertCountryTestBase
4+
{
5+
private const string ROMANIA_COUNTRY_NAME = "Romania";
6+
private const string ROMANIA_NATIVE_NAME = "România";
7+
private const string ROMANIA_CAPITAL = "Bucharest";
8+
private const string ROMANIA_OFFICIAL_NAME = "Romania";
9+
private const string ROMANIA_ISO2_CODE = "RO";
10+
private const string ROMANIA_ISO3_CODE = "ROU";
11+
private const int ROMANIA_NUMERIC_CODE = 642;
12+
private readonly string[] ROMANIA_CALLING_CODE = ["+40"];
13+
private const CountryIdentifier EXPECTEDID = CountryIdentifier.Romania;
14+
15+
private static readonly (string Name, string IsoCode, string Type)[] EXPECTED_STATES =
16+
[
17+
new("Alba", "RO-AB", "County"),
18+
new("Arad", "RO-AR", "County"),
19+
new("Argeș", "RO-AG", "County"),
20+
new("Bacău", "RO-BC", "County"),
21+
new("Bihor", "RO-BH", "County"),
22+
new("Bistrița-Năsăud", "RO-BN", "County"),
23+
new("Botoșani", "RO-BT", "County"),
24+
new("Brașov", "RO-BV", "County"),
25+
new("Brăila", "RO-BR", "County"),
26+
new("Buzău", "RO-BZ", "County"),
27+
new("Caraș-Severin", "RO-CS", "County"),
28+
new("Călărași", "RO-CL", "County"),
29+
new("Cluj", "RO-CJ", "County"),
30+
new("Constanța", "RO-CT", "County"),
31+
new("Covasna", "RO-CV", "County"),
32+
new("Dâmbovița", "RO-DB", "County"),
33+
new("Dolj", "RO-DJ", "County"),
34+
new("Galați", "RO-GL", "County"),
35+
new("Giurgiu", "RO-GR", "County"),
36+
new("Gorj", "RO-GJ", "County"),
37+
new("Harghita", "RO-HR", "County"),
38+
new("Hunedoara", "RO-HD", "County"),
39+
new("Ialomița", "RO-IL", "County"),
40+
new("Iași", "RO-IS", "County"),
41+
new("Ilfov", "RO-IF", "County"),
42+
new("Maramureș", "RO-MM", "County"),
43+
new("Mehedinți", "RO-MH", "County"),
44+
new("Mureș", "RO-MS", "County"),
45+
new("Neamț", "RO-NT", "County"),
46+
new("Olt", "RO-OT", "County"),
47+
new("Prahova", "RO-PH", "County"),
48+
new("Satu Mare", "RO-SM", "County"),
49+
new("Sălaj", "RO-SJ", "County"),
50+
new("Sibiu", "RO-SB", "County"),
51+
new("Suceava", "RO-SV", "County"),
52+
new("Teleorman", "RO-TR", "County"),
53+
new("Timiș", "RO-TM", "County"),
54+
new("Tulcea", "RO-TL", "County"),
55+
new("Vaslui", "RO-VS", "County"),
56+
new("Vâlcea", "RO-VL", "County"),
57+
new("Vrancea", "RO-VN", "County"),
58+
new("Bucharest", "RO-B", "Municipality")
59+
];
60+
61+
[Fact]
62+
public void GetCountry_ReturnsCorrectInformation_ForRomania()
63+
{
64+
// Arrange
65+
// Act
66+
var country = CountryProvider.GetCountry(EXPECTEDID);
67+
68+
// Assert
69+
AssertCorrectInformation(
70+
country,
71+
EXPECTEDID,
72+
ROMANIA_COUNTRY_NAME,
73+
ROMANIA_OFFICIAL_NAME,
74+
ROMANIA_NATIVE_NAME,
75+
ROMANIA_CAPITAL,
76+
ROMANIA_NUMERIC_CODE,
77+
ROMANIA_ISO2_CODE,
78+
ROMANIA_ISO3_CODE,
79+
ROMANIA_CALLING_CODE,
80+
EXPECTED_STATES
81+
);
82+
}
83+
}
Lines changed: 124 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,124 @@
1+
namespace World.Net.UnitTests.Countries;
2+
3+
public sealed class RussiaTest : AssertCountryTestBase
4+
{
5+
private const string RUSSIA_COUNTRY_NAME = "Russia";
6+
private const string RUSSIA_NATIVE_NAME = "Россия";
7+
private const string RUSSIA_CAPITAL = "Moscow";
8+
private const string RUSSIA_OFFICIAL_NAME = "Russian Federation";
9+
private const string RUSSIA_ISO2_CODE = "RU";
10+
private const string RUSSIA_ISO3_CODE = "RUS";
11+
private const int RUSSIA_NUMERIC_CODE = 643;
12+
private readonly string[] RUSSIA_CALLING_CODE = ["+7"];
13+
private const CountryIdentifier EXPECTEDID = CountryIdentifier.Russia;
14+
15+
private static readonly (string Name, string IsoCode, string Type)[] EXPECTED_STATES =
16+
[
17+
new("Adygea", "RU-AD", "Federal Subject"),
18+
new("Altai Republic", "RU-AL", "Federal Subject"),
19+
new("Altai Krai", "RU-ALT", "Federal Subject"),
20+
new("Amur Oblast", "RU-AMU", "Federal Subject"),
21+
new("Arkhangelsk Oblast", "RU-ARK", "Federal Subject"),
22+
new("Astrakhan Oblast", "RU-AST", "Federal Subject"),
23+
new("Bashkortostan", "RU-BA", "Federal Subject"),
24+
new("Belgorod Oblast", "RU-BEL", "Federal Subject"),
25+
new("Bryansk Oblast", "RU-BRY", "Federal Subject"),
26+
new("Buryatia", "RU-BU", "Federal Subject"),
27+
new("Chechnya", "RU-CE", "Federal Subject"),
28+
new("Chelyabinsk Oblast", "RU-CHE", "Federal Subject"),
29+
new("Chukotka", "RU-CHU", "Federal Subject"),
30+
new("Chuvashia", "RU-CU", "Federal Subject"),
31+
new("Dagestan", "RU-DA", "Federal Subject"),
32+
new("Ingushetia", "RU-IN", "Federal Subject"),
33+
new("Irkutsk Oblast", "RU-IRK", "Federal Subject"),
34+
new("Ivanovo Oblast", "RU-IVA", "Federal Subject"),
35+
new("Jewish Autonomous Oblast", "RU-YEV", "Federal Subject"),
36+
new("Kabardino-Balkaria", "RU-KB", "Federal Subject"),
37+
new("Kaliningrad Oblast", "RU-KGD", "Federal Subject"),
38+
new("Kalmykia", "RU-KL", "Federal Subject"),
39+
new("Kaluga Oblast", "RU-KLU", "Federal Subject"),
40+
new("Kamchatka Krai", "RU-KAM", "Federal Subject"),
41+
new("Karachay-Cherkessia", "RU-KC", "Federal Subject"),
42+
new("Karelia", "RU-KR", "Federal Subject"),
43+
new("Kemerovo Oblast", "RU-KEM", "Federal Subject"),
44+
new("Khabarovsk Krai", "RU-KHA", "Federal Subject"),
45+
new("Khakassia", "RU-KK", "Federal Subject"),
46+
new("Khanty-Mansi Autonomous Okrug", "RU-KHM", "Federal Subject"),
47+
new("Kirov Oblast", "RU-KIR", "Federal Subject"),
48+
new("Komi", "RU-KO", "Federal Subject"),
49+
new("Kostroma Oblast", "RU-KOS", "Federal Subject"),
50+
new("Krasnodar Krai", "RU-KDA", "Federal Subject"),
51+
new("Krasnoyarsk Krai", "RU-KYA", "Federal Subject"),
52+
new("Kurgan Oblast", "RU-KUR", "Federal Subject"),
53+
new("Kursk Oblast", "RU-KRS", "Federal Subject"),
54+
new("Leningrad Oblast", "RU-LEN", "Federal Subject"),
55+
new("Lipetsk Oblast", "RU-LIP", "Federal Subject"),
56+
new("Magadan Oblast", "RU-MAG", "Federal Subject"),
57+
new("Mari El", "RU-ME", "Federal Subject"),
58+
new("Mordovia", "RU-MO", "Federal Subject"),
59+
new("Moscow", "RU-MOS", "Federal Subject"),
60+
new("Moscow Oblast", "RU-MOW", "Federal Subject"),
61+
new("Murmansk Oblast", "RU-MUR", "Federal Subject"),
62+
new("Nenets Autonomous Okrug", "RU-NEN", "Federal Subject"),
63+
new("Nizhny Novgorod Oblast", "RU-NIZ", "Federal Subject"),
64+
new("North Ossetia–Alania", "RU-SE", "Federal Subject"),
65+
new("Novgorod Oblast", "RU-NGR", "Federal Subject"),
66+
new("Novosibirsk Oblast", "RU-NVS", "Federal Subject"),
67+
new("Omsk Oblast", "RU-OMS", "Federal Subject"),
68+
new("Orenburg Oblast", "RU-ORE", "Federal Subject"),
69+
new("Oryol Oblast", "RU-ORL", "Federal Subject"),
70+
new("Penza Oblast", "RU-PNZ", "Federal Subject"),
71+
new("Perm Krai", "RU-PER", "Federal Subject"),
72+
new("Primorsky Krai", "RU-PRI", "Federal Subject"),
73+
new("Pskov Oblast", "RU-PSK", "Federal Subject"),
74+
new("Rostov Oblast", "RU-ROS", "Federal Subject"),
75+
new("Ryazan Oblast", "RU-RYA", "Federal Subject"),
76+
new("Saint Petersburg", "RU-SPE", "Federal Subject"),
77+
new("Sakha Republic (Yakutia)", "RU-SAK", "Federal Subject"),
78+
new("Sakhalin Oblast", "RU-SAKH", "Federal Subject"),
79+
new("Samara Oblast", "RU-SAM", "Federal Subject"),
80+
new("Saratov Oblast", "RU-SAR", "Federal Subject"),
81+
new("Smolensk Oblast", "RU-SMO", "Federal Subject"),
82+
new("Stavropol Krai", "RU-STA", "Federal Subject"),
83+
new("Sverdlovsk Oblast", "RU-SVE", "Federal Subject"),
84+
new("Tambov Oblast", "RU-TAM", "Federal Subject"),
85+
new("Tatarstan", "RU-TA", "Federal Subject"),
86+
new("Tomsk Oblast", "RU-TOM", "Federal Subject"),
87+
new("Tula Oblast", "RU-TUL", "Federal Subject"),
88+
new("Tuva", "RU-TY", "Federal Subject"),
89+
new("Tver Oblast", "RU-TVE", "Federal Subject"),
90+
new("Tyumen Oblast", "RU-TYU", "Federal Subject"),
91+
new("Udmurtia", "RU-UD", "Federal Subject"),
92+
new("Ulyanovsk Oblast", "RU-ULY", "Federal Subject"),
93+
new("Vladimir Oblast", "RU-VLA", "Federal Subject"),
94+
new("Volgograd Oblast", "RU-VGG", "Federal Subject"),
95+
new("Vologda Oblast", "RU-VLG", "Federal Subject"),
96+
new("Voronezh Oblast", "RU-VOR", "Federal Subject"),
97+
new("Yamalo-Nenets Autonomous Okrug", "RU-YAN", "Federal Subject"),
98+
new("Yaroslavl Oblast", "RU-YAR", "Federal Subject"),
99+
new("Zabaykalsky Krai", "RU-ZAB", "Federal Subject")
100+
];
101+
102+
[Fact]
103+
public void GetCountry_ReturnsCorrectInformation_ForRussia()
104+
{
105+
// Arrange
106+
// Act
107+
var country = CountryProvider.GetCountry(EXPECTEDID);
108+
109+
// Assert
110+
AssertCorrectInformation(
111+
country,
112+
EXPECTEDID,
113+
RUSSIA_COUNTRY_NAME,
114+
RUSSIA_OFFICIAL_NAME,
115+
RUSSIA_NATIVE_NAME,
116+
RUSSIA_CAPITAL,
117+
RUSSIA_NUMERIC_CODE,
118+
RUSSIA_ISO2_CODE,
119+
RUSSIA_ISO3_CODE,
120+
RUSSIA_CALLING_CODE,
121+
EXPECTED_STATES
122+
);
123+
}
124+
}
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
namespace World.Net.UnitTests.Countries;
2+
3+
public sealed class RwandaTest : AssertCountryTestBase
4+
{
5+
private const string RWANDA_COUNTRY_NAME = "Rwanda";
6+
private const string RWANDA_NATIVE_NAME = "Rwanda";
7+
private const string RWANDA_CAPITAL = "Kigali";
8+
private const string RWANDA_OFFICIAL_NAME = "Republic of Rwanda";
9+
private const string RWANDA_ISO2_CODE = "RW";
10+
private const string RWANDA_ISO3_CODE = "RWA";
11+
private const int RWANDA_NUMERIC_CODE = 646;
12+
private readonly string[] RWANDA_CALLING_CODE = ["+250"];
13+
private const CountryIdentifier EXPECTEDID = CountryIdentifier.Rwanda;
14+
15+
private static readonly (string Name, string IsoCode, string Type)[] EXPECTED_STATES =
16+
[
17+
new("Kigali", "RW-KI", "Province"),
18+
new("Eastern", "RW-ES", "Province"),
19+
new("Northern", "RW-NO", "Province"),
20+
new("Western", "RW-WE", "Province"),
21+
new("Southern", "RW-SO", "Province")
22+
];
23+
24+
[Fact]
25+
public void GetCountry_ReturnsCorrectInformation_ForRwanda()
26+
{
27+
// Arrange
28+
// Act
29+
var country = CountryProvider.GetCountry(EXPECTEDID);
30+
31+
// Assert
32+
AssertCorrectInformation(
33+
country,
34+
EXPECTEDID,
35+
RWANDA_COUNTRY_NAME,
36+
RWANDA_OFFICIAL_NAME,
37+
RWANDA_NATIVE_NAME,
38+
RWANDA_CAPITAL,
39+
RWANDA_NUMERIC_CODE,
40+
RWANDA_ISO2_CODE,
41+
RWANDA_ISO3_CODE,
42+
RWANDA_CALLING_CODE,
43+
EXPECTED_STATES
44+
);
45+
}
46+
}

0 commit comments

Comments
 (0)