Add more tests

This commit is contained in:
2023-04-27 16:10:29 +02:00
parent 50d0de57f5
commit 26ec59507d
2 changed files with 75 additions and 10 deletions

View File

@ -145,7 +145,7 @@ namespace Elwig.Helpers {
input.CaretIndex = pos;
if (text.Length == 0) {
return required ? new(false, "E-Mail_Adresse ist nicht optional") : new(true, null);
return required ? new(false, "E-Mail-Adresse ist nicht optional") : new(true, null);
} else if (text[0] == '@' || !domain) {
return new(false, "E-Mail-Adresse ungültig");
}

View File

@ -6,7 +6,7 @@ namespace Tests {
[Apartment(ApartmentState.STA)]
public class HelpersValidatorTest {
private static TextBox CreateTextBox(string value, int caret = 0) {
private static TextBox TB(string value, int caret = 0) {
return new() {
Text = value,
CaretIndex = caret,
@ -16,18 +16,18 @@ namespace Tests {
[Test]
public void Test_CheckInteger_Simple() {
Assert.Multiple(() => {
Assert.That(Validator.CheckInteger(CreateTextBox(""), true).IsValid, Is.False);
Assert.That(Validator.CheckInteger(CreateTextBox(""), false).IsValid, Is.True);
Assert.That(Validator.CheckInteger(CreateTextBox("123"), true).IsValid, Is.True);
Assert.That(Validator.CheckInteger(CreateTextBox("456"), false).IsValid, Is.True);
Assert.That(Validator.CheckInteger(CreateTextBox("1234"), false, 4).IsValid, Is.True);
Assert.That(Validator.CheckInteger(CreateTextBox("4567"), false, 3).IsValid, Is.True);
Assert.That(Validator.CheckInteger(TB(""), true).IsValid, Is.False);
Assert.That(Validator.CheckInteger(TB(""), false).IsValid, Is.True);
Assert.That(Validator.CheckInteger(TB("123"), true).IsValid, Is.True);
Assert.That(Validator.CheckInteger(TB("456"), false).IsValid, Is.True);
Assert.That(Validator.CheckInteger(TB("1234"), false, 4).IsValid, Is.True);
Assert.That(Validator.CheckInteger(TB("4567"), false, 3).IsValid, Is.True);
});
}
[Test]
public void Test_CheckInteger_Caret() {
var tb = CreateTextBox("1a2b3c", 2);
var tb = TB("1a2b3c", 2);
Assert.Multiple(() => {
Assert.That(Validator.CheckInteger(tb, true).IsValid, Is.True);
Assert.That(tb.Text, Is.EqualTo("123"));
@ -37,12 +37,77 @@ namespace Tests {
[Test]
public void Test_CheckInteger_MaxLen() {
var tb = CreateTextBox("1a2b3c4d5e", 4);
var tb = TB("1a2b3c4d5e", 4);
Assert.Multiple(() => {
Assert.That(Validator.CheckInteger(tb, true, 3).IsValid, Is.True);
Assert.That(tb.Text, Is.EqualTo("123"));
Assert.That(tb.CaretIndex, Is.EqualTo(2));
});
}
[Test]
public void Test_CheckPhoneNumber_Simple() {
Assert.Multiple(() => {
Assert.That(Validator.CheckPhoneNumber(TB(""), true).IsValid, Is.False);
Assert.That(Validator.CheckPhoneNumber(TB("+43"), false).IsValid, Is.False);
Assert.That(Validator.CheckPhoneNumber(TB("066412345678"), true).IsValid, Is.True);
Assert.That(Validator.CheckPhoneNumber(TB("0ab66412cd345678"), true).IsValid, Is.True);
});
}
[Test]
public void Test_CheckPhoneNumber_Format_1() {
var tb = TB("066412345678", 5);
Assert.Multiple(() => {
Assert.That(Validator.CheckPhoneNumber(tb, true).IsValid, Is.True);
Assert.That(tb.Text, Is.EqualTo("+43 664 12345678"));
Assert.That(tb.CaretIndex, Is.EqualTo(9));
});
}
[Test]
public void Test_CheckPhoneNumber_Format_2() {
var tb = TB("0a2574b1c2d34..", 7);
Assert.Multiple(() => {
Assert.That(Validator.CheckPhoneNumber(tb, true).IsValid, Is.True);
Assert.That(tb.Text, Is.EqualTo("+43 2574 1234"));
Assert.That(tb.CaretIndex, Is.EqualTo(8));
});
}
[Test]
public void Test_CheckEmailAddress_Simple() {
Assert.Multiple(() => {
Assert.That(Validator.CheckEmailAddress(TB(""), true).IsValid, Is.False);
Assert.That(Validator.CheckEmailAddress(TB("name"), false).IsValid, Is.False);
Assert.That(Validator.CheckEmailAddress(TB("@"), false).IsValid, Is.False);
Assert.That(Validator.CheckEmailAddress(TB("@test.com"), false).IsValid, Is.False);
Assert.That(Validator.CheckEmailAddress(TB("name@a"), true).IsValid, Is.False);
Assert.That(Validator.CheckEmailAddress(TB("name@a.com."), true).IsValid, Is.False);
Assert.That(Validator.CheckEmailAddress(TB("name@a.com.a"), true).IsValid, Is.False);
Assert.That(Validator.CheckEmailAddress(TB("name@a.com"), true).IsValid, Is.True);
Assert.That(Validator.CheckEmailAddress(TB("my.name@hello#.com"), true).IsValid, Is.True);
});
}
[Test]
public void Test_CheckEmailAddress_Format_1() {
var tb = TB("my . name . is @heinz#.com", 17);
Assert.Multiple(() => {
Assert.That(Validator.CheckEmailAddress(tb, true).IsValid, Is.True);
Assert.That(tb.Text, Is.EqualTo("my.name.is@heinz.com"));
Assert.That(tb.CaretIndex, Is.EqualTo(12));
});
}
[Test]
public void Test_CheckEmailAddress_Format_2() {
var tb = TB("sabine.müsterfrau@heinz#.com.b", 30);
Assert.Multiple(() => {
Assert.That(Validator.CheckEmailAddress(tb, true).IsValid, Is.False);
Assert.That(tb.Text, Is.EqualTo("sabine.müsterfrau@heinz.com.b"));
Assert.That(tb.CaretIndex, Is.EqualTo(29));
});
}
}
}