From a2914ce339a13c17f0223e10e9f7ba993190e24d Mon Sep 17 00:00:00 2001 From: Rustam Zaitov Date: Tue, 29 Oct 2013 02:28:07 +0400 Subject: [PATCH] =?UTF-8?q?=D1=80=D0=B5=D0=B0=D0=BB=D0=B8=D0=B7=D0=BE?= =?UTF-8?q?=D0=B2=D0=B0=D0=BB=20=D0=BF=D0=B0=D1=80=D1=81=D0=B5=D1=80=20?= =?UTF-8?q?=D0=BA=D0=BE=D0=BC=D0=B0=D0=BD=D0=B4=D1=8B=20=D1=83=D0=B4=D0=B0?= =?UTF-8?q?=D0=BB=D0=B5=D0=BD=D0=B8=D1=8F=20=D0=B1=D1=8D=D0=BA=D0=B0=D0=BF?= =?UTF-8?q?=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BackupParser/test_deleteBackupParser.py | 23 +++++++++++++++++++ .../parser/BackupParser/DeleteBackupParser.py | 18 +++++++++++++++ 2 files changed, 41 insertions(+) create mode 100644 scripts/UnitTests/BackupParser/test_deleteBackupParser.py create mode 100644 scripts/parser/BackupParser/DeleteBackupParser.py diff --git a/scripts/UnitTests/BackupParser/test_deleteBackupParser.py b/scripts/UnitTests/BackupParser/test_deleteBackupParser.py new file mode 100644 index 0000000..fbe91a7 --- /dev/null +++ b/scripts/UnitTests/BackupParser/test_deleteBackupParser.py @@ -0,0 +1,23 @@ +import unittest +from parser.BackupParser.DeleteBackupParser import DeleteBackupParser + + +class TestDeleteBackupParser(unittest.TestCase): + def setUp(self): + self.__parser = DeleteBackupParser() + + def test_isValid(self): + line = 'delete backup' + isValid = self.__parser.isValidLine(line) + + self.assertEqual(True, isValid) + + def test_isNotValid(self): + line = 'bla backup' + isValid = self.__parser.isValidLine(line) + + self.assertEqual(False, isValid) + + def test_validInput(self): + line = 'delete backup' + self.__parser.parseLine(line) \ No newline at end of file diff --git a/scripts/parser/BackupParser/DeleteBackupParser.py b/scripts/parser/BackupParser/DeleteBackupParser.py new file mode 100644 index 0000000..cf92e91 --- /dev/null +++ b/scripts/parser/BackupParser/DeleteBackupParser.py @@ -0,0 +1,18 @@ +from parser.LineParser import LineParser +import re + +class DeleteBackupParser(LineParser): + def parseLine(self, line): + assert line is not None + + regexpSource = r'delete backup\s*' + regexp = re.compile(regexpSource, re.UNICODE) + + match = regexp.match(line) + self._guardMatch(match, line, regexpSource) + + def isValidLine(self, line): + assert line is not None + + isValid = line.startswith('delete backup') + return isValid