ptf/utest/TemplateTest.py (32 lines of code) (raw):

from BasicTest import BasicMockedTest # Try to import from local build folder # If cannot import then try to import from global folder try: from meta.sai_adapter import * except ImportError: from sai_thrift.sai_adapter import * from MockClient import MockSuccessClient import unittest """ Class use to test the template. Run command under folder 'meta' perl -Irpc gensairpc.pl --adapter_logger copy sai_adaptor to ./test/saithriftv2/gen-py/sai cd ./test/saithriftv2 sudo python3 setup.py install Install PTF git clone https://github.com/p4lang/ptf.git python3.7 setup.py install --single-version-externally-managed --record ./ptf_install.txt Install scapy Then check the result """ ROOT_DIR = os.path.dirname(os.path.abspath(__file__)) LOG_FILE_DIR = os.path.join(ROOT_DIR, 'logs') LOG_FILE_PATH = os.path.join(LOG_FILE_DIR, 'output.log') class TestAdapterLogger(BasicMockedTest): def setUp(self): BasicMockedTest.setUp(self) self.client = MockSuccessClient() def test_logger(self): self.set_logger_name() sai_thrift_remove_acl_table(self.client, 11111) self.check_file_contains(LOG_FILE_PATH, 'acl_table_oid') sai_thrift_create_switch(self.client, init_switch=True, hardware_access_bus="11:11:11:11:11:11") self.check_file_contains(LOG_FILE_PATH, 'hardware_access_bus') sai_thrift_get_acl_table_attribute(self.client, acl_table_oid=1, acl_stage=1) self.check_file_contains(LOG_FILE_PATH, 'SAI_ACL_TABLE_ATTR_ACL_STAGE') def check_file_contains(self, file, content): with open(file) as f: datafile = f.readlines() found = False for line in datafile: if content in line: return True return False