public void ShouldCanReplaceDefaultImplementationOfCurrentMapper()
        {
            // Arrange
            var diacriticsMapperMock = new Mock <IDiacriticsMapper>();

            // Act
            StaticDiacritics.SetDefaultMapper(() => diacriticsMapperMock.Object);
            var diacriticsMapper = StaticDiacritics.Current;

            // Assert
            diacriticsMapper.Should().BeSameAs(diacriticsMapperMock.Object);
        }
        public void ShouldCallRemoveDiacriticsOnCustomMapperWhenCallRemoveDiacritics()
        {
            // Arrange
            const string expectedValue        = "it s work";
            const string value                = "ÉÖüä$üàè";
            var          diacriticsMapperMock = new Mock <IDiacriticsMapper>();

            diacriticsMapperMock.Setup(mapper => mapper.RemoveDiacritics(value))
            .Returns(expectedValue);
            StaticDiacritics.SetDefaultMapper(() => diacriticsMapperMock.Object);

            // Act
            var actual = value.RemoveDiacritics();

            // Assert
            actual.Should().Be(expectedValue);
        }
 public void Dispose()
 {
     StaticDiacritics.SetDefaultMapper(() => new DefaultDiacriticsMapper());
 }