Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
57 changes: 57 additions & 0 deletions src/World.Net.UnitTests/Countries/QatarTest.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace World.Net.UnitTests.Countries
{
public sealed class QatarTest : AssertCountryTestBase
{
private const string QATAR_COUNTRY_NAME = "Qatar";
private const string QATAR_NATIVE_NAME = "دولة قطر";
private const string QATAR_CAPITAL = "Doha";
private const string QATAR_OFFICIAL_NAME = "State of Qatar";
private const string QATAR_ISO2_CODE = "QA";
private const string QATAR_ISO3_CODE = "QAT";
private const int QATAR_NUMERIC_CODE = 634;
private readonly string[] QATAR_CALLING_CODE = ["+974"];
private const CountryIdentifier EXPECTEDID = CountryIdentifier.Qatar;

private static readonly (string Name, string IsoCode, string Type)[] EXPECTED_STATES =
[
new("Ad Dawhah", "QA-DA", "Municipality"),
new("Al Khor", "QA-KH", "Municipality"),
new("Al Rayyan", "QA-RA", "Municipality"),
new("Al Shamal", "QA-SH", "Municipality"),
new("Al Wakrah", "QA-WA", "Municipality"),
new("Al Shahaniya", "QA-SN", "Municipality"),
new("Umm Salal", "QA-US", "Municipality"),
new("Al Daayen", "QA-DAA", "Municipality")
];

[Fact]
public void GetCountry_ReturnsCorrectInformation_ForQatar()
{
// Arrange
// Act
var country = CountryProvider.GetCountry(EXPECTEDID);

// Assert
AssertCorrectInformation(
country,
EXPECTEDID,
QATAR_COUNTRY_NAME,
QATAR_OFFICIAL_NAME,
QATAR_NATIVE_NAME,
QATAR_CAPITAL,
QATAR_NUMERIC_CODE,
QATAR_ISO2_CODE,
QATAR_ISO3_CODE,
QATAR_CALLING_CODE,
EXPECTED_STATES
);
}
}

}
42 changes: 42 additions & 0 deletions src/World.Net.UnitTests/Countries/ReunionTest.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
namespace World.Net.UnitTests.Countries;

public sealed class ReunionTest : AssertCountryTestBase
{
private const string REUNION_COUNTRY_NAME = "Réunion";
private const string REUNION_NATIVE_NAME = "Réunion";
private const string REUNION_CAPITAL = "Saint-Denis";
private const string REUNION_OFFICIAL_NAME = "Réunion";
private const string REUNION_ISO2_CODE = "RE";
private const string REUNION_ISO3_CODE = "REU";
private const int REUNION_NUMERIC_CODE = 638;
private readonly string[] REUNION_CALLING_CODE = ["+262"];
private const CountryIdentifier EXPECTEDID = CountryIdentifier.Reunion;

private static readonly (string Name, string IsoCode, string Type)[] EXPECTED_STATES =
[
new("Réunion", "RE-RE", "Region")
];

[Fact]
public void GetCountry_ReturnsCorrectInformation_ForReunion()
{
// Arrange
// Act
var country = CountryProvider.GetCountry(EXPECTEDID);

// Assert
AssertCorrectInformation(
country,
EXPECTEDID,
REUNION_COUNTRY_NAME,
REUNION_OFFICIAL_NAME,
REUNION_NATIVE_NAME,
REUNION_CAPITAL,
REUNION_NUMERIC_CODE,
REUNION_ISO2_CODE,
REUNION_ISO3_CODE,
REUNION_CALLING_CODE,
EXPECTED_STATES
);
}
}
83 changes: 83 additions & 0 deletions src/World.Net.UnitTests/Countries/RomaniaTest.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
namespace World.Net.UnitTests.Countries;

