public void PatternMask_Backspace() { var mask = new PatternMask("(+00) 000 0000"); // no placeholder mask.ToString().Should().Be("|"); mask.Insert("43abc1235678901234"); mask.ToString().Should().Be("(+43) 123 5678|"); // Backspace key mask.Backspace(); mask.ToString().Should().Be("(+43) 123 567|"); mask.CaretPos = 0; mask.ToString().Should().Be("|(+43) 123 567"); mask.Backspace(); mask.ToString().Should().Be("|(+43) 123 567"); mask.CaretPos = 6; mask.ToString().Should().Be("(+43) |123 567"); mask.Backspace(); mask.ToString().Should().Be("(+4|1) 235 67"); mask.Backspace(); mask.ToString().Should().Be("(+|12) 356 7"); mask.Backspace(); mask.ToString().Should().Be("|(+12) 356 7"); mask.Insert("4309"); mask.ToString().Should().Be("(+43) 09|1 2356"); }
public void PatternMask_Selection() { var mask = new PatternMask("(+00) 000 0000"); // no placeholder mask.ToString().Should().Be("|"); mask.Insert("43abc1235678901234"); mask.ToString().Should().Be("(+43) 123 5678|"); // set selection mask.Selection = (-1, 111); mask.ToString().Should().Be("[(+43) 123 5678]"); mask.CaretPos = 0; mask.Selection = (1, 1); mask.ToString().Should().Be("(|+43) 123 5678"); mask.Selection = (3, 11); mask.ToString().Should().Be("(+4[3) 123 5]678"); // input with selection mask.Insert("9"); mask.ToString().Should().Be("(+49) |678 "); mask.Selection = (0, 6); mask.ToString().Should().Be("[(+49) ]678 "); mask.Insert("01"); mask.ToString().Should().Be("(+01) |678 "); // del with selection mask.Selection = (0, 6); mask.ToString().Should().Be("[(+01) ]678 "); mask.Delete(); mask.ToString().Should().Be("|(+67) 8"); // backspace with selection mask.Selection = (0, 6); mask.ToString().Should().Be("[(+67) ]8"); mask.Backspace(); mask.ToString().Should().Be("|(+8"); mask = new PatternMask("00 00") { Placeholder = '_' }; mask.Insert("1234"); mask.ToString().Should().Be("12 34|"); mask.Backspace(); mask.ToString().Should().Be("12 3|_"); mask.Selection = (0, 2); mask.ToString().Should().Be("[12] 3_"); mask.Backspace(); mask.ToString().Should().Be("|3_ __"); }
public void PatternMask_ChangeMaskChars() { var mask = new PatternMask("(bb+) 999-bb") { MaskChars = new MaskChar[] { MaskChar.Letter('b'), MaskChar.Digit('9'), MaskChar.LetterOrDigit('+'), }, }; mask.Insert("xyz"); mask.ToString().Should().Be("(xyz) |"); mask.Backspace(); mask.ToString().Should().Be("(xy|"); mask.Insert("1234"); mask.ToString().Should().Be("(xy1) 234-|"); }