1*9c5db199SXin Li#!/usr/bin/python3 2*9c5db199SXin Li""" 3*9c5db199SXin LiThis is not meant to be executed unless copied into a 4*9c5db199SXin Liscenario package and renamed with a _unittest suffix. 5*9c5db199SXin Li""" 6*9c5db199SXin Li 7*9c5db199SXin Liimport os, unittest 8*9c5db199SXin Lifrom os import path 9*9c5db199SXin Liimport common 10*9c5db199SXin Lifrom autotest_lib.tko.parsers.test import scenario_base 11*9c5db199SXin Li 12*9c5db199SXin LiGOLDEN = 'golden' 13*9c5db199SXin Li 14*9c5db199SXin Li 15*9c5db199SXin Liclass ParserScenerioTestCase(scenario_base.BaseScenarioTestCase): 16*9c5db199SXin Li def test_regression(self): 17*9c5db199SXin Li """We want to ensure that result matches the golden. 18*9c5db199SXin Li 19*9c5db199SXin Li This test is enabled if there is a golden entry 20*9c5db199SXin Li in the parser_result_store. 21*9c5db199SXin Li """ 22*9c5db199SXin Li self.skipIf( 23*9c5db199SXin Li GOLDEN not in self.parser_result_store, 24*9c5db199SXin Li 'No golden data to test against') 25*9c5db199SXin Li 26*9c5db199SXin Li golden = self.parser_result_store[GOLDEN] 27*9c5db199SXin Li fresh_parser_result = self.harness.execute() 28*9c5db199SXin Li fresh_copy = scenario_base.copy_parser_result( 29*9c5db199SXin Li fresh_parser_result) 30*9c5db199SXin Li self.assertEquals(golden, fresh_copy) 31*9c5db199SXin Li 32*9c5db199SXin Li 33*9c5db199SXin Liif __name__ == '__main__': 34*9c5db199SXin Li unittest.main() 35