public sealed class RomaniaTest : AssertCountryTestBase
{
private const string ROMANIA_COUNTRY_NAME = "Romania";
private const string ROMANIA_NATIVE_NAME = "România";
private const string ROMANIA_CAPITAL = "Bucharest";
private const string ROMANIA_OFFICIAL_NAME = "Romania";
private const string ROMANIA_ISO2_CODE = "RO";
private const string ROMANIA_ISO3_CODE = "ROU";
private const int ROMANIA_NUMERIC_CODE = 642;
private readonly string[] ROMANIA_CALLING_CODE = ["+40"];
private const CountryIdentifier EXPECTEDID = CountryIdentifier.Romania;

private static readonly (string Name, string IsoCode, string Type)[] EXPECTED_STATES =
[
new("Alba", "RO-AB", "County"),
new("Arad", "RO-AR", "County"),
new("Argeș", "RO-AG", "County"),
new("Bacău", "RO-BC", "County"),
new("Bihor", "RO-BH", "County"),
new("Bistrița-Năsăud", "RO-BN", "County"),
new("Botoșani", "RO-BT", "County"),
new("Brașov", "RO-BV", "County"),
new("Brăila", "RO-BR", "County"),
new("Buzău", "RO-BZ", "County"),
new("Caraș-Severin", "RO-CS", "County"),
new("Călărași", "RO-CL", "County"),
new("Cluj", "RO-CJ", "County"),
new("Constanța", "RO-CT", "County"),
new("Covasna", "RO-CV", "County"),
new("Dâmbovița", "RO-DB", "County"),
new("Dolj", "RO-DJ", "County"),
new("Galați", "RO-GL", "County"),
new("Giurgiu", "RO-GR", "County"),
new("Gorj", "RO-GJ", "County"),
new("Harghita", "RO-HR", "County"),
new("Hunedoara", "RO-HD", "County"),
new("Ialomița", "RO-IL", "County"),
new("Iași", "RO-IS", "County"),
new("Ilfov", "RO-IF", "County"),
new("Maramureș", "RO-MM", "County"),
new("Mehedinți", "RO-MH", "County"),
new("Mureș", "RO-MS", "County"),
new("Neamț", "RO-NT", "County"),
new("Olt", "RO-OT", "County"),
new("Prahova", "RO-PH", "County"),
new("Satu Mare", "RO-SM", "County"),
new("Sălaj", "RO-SJ", "County"),
new("Sibiu", "RO-SB", "County"),
new("Suceava", "RO-SV", "County"),
new("Teleorman", "RO-TR", "County"),
new("Timiș", "RO-TM", "County"),
new("Tulcea", "RO-TL", "County"),
new("Vaslui", "RO-VS", "County"),
new("Vâlcea", "RO-VL", "County"),
new("Vrancea", "RO-VN", "County"),
new("Bucharest", "RO-B", "Municipality")
];

[Fact]
public void GetCountry_ReturnsCorrectInformation_ForRomania()
{
// Arrange
// Act
var country = CountryProvider.GetCountry(EXPECTEDID);

// Assert
AssertCorrectInformation(
country,
EXPECTEDID,
ROMANIA_COUNTRY_NAME,
ROMANIA_OFFICIAL_NAME,
ROMANIA_NATIVE_NAME,
ROMANIA_CAPITAL,
ROMANIA_NUMERIC_CODE,
ROMANIA_ISO2_CODE,
ROMANIA_ISO3_CODE,
ROMANIA_CALLING_CODE,
EXPECTED_STATES
);
}
}
124 changes: 124 additions & 0 deletions src/World.Net.UnitTests/Countries/RussiaTest.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,124 @@
namespace World.Net.UnitTests.Countries;

