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
48 changes: 48 additions & 0 deletions src/World.Net.UnitTests/Countries/GrenadaTest.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
namespace World.Net.UnitTests.Countries;

public sealed class GrenadaTest : AssertCountryTestBase
{
private const string GRENADA_COUNTRY_NAME = "Grenada";
private const string GRENADA_NATIVE_NAME = "Grenada";
private const string GRENADA_CAPITAL = "St. George's";
private const string GRENADA_OFFICIAL_NAME = "Grenada";
private const string GRENADA_ISO2_CODE = "GD";
private const string GRENADA_ISO3_CODE = "GRD";
private const int GRENADA_NUMERIC_CODE = 308;
private readonly string[] GRENADA_CALLING_CODE = ["+1-473"];
private const CountryIdentifier EXPECTEDID = CountryIdentifier.Grenada;

private static readonly (string Name, string IsoCode, string Type)[] EXPECTED_STATES =
[
new("Saint Andrew", "GD-01", "Parish"),
new("Saint David", "GD-02", "Parish"),
new("Saint George", "GD-03", "Parish"),
new("Saint John", "GD-04", "Parish"),
new("Saint Mark", "GD-05", "Parish"),
new("Saint Patrick", "GD-06", "Parish"),
new("Carriacou and Petite Martinique", "GD-10", "Dependency")
];

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

// Assert
AssertCorrectInformation(
country,
EXPECTEDID,
GRENADA_COUNTRY_NAME,
GRENADA_OFFICIAL_NAME,
GRENADA_NATIVE_NAME,
GRENADA_CAPITAL,
GRENADA_NUMERIC_CODE,
GRENADA_ISO2_CODE,
GRENADA_ISO3_CODE,
GRENADA_CALLING_CODE,
EXPECTED_STATES
);
}
}
46 changes: 46 additions & 0 deletions src/World.Net.UnitTests/Countries/GuadeloupeTest.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace World.Net.UnitTests.Countries
{
public sealed class GuadeloupeTest : AssertCountryTestBase
{
private const string GUADELOUPE_COUNTRY_NAME = "Guadeloupe";
private const string GUADELOUPE_NATIVE_NAME = "Guadeloupe";
private const string GUADELOUPE_CAPITAL = "Basse-Terre";
private const string GUADELOUPE_OFFICIAL_NAME = "Guadeloupe";
private const string GUADELOUPE_ISO2_CODE = "GP";
private const string GUADELOUPE_ISO3_CODE = "GLP";
private const int GUADELOUPE_NUMERIC_CODE = 312;
private readonly string[] GUADELOUPE_CALLING_CODE = ["+590"];
private const CountryIdentifier EXPECTEDID = CountryIdentifier.Guadeloupe;

private static readonly (string Name, string IsoCode, string Type)[] EXPECTED_STATES = [];

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

// Assert
AssertCorrectInformation(
country,
EXPECTEDID,
GUADELOUPE_COUNTRY_NAME,
GUADELOUPE_OFFICIAL_NAME,
GUADELOUPE_NATIVE_NAME,
GUADELOUPE_CAPITAL,
GUADELOUPE_NUMERIC_CODE,
GUADELOUPE_ISO2_CODE,
GUADELOUPE_ISO3_CODE,
GUADELOUPE_CALLING_CODE,
EXPECTED_STATES
);
}
}
}
46 changes: 46 additions & 0 deletions src/World.Net.UnitTests/Countries/GuamTest.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace World.Net.UnitTests.Countries
{
public sealed class GuamTest : AssertCountryTestBase
{
private const string GUAM_COUNTRY_NAME = "Guam";
private const string GUAM_NATIVE_NAME = "Guam";
private const string GUAM_CAPITAL = "Hagåtña";
private const string GUAM_OFFICIAL_NAME = "Guam";
private const string GUAM_ISO2_CODE = "GU";
private const string GUAM_ISO3_CODE = "GUM";
private const int GUAM_NUMERIC_CODE = 316;
private readonly string[] GUAM_CALLING_CODE = ["+1-671"];
private const CountryIdentifier EXPECTEDID = CountryIdentifier.Guam;

private static readonly (string Name, string IsoCode, string Type)[] EXPECTED_STATES = [];

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

// Assert
AssertCorrectInformation(
country,
EXPECTEDID,
GUAM_COUNTRY_NAME,
GUAM_OFFICIAL_NAME,
GUAM_NATIVE_NAME,
GUAM_CAPITAL,
GUAM_NUMERIC_CODE,
GUAM_ISO2_CODE,
GUAM_ISO3_CODE,
GUAM_CALLING_CODE,
EXPECTED_STATES
);
}
}
}
63 changes: 63 additions & 0 deletions src/World.Net.UnitTests/Countries/GuatemalaTest.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
namespace World.Net.UnitTests.Countries;

