36 lines
1.3 KiB
C#
36 lines
1.3 KiB
C#
using Omika.App.Local.Infrastructure;
|
|
|
|
namespace Omika.Tests.Mobile.Local;
|
|
|
|
/// <summary>
|
|
/// Tests de la construction d'URI Apple Maps (https://maps.apple.com) utilisée
|
|
/// par le launcher iOS. L'adresse est encodée en UTF-8, jamais modifiée ; aucune
|
|
/// coordonnée n'est inventée ; aucune dépendance à Google Maps.
|
|
/// </summary>
|
|
public class AppleMapsUriTests
|
|
{
|
|
[Fact]
|
|
public void Build_AdresseSimple_EncodageCorrect()
|
|
=> Assert.Equal(
|
|
"https://maps.apple.com/?q=12%20rue%20de%20la%20Paix%2075002%20Paris",
|
|
AppleMapsUri.Build("12 rue de la Paix 75002 Paris"));
|
|
|
|
[Fact]
|
|
public void Build_Espaces_Encodes()
|
|
=> Assert.Equal("https://maps.apple.com/?q=A%20B%20C", AppleMapsUri.Build("A B C"));
|
|
|
|
[Fact]
|
|
public void Build_AccentsEtApostrophe_Encodes()
|
|
=> Assert.Equal(
|
|
"https://maps.apple.com/?q=Rue%20de%20l%27%C3%89glise",
|
|
AppleMapsUri.Build("Rue de l'Église"));
|
|
|
|
[Fact]
|
|
public void Build_AdresseVide_UriSansRequete()
|
|
=> Assert.Equal("https://maps.apple.com/?q=", AppleMapsUri.Build(string.Empty));
|
|
|
|
[Fact]
|
|
public void Build_NutiliseJamaisGoogleMaps()
|
|
=> Assert.DoesNotContain("google", AppleMapsUri.Build("12 rue de la Paix"), StringComparison.OrdinalIgnoreCase);
|
|
}
|