コード例 #1
0
ファイル: TextTest.cs プロジェクト: CourageAndrey/AI
        public void AllDecoratorsReturnParametersOfDecorated(ITextDecorator decorator)
        {
            // arrange & act
            var decorated = decorator.GetParameters();
            var original  = decorator.InnerText.GetParameters();

            // assert
            Assert.IsTrue(decorated.SequenceEqual(original));
        }
コード例 #2
0
ファイル: TextTest.cs プロジェクト: CourageAndrey/AI
        public void AllDecoratorsContainTextOfDecorated(ITextDecorator decorator)
        {
            // arrange & act
            string decorated = TextRepresenters.PlainString.RepresentText(decorator, Language.Default).ToString();
            string original  = TextRepresenters.PlainString.RepresentText(decorator.InnerText, Language.Default).ToString();

            // assert
            Assert.IsTrue(decorated.Contains(original));
            Assert.Greater(decorated.Length, original.Length);
        }
コード例 #3
0
        private StringBuilder representDecorator(
            ITextDecorator decorator,
            ILanguage language,
            String wrappingSymbol)
        {
            var result = new StringBuilder(wrappingSymbol);

            result.Append(this.Represent(decorator.InnerText, language));
            result.Append(wrappingSymbol);
            return(result);
        }
コード例 #4
0
        private StringBuilder representDecorator(
            ITextDecorator decorator,
            ILanguage language,
            String beforeTag,
            String afterTag)
        {
            var result = new StringBuilder(beforeTag);

            result.Append(this.Represent(decorator.InnerText, language));
            result.Append(afterTag);
            return(result);
        }
コード例 #5
0
 public ConditionalTextDecorator(Func <bool> condition, ITextDecorator innerTextDecorator)
 {
     _condition          = condition;
     _innerTextDecorator = innerTextDecorator;
 }