public sealed class RussiaTest : AssertCountryTestBase
{
private const string RUSSIA_COUNTRY_NAME = "Russia";
private const string RUSSIA_NATIVE_NAME = "Россия";
private const string RUSSIA_CAPITAL = "Moscow";
private const string RUSSIA_OFFICIAL_NAME = "Russian Federation";
private const string RUSSIA_ISO2_CODE = "RU";
private const string RUSSIA_ISO3_CODE = "RUS";
private const int RUSSIA_NUMERIC_CODE = 643;
private readonly string[] RUSSIA_CALLING_CODE = ["+7"];
private const CountryIdentifier EXPECTEDID = CountryIdentifier.Russia;

private static readonly (string Name, string IsoCode, string Type)[] EXPECTED_STATES =
[
new("Adygea", "RU-AD", "Federal Subject"),
new("Altai Republic", "RU-AL", "Federal Subject"),
new("Altai Krai", "RU-ALT", "Federal Subject"),
new("Amur Oblast", "RU-AMU", "Federal Subject"),
new("Arkhangelsk Oblast", "RU-ARK", "Federal Subject"),
new("Astrakhan Oblast", "RU-AST", "Federal Subject"),
new("Bashkortostan", "RU-BA", "Federal Subject"),
new("Belgorod Oblast", "RU-BEL", "Federal Subject"),
new("Bryansk Oblast", "RU-BRY", "Federal Subject"),
new("Buryatia", "RU-BU", "Federal Subject"),
new("Chechnya", "RU-CE", "Federal Subject"),
new("Chelyabinsk Oblast", "RU-CHE", "Federal Subject"),
new("Chukotka", "RU-CHU", "Federal Subject"),
new("Chuvashia", "RU-CU", "Federal Subject"),
new("Dagestan", "RU-DA", "Federal Subject"),
new("Ingushetia", "RU-IN", "Federal Subject"),
new("Irkutsk Oblast", "RU-IRK", "Federal Subject"),
new("Ivanovo Oblast", "RU-IVA", "Federal Subject"),
new("Jewish Autonomous Oblast", "RU-YEV", "Federal Subject"),
new("Kabardino-Balkaria", "RU-KB", "Federal Subject"),
new("Kaliningrad Oblast", "RU-KGD", "Federal Subject"),
new("Kalmykia", "RU-KL", "Federal Subject"),
new("Kaluga Oblast", "RU-KLU", "Federal Subject"),
new("Kamchatka Krai", "RU-KAM", "Federal Subject"),
new("Karachay-Cherkessia", "RU-KC", "Federal Subject"),
new("Karelia", "RU-KR", "Federal Subject"),
new("Kemerovo Oblast", "RU-KEM", "Federal Subject"),
new("Khabarovsk Krai", "RU-KHA", "Federal Subject"),
new("Khakassia", "RU-KK", "Federal Subject"),
new("Khanty-Mansi Autonomous Okrug", "RU-KHM", "Federal Subject"),
new("Kirov Oblast", "RU-KIR", "Federal Subject"),
new("Komi", "RU-KO", "Federal Subject"),
new("Kostroma Oblast", "RU-KOS", "Federal Subject"),
new("Krasnodar Krai", "RU-KDA", "Federal Subject"),
new("Krasnoyarsk Krai", "RU-KYA", "Federal Subject"),
new("Kurgan Oblast", "RU-KUR", "Federal Subject"),
new("Kursk Oblast", "RU-KRS", "Federal Subject"),
new("Leningrad Oblast", "RU-LEN", "Federal Subject"),
new("Lipetsk Oblast", "RU-LIP", "Federal Subject"),
new("Magadan Oblast", "RU-MAG", "Federal Subject"),
new("Mari El", "RU-ME", "Federal Subject"),
new("Mordovia", "RU-MO", "Federal Subject"),
new("Moscow", "RU-MOS", "Federal Subject"),
new("Moscow Oblast", "RU-MOW", "Federal Subject"),
new("Murmansk Oblast", "RU-MUR", "Federal Subject"),
new("Nenets Autonomous Okrug", "RU-NEN", "Federal Subject"),
new("Nizhny Novgorod Oblast", "RU-NIZ", "Federal Subject"),
new("North Ossetia–Alania", "RU-SE", "Federal Subject"),
new("Novgorod Oblast", "RU-NGR", "Federal Subject"),
new("Novosibirsk Oblast", "RU-NVS", "Federal Subject"),
new("Omsk Oblast", "RU-OMS", "Federal Subject"),
new("Orenburg Oblast", "RU-ORE", "Federal Subject"),
new("Oryol Oblast", "RU-ORL", "Federal Subject"),
new("Penza Oblast", "RU-PNZ", "Federal Subject"),
new("Perm Krai", "RU-PER", "Federal Subject"),
new("Primorsky Krai", "RU-PRI", "Federal Subject"),
new("Pskov Oblast", "RU-PSK", "Federal Subject"),
new("Rostov Oblast", "RU-ROS", "Federal Subject"),
new("Ryazan Oblast", "RU-RYA", "Federal Subject"),
new("Saint Petersburg", "RU-SPE", "Federal Subject"),
new("Sakha Republic (Yakutia)", "RU-SAK", "Federal Subject"),
new("Sakhalin Oblast", "RU-SAKH", "Federal Subject"),
new("Samara Oblast", "RU-SAM", "Federal Subject"),
new("Saratov Oblast", "RU-SAR", "Federal Subject"),
new("Smolensk Oblast", "RU-SMO", "Federal Subject"),
new("Stavropol Krai", "RU-STA", "Federal Subject"),
new("Sverdlovsk Oblast", "RU-SVE", "Federal Subject"),
new("Tambov Oblast", "RU-TAM", "Federal Subject"),
new("Tatarstan", "RU-TA", "Federal Subject"),
new("Tomsk Oblast", "RU-TOM", "Federal Subject"),
new("Tula Oblast", "RU-TUL", "Federal Subject"),
new("Tuva", "RU-TY", "Federal Subject"),
new("Tver Oblast", "RU-TVE", "Federal Subject"),
new("Tyumen Oblast", "RU-TYU", "Federal Subject"),
new("Udmurtia", "RU-UD", "Federal Subject"),
new("Ulyanovsk Oblast", "RU-ULY", "Federal Subject"),
new("Vladimir Oblast", "RU-VLA", "Federal Subject"),
new("Volgograd Oblast", "RU-VGG", "Federal Subject"),
new("Vologda Oblast", "RU-VLG", "Federal Subject"),
new("Voronezh Oblast", "RU-VOR", "Federal Subject"),
new("Yamalo-Nenets Autonomous Okrug", "RU-YAN", "Federal Subject"),
new("Yaroslavl Oblast", "RU-YAR", "Federal Subject"),
new("Zabaykalsky Krai", "RU-ZAB", "Federal Subject")
];

[Fact]
public void GetCountry_ReturnsCorrectInformation_ForRussia()
{
// Arrange
// Act
var country = CountryProvider.GetCountry(EXPECTEDID);

// Assert
AssertCorrectInformation(
country,
EXPECTEDID,
RUSSIA_COUNTRY_NAME,
RUSSIA_OFFICIAL_NAME,
RUSSIA_NATIVE_NAME,
RUSSIA_CAPITAL,
RUSSIA_NUMERIC_CODE,
RUSSIA_ISO2_CODE,
RUSSIA_ISO3_CODE,
RUSSIA_CALLING_CODE,
EXPECTED_STATES
);
}
}
46 changes: 46 additions & 0 deletions src/World.Net.UnitTests/Countries/RwandaTest.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
namespace World.Net.UnitTests.Countries;

