import pytest
import tests.gdbm.parser as parser
from plugins.agl_test_ptest_base import PTESTBase

class Gdbm(PTESTBase):
    def __init__(self):
        super().__init__(test_name="gdbm")

    def log_process(self):
        log_file = self.get_logfile()
        self.case_info_list = parser.log_parser(log_file)

instance = Gdbm()
instance.run_ptest()

@pytest.fixture(scope='module')
def testbase():
    yield instance
    instance.log_report()

@pytest.mark.parametrize('case_name', instance.case_info_list.keys())
def test_gdbm(testbase: Gdbm, case_name):
    testbase.run_case(case_name)

if __name__ == '__main__':
    pytest.main("-s run_tests")