コード例 #1
0
        public static void Main(string[] args)
        {
            if (args.Length == 0 || !IsFileNameValid(args[0]))
            {
                throw new ArgumentException($"не правильный путь в качестве 1 аргумента");
            }

            var path = args[0];
            var str  = ReadFile(path);

            var parser         = new Parser();
            var singleEmphasis = new SingleEmphasis();
            var doubleEmphasis = new DoubleEmphasis();

            doubleEmphasis.RegisterNested(singleEmphasis);
            parser.Register(singleEmphasis);
            parser.Register(doubleEmphasis);

            var transducer = new Transducer.Transducer();
            var converterSingleEmphasis = new ConverterSingleEmphasis();
            var converterDoubleEmphasis = new ConverterDoubleEmphasis();

            converterSingleEmphasis.RegisterNested(new DoubleEmphasisToken("", 0, new IToken[0]), converterDoubleEmphasis);
            converterDoubleEmphasis.RegisterNested(new SingleEmphasisToken("", 0, new IToken[0]), converterSingleEmphasis);
            transducer.Registred(new SingleEmphasisToken("", 0, new IToken[0]), converterSingleEmphasis);
            transducer.Registred(new DoubleEmphasisToken("", 0, new IToken[0]), converterDoubleEmphasis);

            WriteFile(Path.Combine(Path.GetDirectoryName(path), "output.txt"), transducer.MakeHtmlString(str, parser.Tokenize(str)));
        }
コード例 #2
0
        public void SetUpFixture()
        {
            parser = new Parser();
            var singleEmphasis = new SingleEmphasis();
            var doubleEmphasis = new DoubleEmphasis();

            doubleEmphasis.RegisterNested(singleEmphasis);
            parser.Register(singleEmphasis);
            parser.Register(doubleEmphasis);
        }
コード例 #3
0
        public void MakeConverter_ReturnToken(string str, int startIndex, IToken result)
        {
            var doubleEmphasis = new DoubleEmphasis();

            doubleEmphasis.SelectTokenInString(str, startIndex).Should().Be(result);
        }
コード例 #4
0
        public void MakeConverter_ReturnNull(string str, int startIndex)
        {
            var doubleEmphasis = new DoubleEmphasis();

            doubleEmphasis.SelectTokenInString(str, startIndex).Should().BeNull();
        }