public sealed class GuatemalaTest : AssertCountryTestBase
{
private const string GUATEMALA_COUNTRY_NAME = "Guatemala";
private const string GUATEMALA_NATIVE_NAME = "Guatemala";
private const string GUATEMALA_CAPITAL = "Guatemala City";
private const string GUATEMALA_OFFICIAL_NAME = "Republic of Guatemala";
private const string GUATEMALA_ISO2_CODE = "GT";
private const string GUATEMALA_ISO3_CODE = "GTM";
private const int GUATEMALA_NUMERIC_CODE = 320;
private readonly string[] GUATEMALA_CALLING_CODE = ["+502"];
private const CountryIdentifier EXPECTEDID = CountryIdentifier.Guatemala;

private static readonly (string Name, string IsoCode, string Type)[] EXPECTED_STATES =
[
new("Alta Verapaz", "GT-AV", "Department"),
new("Baja Verapaz", "GT-BV", "Department"),
new("Chimaltenango", "GT-CM", "Department"),
new("Chiquimula", "GT-CQ", "Department"),
new("El Progreso", "GT-PR", "Department"),
new("Escuintla", "GT-ES", "Department"),
new("Guatemala", "GT-GU", "Department"),
new("Huehuetenango", "GT-HU", "Department"),
new("Izabal", "GT-IZ", "Department"),
new("Jalapa", "GT-JA", "Department"),
new("Jutiapa", "GT-JU", "Department"),
new("Petén", "GT-PE", "Department"),
new("Quetzaltenango", "GT-QZ", "Department"),
new("Quiché", "GT-QC", "Department"),
new("Retalhuleu", "GT-RE", "Department"),
new("Sacatepéquez", "GT-SA", "Department"),
new("San Marcos", "GT-SM", "Department"),
new("Santa Rosa", "GT-SR", "Department"),
new("Sololá", "GT-SO", "Department"),
new("Suchitepéquez", "GT-SU", "Department"),
new("Totonicapán", "GT-TO", "Department"),
new("Zacapa", "GT-ZA", "Department")
];

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

// Assert
AssertCorrectInformation(
country,
EXPECTEDID,
GUATEMALA_COUNTRY_NAME,
GUATEMALA_OFFICIAL_NAME,
GUATEMALA_NATIVE_NAME,
GUATEMALA_CAPITAL,
GUATEMALA_NUMERIC_CODE,
GUATEMALA_ISO2_CODE,
GUATEMALA_ISO3_CODE,
GUATEMALA_CALLING_CODE,
EXPECTED_STATES
);
}
}
39 changes: 39 additions & 0 deletions src/World.Net.UnitTests/Countries/GuernseyTest.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
namespace World.Net.UnitTests.Countries;

public sealed class GuernseyTest : AssertCountryTestBase
{
private const string GUERNSEY_COUNTRY_NAME = "Guernsey";
private const string GUERNSEY_NATIVE_NAME = "Guernsey";
private const string GUERNSEY_CAPITAL = "St. Peter Port";
private const string GUERNSEY_OFFICIAL_NAME = "Guernsey";
private const string GUERNSEY_ISO2_CODE = "GG";
private const string GUERNSEY_ISO3_CODE = "GGY";
private const int GUERNSEY_NUMERIC_CODE = 831;
private readonly string[] GUERNSEY_CALLING_CODE = ["+44-1481"];
private const CountryIdentifier EXPECTEDID = CountryIdentifier.GuernseyAndAlderney;

private static readonly (string Name, string IsoCode, string Type)[] EXPECTED_STATES = [];

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

// Assert
AssertCorrectInformation(
country,
EXPECTEDID,
GUERNSEY_COUNTRY_NAME,
GUERNSEY_OFFICIAL_NAME,
GUERNSEY_NATIVE_NAME,
GUERNSEY_CAPITAL,
GUERNSEY_NUMERIC_CODE,
GUERNSEY_ISO2_CODE,
GUERNSEY_ISO3_CODE,
GUERNSEY_CALLING_CODE,
EXPECTED_STATES
);
}
}
49 changes: 49 additions & 0 deletions src/World.Net.UnitTests/Countries/GuineaTest.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
namespace World.Net.UnitTests.Countries;

