49 lines
1.5 KiB
Python
49 lines
1.5 KiB
Python
|
## @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()
|