From fedf7b624142b7b7921166cb2213e3e43e0657dc Mon Sep 17 00:00:00 2001 From: rzaitov Date: Tue, 5 Nov 2013 11:10:04 +0400 Subject: [PATCH] =?UTF-8?q?=D0=B4=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8=D0=BB=20?= =?UTF-8?q?=D0=BC=D0=B5=D1=82=D0=BE=D0=B4=D1=8B=20=D0=BF=D0=BE=D0=BB=D1=83?= =?UTF-8?q?=D1=87=D0=B5=D0=BD=D0=B8=D1=8F=20=D0=BC=D0=B0=D0=BA=D1=80=D0=BE?= =?UTF-8?q?=D1=81=D0=B0=20=D0=BF=D0=BE=20=D0=B8=D0=BC=D0=B5=D0=BD=D0=B8=20?= =?UTF-8?q?=D0=B8=20=D0=BF=D0=BE=D0=BB=D1=83=D1=87=D0=B5=D0=BD=D0=B8=D0=B5?= =?UTF-8?q?=20=D0=B8=D0=BC=D0=B5=D0=BD=D0=B8=20=D0=BF=D0=BE=20=D0=BC=D0=B0?= =?UTF-8?q?=D0=BA=D1=80=D0=BE=D1=81=D1=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- scripts/Tests/UnitTests/Macro/test_macro.py | 13 ++++++++++++- scripts/utils/Macro.py | 16 ++++++++++------ 2 files changed, 22 insertions(+), 7 deletions(-) diff --git a/scripts/Tests/UnitTests/Macro/test_macro.py b/scripts/Tests/UnitTests/Macro/test_macro.py index 18c496d..e77f99d 100644 --- a/scripts/Tests/UnitTests/Macro/test_macro.py +++ b/scripts/Tests/UnitTests/Macro/test_macro.py @@ -4,7 +4,7 @@ from utils.Macro import Macro class TestMacro(unittest.TestCase): def setUp(self): - self.macroParser = Macro({}) + self.macroParser = Macro() def test_parseMacros(self): line = 'hello {@this} is {@my_macro} and {@macro_with_numbers123}' @@ -15,3 +15,14 @@ class TestMacro(unittest.TestCase): self.assertTrue('my_macro' in symbols) self.assertTrue('macro_with_numbers123' in symbols) + def test_getName(self): + line = '{@macro_name}' + name = self.macroParser.getMacroName(line) + + self.assertEqual('macro_name', name) + + def test_getMacro(self): + line = 'some_name' + macro = self.macroParser.getMacroByName(line) + + self.assertEqual('{@some_name}', macro) \ No newline at end of file diff --git a/scripts/utils/Macro.py b/scripts/utils/Macro.py index 4279490..7d62e6d 100644 --- a/scripts/utils/Macro.py +++ b/scripts/utils/Macro.py @@ -1,15 +1,19 @@ import re class Macro: - def __init__(self, valueResolver): - assert valueResolver is not None + def __init__(self): + pass - self.__valueResolver = valueResolver + def getMacroByName(self, macroName): + assert macroName is not None - def resolveLine(self, line): - assert line is not None + return '{@' + macroName + '}' - symbols = self.getSymbols(line) + def getMacroName(self, macro): + assert macro.startswith('{@') + assert macro.endswith('}') + + return macro[2:-1] def getSymbols(self, line): assert line is not None