From 90b2b59ca18f653b7aea6836715c002a159e1a19 Mon Sep 17 00:00:00 2001
From: pompolic <pompolic@special-circumstanc.es>
Date: Tue, 9 May 2023 18:44:00 +0200
Subject: [PATCH] Add more tests, remove mallocs in hammer stats test

---
 .../tests/integration/test_hammer_stats_attribution.py    | 8 ++------
 gdb-port/tests/integration/test_malloc_attribution.py     | 2 ++
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/gdb-port/tests/integration/test_hammer_stats_attribution.py b/gdb-port/tests/integration/test_hammer_stats_attribution.py
index 445426e..c4a2f14 100644
--- a/gdb-port/tests/integration/test_hammer_stats_attribution.py
+++ b/gdb-port/tests/integration/test_hammer_stats_attribution.py
@@ -1,5 +1,6 @@
 import unittest
 
+@unittest.skipIf(top_level_parse.memory_stat_method == HammerMemoryStatisticsMethod.BREAKPOINT, "hammer stats-based allocation counts disabled")
 class TestHammerStatsParserAttribution(unittest.TestCase):
 	def setUp(self):
 		self.a = Parser("a", 128)
@@ -18,22 +19,19 @@ class TestHammerStatsParserAttribution(unittest.TestCase):
 
 	def test_alloc_after_h_do_parse(self):
 		self.top_level_parse.enter_h_do_parse(400, 256, self.b.address)
-		self.top_level_parse.enter_h_arena_malloc_raw(150)
 		self.assertEqual(self.b.bytes_used[256], 150)
 
 	def test_alloc_after_parse_virtual(self):
 		self.top_level_parse.enter_h_do_parse(400, 256, self.b.address)
-		self.top_level_parse.parse_virtual(self.b.address)
-		self.top_level_parse.enter_h_arena_malloc_raw(150)
 		self.assertEqual(self.b.bytes_used[256], 150)
 
 	def test_alloc_after_enter_perform_lowlevel_parse(self):
 		self.top_level_parse.enter_h_do_parse(400, 256, self.b.address)
 		self.top_level_parse.parse_virtual(self.b.address)
 		self.top_level_parse.enter_perform_lowlevel_parse(self.b.address)
-		self.top_level_parse.enter_h_arena_malloc_raw(150)
 		self.assertEqual(self.b.bytes_used[256], 150)
 
+@unittest.skipIf(top_level_parse.memory_stat_method == HammerMemoryStatisticsMethod.BREAKPOINT, "hammer stats-based allocation counts disabled")
 class TestHammerStatsParserAttributionOnReturns(unittest.TestCase):
 	def setUp(self):
 		self.a = Parser("a", 128)
@@ -54,7 +52,6 @@ class TestHammerStatsParserAttributionOnReturns(unittest.TestCase):
 
 	def test_alloc_after_return_from_perform_lowlevel_parse(self):
 		self.top_level_parse.return_from_perform_lowlevel_parse()
-		self.top_level_parse.enter_h_arena_malloc_raw(150)
 		self.assertEqual(self.b.bytes_used[256], 150)
 
 	def test_alloc_after_return_from_h_do_parse(self):
@@ -63,6 +60,5 @@ class TestHammerStatsParserAttributionOnReturns(unittest.TestCase):
 
 		self.top_level_parse.return_from_perform_lowlevel_parse()
 		self.top_level_parse.return_from_h_do_parse(test_parse_state, self.b.address, 0)
-		self.top_level_parse.enter_h_arena_malloc_raw(150)
 		self.assertEqual(self.a.bytes_used[256], 150)
 
diff --git a/gdb-port/tests/integration/test_malloc_attribution.py b/gdb-port/tests/integration/test_malloc_attribution.py
index c7ea706..50d2448 100644
--- a/gdb-port/tests/integration/test_malloc_attribution.py
+++ b/gdb-port/tests/integration/test_malloc_attribution.py
@@ -1,5 +1,6 @@
 import unittest
 
+@unittest.skipIf(top_level_parse.memory_stat_method == HammerMemoryStatisticsMethod.DETAILED_ARENA_STATS, "malloc-based allocation counts disabled")
 class TestMallocParserAttribution(unittest.TestCase):
 	def setUp(self):
 		self.a = Parser("a", 128)
@@ -34,6 +35,7 @@ class TestMallocParserAttribution(unittest.TestCase):
 		self.top_level_parse.enter_h_arena_malloc_raw(150)
 		self.assertEqual(self.b.bytes_used[256], 150)
 
+@unittest.skipIf(top_level_parse.memory_stat_method == HammerMemoryStatisticsMethod.DETAILED_ARENA_STATS, "malloc-based allocation counts disabled")
 class TestMallocParserAttributionOnReturns(unittest.TestCase):
 	def setUp(self):
 		self.a = Parser("a", 128)
-- 
GitLab