aboutsummaryrefslogtreecommitdiffstats
path: root/roms/edk2/BaseTools/Tests/TestRegularExpression.py
diff options
context:
space:
mode:
authorAngelos Mouzakitis <a.mouzakitis@virtualopensystems.com>2023-10-10 14:33:42 +0000
committerAngelos Mouzakitis <a.mouzakitis@virtualopensystems.com>2023-10-10 14:33:42 +0000
commitaf1a266670d040d2f4083ff309d732d648afba2a (patch)
tree2fc46203448ddcc6f81546d379abfaeb323575e9 /roms/edk2/BaseTools/Tests/TestRegularExpression.py
parente02cda008591317b1625707ff8e115a4841aa889 (diff)
Add submodule dependency filesHEADmaster
Change-Id: Iaf8d18082d3991dec7c0ebbea540f092188eb4ec
Diffstat (limited to 'roms/edk2/BaseTools/Tests/TestRegularExpression.py')
-rw-r--r--roms/edk2/BaseTools/Tests/TestRegularExpression.py48
1 files changed, 48 insertions, 0 deletions
diff --git a/roms/edk2/BaseTools/Tests/TestRegularExpression.py b/roms/edk2/BaseTools/Tests/TestRegularExpression.py
new file mode 100644
index 000000000..3e6c5f446
--- /dev/null
+++ b/roms/edk2/BaseTools/Tests/TestRegularExpression.py
@@ -0,0 +1,48 @@
+## @file
+# Routines for generating Pcd Database
+#
+# Copyright (c) 2018, Intel Corporation. All rights reserved.<BR>
+# SPDX-License-Identifier: BSD-2-Clause-Patent
+
+import unittest
+from Common.Misc import RemoveCComments
+from Workspace.BuildClassObject import ArrayIndex
+
+class TestRe(unittest.TestCase):
+ def test_ccomments(self):
+ TestStr1 = """ {0x01,0x02} """
+ self.assertEquals(TestStr1, RemoveCComments(TestStr1))
+
+ TestStr2 = """ L'TestString' """
+ self.assertEquals(TestStr2, RemoveCComments(TestStr2))
+
+ TestStr3 = """ 'TestString' """
+ self.assertEquals(TestStr3, RemoveCComments(TestStr3))
+
+ TestStr4 = """
+ {CODE({
+ {0x01, {0x02, 0x03, 0x04 }},// Data comment
+ {0x01, {0x02, 0x03, 0x04 }},// Data comment
+ })
+ } /*
+ This is multiple line comments
+ The seconde line comment
+ */
+ // This is a comment
+ """
+ Expect_TestStr4 = """{CODE({
+ {0x01, {0x02, 0x03, 0x04 }},
+ {0x01, {0x02, 0x03, 0x04 }},
+ })
+ }"""
+ self.assertEquals(Expect_TestStr4, RemoveCComments(TestStr4).strip())
+
+ def Test_ArrayIndex(self):
+ TestStr1 = """[1]"""
+ self.assertEquals(['[1]'], ArrayIndex.findall(TestStr1))
+
+ TestStr2 = """[1][2][0x1][0x01][]"""
+ self.assertEquals(['[1]','[2]','[0x1]','[0x01]','[]'], ArrayIndex.findall(TestStr2))
+
+if __name__ == '__main__':
+ unittest.main()