From 30c1887852e52ef71eb2e852482ea9426feafc62 Mon Sep 17 00:00:00 2001 From: Tom Alcorn Date: Wed, 27 May 2020 18:01:49 -0700 Subject: [PATCH] Fix config parser bug --- sbysrc/sby.py | 2 +- sbysrc/test_sby.py | 18 +++++++++++++----- 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/sbysrc/sby.py b/sbysrc/sby.py index aeb1441..3b8ce09 100644 --- a/sbysrc/sby.py +++ b/sbysrc/sby.py @@ -192,7 +192,7 @@ def read_sbyconfig(sbydata, taskname): tasks_section = False if task_skiping_blocks: - if line == "--": + if line == "--" or line == "": task_skip_block = False task_skiping_blocks = False return diff --git a/sbysrc/test_sby.py b/sbysrc/test_sby.py index 1b882ce..749f63d 100644 --- a/sbysrc/test_sby.py +++ b/sbysrc/test_sby.py @@ -4,6 +4,13 @@ from sby import * class TestSby(unittest.TestCase): + def assertContainsSubsequence(self, sequence, subsequence): + if len(subsequence) == 0: + return + self.assertIn(subsequence[0], sequence) + i = sequence.index(subsequence[0]) + self.assertSequenceEqual(sequence[i:i+len(subsequence)], subsequence) + def test_read_sbyconfig(self): cfg = ''' [tasks] @@ -32,9 +39,10 @@ foo.v sbydata = cfg.split('\n') cfgdata, tasklist = read_sbyconfig(sbydata, 'a') - self.assertIn('[engines]', cfgdata) - i = cfgdata.index('[engines]') - self.assertSequenceEqual(['[engines]', 'smtbmc'], cfgdata[index:index+1]) - print(cfgdata) - print(tasklist) + self.assertContainsSubsequence(cfgdata, ['[engines]', 'smtbmc']) + # self.assertIn('[engines]', cfgdata) + # i = cfgdata.index('[engines]') + # self.assertSequenceEqual(['[engines]', 'smtbmc'], cfgdata[i:i+2]) + # print(cfgdata) + # print(tasklist) \ No newline at end of file