public void VersionSplitterEMail()
        {
            string   value    = "*****@*****.**";
            Splitter splitter = VersionSplitter.GetInstance();

            splitter.GetSingleSplit(value, 1).Should().Be("*****@*****.**");
            splitter.GetSingleSplit(value, 2).Should().BeNull();

            splitter.GetFirstSplits(value, 1).Should().Be("*****@*****.**");
            splitter.GetFirstSplits(value, 2).Should().BeNull();
        }
        public void VersionSplitterOne()
        {
            string   value    = "123";
            Splitter splitter = VersionSplitter.GetInstance();

            splitter.GetSingleSplit(value, -5).Should().BeNull();
            splitter.GetSingleSplit(value, -1).Should().BeNull();
            splitter.GetSingleSplit(value, 0).Should().BeNull();
            splitter.GetSingleSplit(value, 1).Should().Be("123");
            splitter.GetSingleSplit(value, 2).Should().BeNull();

            splitter.GetFirstSplits(value, -5).Should().BeNull();
            splitter.GetFirstSplits(value, -1).Should().BeNull();
            splitter.GetFirstSplits(value, 0).Should().BeNull();
            splitter.GetFirstSplits(value, 1).Should().Be("123");
            splitter.GetFirstSplits(value, 2).Should().BeNull();
        }
        public void WordSplitterOne()
        {
            string   value    = "word";
            Splitter splitter = WordSplitter.GetInstance();

            splitter.GetSingleSplit(value, -5).Should().BeNull();
            splitter.GetSingleSplit(value, -1).Should().BeNull();
            splitter.GetSingleSplit(value, 0).Should().BeNull();
            splitter.GetSingleSplit(value, 1).Should().Be("word");
            splitter.GetSingleSplit(value, 2).Should().BeNull();

            splitter.GetFirstSplits(value, -5).Should().BeNull();
            splitter.GetFirstSplits(value, -1).Should().BeNull();
            splitter.GetFirstSplits(value, 0).Should().BeNull();
            splitter.GetFirstSplits(value, 1).Should().Be("word");
            splitter.GetFirstSplits(value, 2).Should().BeNull();
        }
        public void WordSplitterTest()
        {
            string   value    = "one two/3 four-4 five(some more)";
            Splitter splitter = WordSplitter.GetInstance();

            splitter.GetSingleSplit(value, 0).Should().BeNull();
            splitter.GetSingleSplit(value, 1).Should().Be("one");
            splitter.GetSingleSplit(value, 2).Should().Be("two");
            splitter.GetSingleSplit(value, 3).Should().Be("3");
            splitter.GetSingleSplit(value, 4).Should().Be("four");
            splitter.GetSingleSplit(value, 5).Should().Be("4");
            splitter.GetSingleSplit(value, 6).Should().Be("five");
            splitter.GetSingleSplit(value, 7).Should().BeNull();

            splitter.GetFirstSplits(value, 0).Should().BeNull();
            splitter.GetFirstSplits(value, 1).Should().Be("one");
            splitter.GetFirstSplits(value, 2).Should().Be("one two");
            splitter.GetFirstSplits(value, 3).Should().Be("one two/3");
            splitter.GetFirstSplits(value, 4).Should().Be("one two/3 four");
            splitter.GetFirstSplits(value, 5).Should().Be("one two/3 four-4");
            splitter.GetFirstSplits(value, 6).Should().Be("one two/3 four-4 five");
            splitter.GetFirstSplits(value, 7).Should().BeNull();
        }
        public void VersionSplitterDOT()
        {
            string   value    = "1.2.3";
            Splitter splitter = VersionSplitter.GetInstance();

            splitter.GetSingleSplit(value, -1).Should().BeNull();
            splitter.GetSingleSplit(value, 0).Should().BeNull();
            splitter.GetSingleSplit(value, 1).Should().Be("1");
            splitter.GetSingleSplit(value, 2).Should().Be("2");
            splitter.GetSingleSplit(value, 3).Should().Be("3");
            splitter.GetSingleSplit(value, 4).Should().BeNull();

            splitter.GetFirstSplits(value, -1).Should().BeNull();
            splitter.GetFirstSplits(value, 0).Should().BeNull();
            splitter.GetFirstSplits(value, 1).Should().Be("1");
            splitter.GetFirstSplits(value, 2).Should().Be("1.2");
            splitter.GetFirstSplits(value, 3).Should().Be("1.2.3");
            splitter.GetFirstSplits(value, 4).Should().BeNull();
        }