public void ShouldReturnOnlyOneContextWithTheSecondNested()
        {
            ForEachTableDatabaseContextHandler forEachTableDatabaseContextHandler = new ForEachTableDatabaseContextHandler(templateHandlerNew);
            TableNameTableContextHandler       tableNameTableContextHandler       = new TableNameTableContextHandler(templateHandlerNew);
            var results = _tested.ExtractAllContextUntilDepth($"{forEachTableDatabaseContextHandler.StartContext}{tableNameTableContextHandler.StartContext}{tableNameTableContextHandler.EndContext}{forEachTableDatabaseContextHandler.EndContext}", 1);

            Assert.IsNotNull(results);
            var resultAsList = results.ToList();

            CollectionAssert.IsNotEmpty(resultAsList);
            Assert.AreEqual(1, resultAsList.Count);
            var first = resultAsList[0];

            Assert.IsNotNull(first.current);
            Assert.IsNotNull(first.childs);
            CollectionAssert.IsNotEmpty(first.childs);
            Assert.AreEqual(first.current.StartContextDelimiter, forEachTableDatabaseContextHandler.StartContext);
            Assert.AreEqual(first.current.InnerContent, $"{tableNameTableContextHandler.StartContext}{tableNameTableContextHandler.EndContext}");
            Assert.AreEqual(first.current.EndContextDelimiter, forEachTableDatabaseContextHandler.EndContext);
            Assert.AreEqual(1, first.childs.Count);
            var firstChild = first.childs.First();

            Assert.IsNotNull(firstChild.current);
            Assert.IsNotNull(firstChild.childs);
            Assert.AreEqual(firstChild.current.StartContextDelimiter, tableNameTableContextHandler.StartContext);
            Assert.AreEqual(firstChild.current.InnerContent, String.Empty);
            Assert.AreEqual(firstChild.current.EndContextDelimiter, tableNameTableContextHandler.EndContext);
        }
Beispiel #2
0
        public void Success_when_output_is_database_all_table_name_when_is_database_foreach_table_name_specified_in_template()
        {
            var templateHandler = BuildTemplateHandler(null);
            var ForEachTableDatabaseContextHandler = new ForEachTableDatabaseContextHandler(templateHandler);
            var TableNameTableContextHandler       = new TableNameTableContextHandler(templateHandler);
            var TemplateHandlerNew = BuildTemplateHandler(null);

            String submittedString = ForEachTableDatabaseContextHandler.StartContext +
                                     TableNameTableContextHandler.Signature + "," +
                                     ForEachTableDatabaseContextHandler.EndContext;
            String result = TemplateHandlerNew.HandleTemplate(submittedString,
                                                              new ProcessorDatabaseContext()
            {
                Database = _databaseDescriptionPojo,
            });
            String expectedResult = FIRST_TABLE_NAME + "," + SECOND_TABLE_NAME + ",";

            Assert.AreEqual(expectedResult, result);
        }