diff --git a/scripts/Core/LineConveyor/TextInclude.py b/scripts/Core/LineConveyor/TextInclude.py index 9d249f2..b45446d 100644 --- a/scripts/Core/LineConveyor/TextInclude.py +++ b/scripts/Core/LineConveyor/TextInclude.py @@ -15,6 +15,6 @@ class TextInclude: path = info[1] content = self.contentProvider.fetchContent(path) - text.replace(includeStatement, content) + text = text.replace(includeStatement, content) return text \ No newline at end of file diff --git a/scripts/IosSetupSteps.txt b/scripts/IosSetupSteps.txt new file mode 100644 index 0000000..c5ff96f --- /dev/null +++ b/scripts/IosSetupSteps.txt @@ -0,0 +1 @@ +sh echo hello from '{@app_name}' \ No newline at end of file diff --git a/scripts/Tests/UnitTests/IncludeText/__init__.py b/scripts/Tests/UnitTests/IncludeText/__init__.py new file mode 100644 index 0000000..cc31abc --- /dev/null +++ b/scripts/Tests/UnitTests/IncludeText/__init__.py @@ -0,0 +1 @@ +__author__ = 'rzaitov' diff --git a/scripts/Tests/UnitTests/IncludeText/test_includeText.py b/scripts/Tests/UnitTests/IncludeText/test_includeText.py new file mode 100644 index 0000000..57ebdd5 --- /dev/null +++ b/scripts/Tests/UnitTests/IncludeText/test_includeText.py @@ -0,0 +1,42 @@ +import unittest +from Core.LineConveyor.TextInclude import TextInclude +from utils.IncludeProcessor import IncludeProcessor + + +class MockContentProvider: + def __init__(self): + pass + + def fetchContent(self, path): + return """line 1 +line 2 +line 3""" + +class TestIncludeText(unittest.TestCase): + def setUp(self): + includeProcessor = IncludeProcessor() + contentProvider = MockContentProvider() + self.includeText = TextInclude(includeProcessor, contentProvider) + + def test_includeText(self): + text = """ +bla bla + +another bla + +yet another bla""" + + processedText = self.includeText.processText(text) + + expected = """ +bla bla +line 1 +line 2 +line 3 +another bla +line 1 +line 2 +line 3 +yet another bla""" + + self.assertEqual(expected, processedText) diff --git a/scripts/taskRunner.py b/scripts/taskRunner.py index 846e071..b924c78 100644 --- a/scripts/taskRunner.py +++ b/scripts/taskRunner.py @@ -1,12 +1,15 @@ # -*- coding: utf-8 -*- import os import argparse +from Core.FileContentProvider import FileContentProvider from Core.LineConveyor.CommentRemover import CommentRemover from Core.LineConveyor.TextConveyorPreprocessor import TextConveyorPreprocessor from Core.LineConveyor.MacroResolver import MacroResolver from Core.LineConveyor.Stripper import Stripper +from Core.LineConveyor.TextInclude import TextInclude from commands.ValueProvider import ValueProvider from utils.BuildConfigProvider import BuildConfigProvider +from utils.IncludeProcessor import IncludeProcessor from utils.MacroProcessor import MacroProcessor from utils.SettingsProvider.CmdArgsOverriderSettingsProvider import CmdArgsOverriderSettingsProvider from utils.SettingsProvider.FromFileSettingsProvider import FromFileSettingsProvider @@ -35,8 +38,13 @@ class TaskRunner: self.valueProvider = ValueProvider() macroResolver = MacroResolver(macroProcessor, self.valueProvider) + includeProcessor = IncludeProcessor() + fileContentProvider = FileContentProvider() + textInclude = TextInclude(includeProcessor, fileContentProvider) + self.textPreprocessor = TextConveyorPreprocessor() self.textPreprocessor.addProcessor(macroResolver) + self.textPreprocessor.addProcessor(textInclude) self.linePreprocessor = TextConveyorPreprocessor() self.linePreprocessor.addProcessor(lineStripper)