def test_config_get_invalid_names(self): ''' Test config_get() with invalid names. ''' cfg = zsimparse.get_config_by_dir(self.simdir) cfg.raw['list'] = [1, 2, 3] self.assertIsNone(zsimparse.config_get(cfg, ('g1', 's2'))) self.assertIsNone(zsimparse.config_get(cfg, 'g1 s1 t3')) self.assertIsNone(zsimparse.config_get(cfg, 'g4')) with self.assertRaises(KeyError): _ = cfg['g1']['s2'] with self.assertRaises(KeyError): _ = cfg['g1']['s1']['t3'] with self.assertRaises(IndexError): _ = cfg['list'][4] with self.assertRaises(TypeError): _ = cfg['sys']['frequency'][1] with self.assertRaises(KeyError): _ = cfg.g1.s2 with self.assertRaises(KeyError): _ = cfg.g1.s1.t3 with self.assertRaises(IndexError): _ = cfg.list[4] with self.assertRaises(TypeError): _ = cfg.sys.frequency[1]
def test_sum_cache(self): ''' Test individual cache stats summed up to aggregated cache stats. ''' num_l1d = zsimparse.config_get(self.cfg, 'sys caches l1d caches') acc = 0 ins = 0 for idx in range(num_l1d): acc += zsimparse.get_cache_access(self.dset, ('l1d', idx)) ins += zsimparse.get_cache_insertion(self.dset, ('l1d', idx)) self.assertEqual(zsimparse.get_cache_access(self.dset, 'l1d'), acc) self.assertEqual(zsimparse.get_cache_insertion(self.dset, 'l1d'), ins)
def test_config_get(self): ''' Test config_get(). ''' cfg = zsimparse.get_config_by_dir(self.simdir) cfg.raw['list'] = [1, 2, 3] self.assertEqual( zsimparse.config_get(cfg, ('sys', 'caches', 'l1d', 'size')), 65536) self.assertEqual(zsimparse.config_get(cfg, ('list', 1)), 2) self.assertEqual(zsimparse.config_get(cfg, 'sys caches l1d type'), 'Simple') self.assertEqual(zsimparse.config_get(cfg, 'sim.maxTotalInstrs'), libconf.LibconfInt64(0)) self.assertEqual(cfg['sys']['caches']['l1d']['size'], 65536) self.assertEqual(cfg['list'][1], 2) self.assertEqual(cfg['sys']['caches']['l1d']['type'], 'Simple') self.assertEqual(cfg['sim']['maxTotalInstrs'], libconf.LibconfInt64(0)) self.assertEqual(cfg.sys.caches.l1d.size, 65536) self.assertEqual(cfg.sys.caches.l1d.type, 'Simple') self.assertEqual(cfg.sim.maxTotalInstrs, libconf.LibconfInt64(0))
def test_get_config_by_dir(self): ''' Test get_config_by_dir(). ''' cfg = zsimparse.get_config_by_dir(self.simdir) self.assertIsNotNone(cfg) self.assertIsNotNone(zsimparse.config_get(cfg, 'sys'))
def test_config_get(self): ''' Test config_get(). ''' self.assertEqual(zsimparse.config_get(self.cfg, ('g1', 's1', 't1')), 1) self.assertEqual(zsimparse.config_get(self.cfg, ('g2', 1)), 1) self.assertEqual(zsimparse.config_get(self.cfg, 'g1 s1 t2'), 'val') self.assertEqual(zsimparse.config_get(self.cfg, 'g3'), 3)
def test_config_get_invalid_names(self): ''' Test config_get() with invalid names. ''' self.assertIsNone(zsimparse.config_get(self.cfg, ('g1', 's2'))) self.assertIsNone(zsimparse.config_get(self.cfg, 'g1 s1 t3')) self.assertIsNone(zsimparse.config_get(self.cfg, 'g4'))