예제 #1
0
    public void PatternMask_Placeholder()
    {
        var mask = new PatternMask("(+00) 000 0000")
        {
            Placeholder = '_'
        };

        mask.ToString().Should().Be("|");
        mask.Text.Should().BeNullOrEmpty();
        mask.Insert("x");
        mask.ToString().Should().Be("|");
        mask.Text.Should().Be("");
        mask.Clear();
        mask.Text.Should().BeNullOrEmpty();
        mask.ToString().Should().Be("|");
        mask.Insert("43");
        mask.Text.Should().Be("(+43) ___ ____");
        mask.ToString().Should().Be("(+43) |___ ____");
        mask.Insert("abc123");
        mask.ToString().Should().Be("(+43) 123 |____");
        mask.Insert("5678901234");
        mask.ToString().Should().Be("(+43) 123 5678|");
        // del key
        mask.Delete();
        mask.ToString().Should().Be("(+43) 123 5678|");
        mask.CaretPos = 0;
        mask.ToString().Should().Be("|(+43) 123 5678");
        mask.Delete();
        mask.ToString().Should().Be("(+|31) 235 678_");
        mask.Delete();
        mask.ToString().Should().Be("(+|12) 356 78__");
        mask.Insert("430");
        mask.ToString().Should().Be("(+43) 0|12 3567");
    }
예제 #2
0
    public void PatternMask_Insert()
    {
        var mask = new PatternMask("(aa) 00-0");

        mask.ToString().Should().Be("|");
        mask.Insert("?");
        mask.ToString().Should().Be("|");
        mask.Insert("ab123");
        mask.Text.Should().Be("(ab) 12-3");
        mask.ToString().Should().Be("(ab) 12-3|");
        mask.CaretPos = 2;
        mask.ToString().Should().Be("(a|b) 12-3");
        mask.Insert("x");
        mask.ToString().Should().Be("(ax) |12-3");
        mask.Text.Should().Be("(ax) 12-3");
        mask.Insert("9");
        mask.ToString().Should().Be("(ax) 9|1-2");
        mask.Text.Should().Be("(ax) 91-2");
        mask.Insert("99");
        mask.ToString().Should().Be("(ax) 99-9|");
        mask.Text.Should().Be("(ax) 99-9");
        mask.Insert("xyz1234");
        mask.ToString().Should().Be("(ax) 99-9|");
        mask.Text.Should().Be("(ax) 99-9");
        mask.Clear();
        mask.ToString().Should().Be("|");
        mask.Text.Should().Be("");
        mask.Insert("1");
        mask.ToString().Should().Be("|");
        mask.Text.Should().Be("");
        mask.Insert("x");
        mask.ToString().Should().Be("(x|");
        mask.Text.Should().Be("(x");
        mask.Insert("y");
        mask.ToString().Should().Be("(xy) |");
        mask.Text.Should().Be("(xy) ");
        mask.Insert("z");
        mask.ToString().Should().Be("(xy) |");
        mask.Text.Should().Be("(xy) ");
        // paste
        mask.Clear();
        mask.Insert("(XX) 99-9");
        mask.ToString().Should().Be("(XX) 99-9|");
    }
예제 #3
0
    public void PatternMask_CleaningPlaceholder()
    {
        var mask = new PatternMask("(+00) 000 0000")
        {
            Placeholder = '_'
        };

        mask.Insert("x");
        mask.ToString().Should().Be("|");
        mask.Text.Should().Be("");
        mask.GetCleanText().Should().Be("");
        mask.Insert("123456789");
        mask.Text.Should().Be("(+12) 345 6789");
        mask.GetCleanText().Should().Be("(+12) 345 6789");
        mask.Clear();
        mask.CleanDelimiters = true;
        mask.GetCleanText().Should().Be("");
        mask.Insert("123456789");
        mask.Text.Should().Be("(+12) 345 6789");
        mask.GetCleanText().Should().Be("123456789");
    }