blob: 3ff60cb72021c9d2176ca67ee6b7f0751fd2189f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
namespace Cepis.Tests;
/// <summary>Local validation, which happens before any request.</summary>
public sealed class NormalizeTests
{
[Theory]
[InlineData("01001000", "01001000")]
[InlineData("01001-000", "01001000")]
[InlineData(" 01001-000 ", "01001000")]
[InlineData("01.001-000", "01001000")]
[InlineData("01 001 000", "01001000")]
public void AcceptsTheMask(string input, string expected) =>
Assert.Equal(expected, CepisClient.NormalizeCep(input));
[Theory]
[InlineData("")]
[InlineData("0100100")]
[InlineData("010010000")]
[InlineData("0100100a")]
[InlineData("abcdefgh")]
[InlineData("01001-00")]
public void RejectsAnythingElse(string input) =>
Assert.Throws<InvalidCepException>(() => CepisClient.NormalizeCep(input));
[Fact]
public void RejectsNull() =>
Assert.Throws<InvalidCepException>(() => CepisClient.NormalizeCep(null!));
[Fact]
public void TheMessageCarriesWhatWasGiven()
{
var failure = Assert.Throws<InvalidCepException>(() => CepisClient.NormalizeCep("123"));
Assert.Contains("123", failure.Message, StringComparison.Ordinal);
}
}
|