public sealed class RwandaTest : AssertCountryTestBase
{
private const string RWANDA_COUNTRY_NAME = "Rwanda";
private const string RWANDA_NATIVE_NAME = "Rwanda";
private const string RWANDA_CAPITAL = "Kigali";
private const string RWANDA_OFFICIAL_NAME = "Republic of Rwanda";
private const string RWANDA_ISO2_CODE = "RW";
private const string RWANDA_ISO3_CODE = "RWA";
private const int RWANDA_NUMERIC_CODE = 646;
private readonly string[] RWANDA_CALLING_CODE = ["+250"];
private const CountryIdentifier EXPECTEDID = CountryIdentifier.Rwanda;

private static readonly (string Name, string IsoCode, string Type)[] EXPECTED_STATES =
[
new("Kigali", "RW-KI", "Province"),
new("Eastern", "RW-ES", "Province"),
new("Northern", "RW-NO", "Province"),
new("Western", "RW-WE", "Province"),
new("Southern", "RW-SO", "Province")
];

[Fact]
public void GetCountry_ReturnsCorrectInformation_ForRwanda()
{
// Arrange
// Act
var country = CountryProvider.GetCountry(EXPECTEDID);

// Assert
AssertCorrectInformation(
country,
EXPECTEDID,
RWANDA_COUNTRY_NAME,
RWANDA_OFFICIAL_NAME,
RWANDA_NATIVE_NAME,
RWANDA_CAPITAL,
RWANDA_NUMERIC_CODE,
RWANDA_ISO2_CODE,
RWANDA_ISO3_CODE,
RWANDA_CALLING_CODE,
EXPECTED_STATES
);
}
}
Loading