Exemple #1
0
        public void TestSampleConfiguration()
        {
            const string xml = @"
                <cfg>
                    <fields>
                        <add name='left' t='left(1)' />
                        <add name='right' t='right(2)' />
                        <add name='padleft' t='padleft(10,0)' />
                        <add name='padright' t='copy(x,y).padright(10).left(10).balls()' />
                        <add name='in' t='copy().in(1,2)' />
                    </fields>
                </cfg>
            ";

            var sh     = new ShorthandRoot(@"shorthand.xml", new FileReader());
            var sample = new ShTestCfg(xml, new ShorthandCustomizer(sh, new[] { "fields" }, "t", "transforms", "method"));

            foreach (var error in sample.Errors())
            {
                Console.WriteLine(error);
            }

            Assert.AreEqual(0, sample.Errors().Count());
            Assert.AreEqual(1, sample.Warnings().Count());
            Assert.AreEqual(5, sample.Fields.Count());
            Assert.AreEqual("left(1)", sample.Fields[0].T);
            Assert.AreEqual(1, sample.Fields[0].Transforms.Count);

            var left = sample.Fields[0].Transforms.First();

            Assert.AreEqual("left", left.Method);
            Assert.AreEqual(1, left.Length);

            Assert.AreEqual(2, sample.Fields[3].Transforms.Count);

            var first = sample.Fields[3].Transforms.First();

            Assert.AreEqual("padright", first.Method);
            Assert.AreEqual(10, first.TotalWidth);
            Assert.AreEqual("0", first.PaddingChar);

            var last = sample.Fields[3].Transforms.Last();

            Assert.AreEqual("left", last.Method);
            Assert.AreEqual(10, last.Length);

            Assert.AreEqual("in", sample.Fields[4].Transforms.First().Method);
            Assert.AreEqual("1,2", sample.Fields[4].Transforms.First().Domain);
        }
Exemple #2
0
        public void TestSampleConfiguration() {
            const string xml = @"
                <cfg>
                    <fields>
                        <add name='left' t='left(1)' />
                        <add name='right' t='right(2)' />
                        <add name='padleft' t='padleft(10,0)' />
                        <add name='padright' t='copy(x,y).padright(10).left(10).balls()' />
                    </fields>
                </cfg>
            ";

            var sample = new ShTestCfg(xml, File.ReadAllText(@"shorthand.xml"));

            foreach (var error in sample.Errors()) {
                Console.WriteLine(error);
            }

            Assert.AreEqual(0, sample.Errors().Count());
            Assert.AreEqual(1, sample.Warnings().Count());
            Assert.AreEqual(4, sample.Fields.Count());
            Assert.AreEqual("left(1)", sample.Fields[0].T);
            Assert.AreEqual(1, sample.Fields[0].Transforms.Count);

            var left = sample.Fields[0].Transforms.First();
            Assert.AreEqual("left", left.Method);
            Assert.AreEqual(1, left.Length);

            Assert.AreEqual(2, sample.Fields[3].Transforms.Count);

            var first = sample.Fields[3].Transforms.First();
            Assert.AreEqual("padright", first.Method);
            Assert.AreEqual(10, first.TotalWidth);
            Assert.AreEqual("0", first.PaddingChar);

            var last = sample.Fields[3].Transforms.Last();
            Assert.AreEqual("left", last.Method);
            Assert.AreEqual(10, last.Length);
        }