public sealed class GuineaTest : AssertCountryTestBase
{
private const string GUINEA_COUNTRY_NAME = "Guinea";
private const string GUINEA_NATIVE_NAME = "Guinée";
private const string GUINEA_CAPITAL = "Conakry";
private const string GUINEA_OFFICIAL_NAME = "Republic of Guinea";
private const string GUINEA_ISO2_CODE = "GN";
private const string GUINEA_ISO3_CODE = "GIN";
private const int GUINEA_NUMERIC_CODE = 324;
private readonly string[] GUINEA_CALLING_CODE = ["+224"];
private const CountryIdentifier EXPECTEDID = CountryIdentifier.Guinea;

private static readonly (string Name, string IsoCode, string Type)[] EXPECTED_STATES =
[
new("Boké", "GN-B", "Region"),
new("Conakry", "GN-C", "Region"),
new("Faranah", "GN-F", "Region"),
new("Kankan", "GN-K", "Region"),
new("Kindia", "GN-D", "Region"),
new("Labé", "GN-L", "Region"),
new("Mamou", "GN-M", "Region"),
new("Nzérékoré", "GN-N", "Region")
];

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

// Assert
AssertCorrectInformation(
country,
EXPECTEDID,
GUINEA_COUNTRY_NAME,
GUINEA_OFFICIAL_NAME,
GUINEA_NATIVE_NAME,
GUINEA_CAPITAL,
GUINEA_NUMERIC_CODE,
GUINEA_ISO2_CODE,
GUINEA_ISO3_CODE,
GUINEA_CALLING_CODE,
EXPECTED_STATES
);
}
}
43 changes: 43 additions & 0 deletions src/World.Net/Countries/Grenada.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
namespace World.Net.Countries;

internal sealed class Grenada : ICountry
{
//<inheritdoc/>
public CountryIdentifier Id => CountryIdentifier.Grenada;

//<inheritdoc/>
public string Name { get; } = "Grenada";

//<inheritdoc/>
public string OfficialName { get; } = "Grenada";

//<inheritdoc/>
public string NativeName => "Grenada";

//<inheritdoc/>
public string Capital { get; } = "St. George's";

//<inheritdoc/>
public int NumericCode { get; } = 308;

//<inheritdoc/>
public string ISO2Code { get; } = "GD";

//<inheritdoc/>
public string ISO3Code { get; } = "GRD";

//<inheritdoc/>
public string[] CallingCode { get; } = ["+1-473"];

//<inheritdoc/>
public IEnumerable<State> States =>
[
new("Saint Andrew", "GD-01", "Parish"),
new("Saint David", "GD-02", "Parish"),
new("Saint George", "GD-03", "Parish"),
new("Saint John", "GD-04", "Parish"),
new("Saint Mark", "GD-05", "Parish"),
new("Saint Patrick", "GD-06", "Parish"),
new("Carriacou and Petite Martinique", "GD-10", "Dependency")
];
}
34 changes: 34 additions & 0 deletions src/World.Net/Countries/Guadeloupe.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
namespace World.Net.Countries;

internal sealed class Guadeloupe : ICountry
{
//<inheritdoc/>
public CountryIdentifier Id => CountryIdentifier.Guadeloupe;

//<inheritdoc/>
public string Name { get; } = "Guadeloupe";

//<inheritdoc/>
public string OfficialName { get; } = "Guadeloupe";

//<inheritdoc/>
public string NativeName => "Guadeloupe";

//<inheritdoc/>
public string Capital { get; } = "Basse-Terre";

//<inheritdoc/>
public int NumericCode { get; } = 312;

//<inheritdoc/>
public string ISO2Code { get; } = "GP";

//<inheritdoc/>
public string ISO3Code { get; } = "GLP";

//<inheritdoc/>
public string[] CallingCode { get; } = ["+590"];

//<inheritdoc/>
public IEnumerable<State> States => [];
}
Loading