test_refinement_mrt: check force reads in executable text, not comments
The block_collision.cuh header comment names the absent d_params.fx/fy read, which tripped the source-text assertion. Strip // comments first and also require the real d_params.omega read. Test-only; no kernel source change. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
a4fc46d849
commit
c5a3cdb757
@@ -1,5 +1,6 @@
|
|||||||
"""Host guards and source contract for MRT reuse in refined/blocked stepping (no CUDA)."""
|
"""Host guards and source contract for MRT reuse in refined/blocked stepping (no CUDA)."""
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
|
import re
|
||||||
import unittest
|
import unittest
|
||||||
|
|
||||||
from CelerisLab.config import LBMConfig
|
from CelerisLab.config import LBMConfig
|
||||||
@@ -34,8 +35,11 @@ class RefinementMRTHost(unittest.TestCase):
|
|||||||
self.assertIn("collide_srt(f, feq, forcing, omega);", block_collision)
|
self.assertIn("collide_srt(f, feq, forcing, omega);", block_collision)
|
||||||
self.assertIn("#if COLLISION_MODEL == 2 || BLOCK_ROOT_BC == 2", block_collision)
|
self.assertIn("#if COLLISION_MODEL == 2 || BLOCK_ROOT_BC == 2", block_collision)
|
||||||
self.assertEqual(channel.count("block_collide(f);"), 1)
|
self.assertEqual(channel.count("block_collide(f);"), 1)
|
||||||
|
# Executable text only: the header comment explains the absent force read.
|
||||||
|
code = re.sub(r"//[^\n]*", "", channel + "\n" + block_collision)
|
||||||
|
self.assertIn("d_params.omega", code)
|
||||||
for text in ("collide_mrt_unforced", "collide_dispatch(", "d_params.fx", "d_params.fy"):
|
for text in ("collide_mrt_unforced", "collide_dispatch(", "d_params.fx", "d_params.fy"):
|
||||||
self.assertNotIn(text, channel + "\n" + block_collision)
|
self.assertNotIn(text, code)
|
||||||
for source in (blocks,):
|
for source in (blocks,):
|
||||||
self.assertIn("(COLLISION_MODEL != 0 && COLLISION_MODEL != 2)", source)
|
self.assertIn("(COLLISION_MODEL != 0 && COLLISION_MODEL != 2)", source)
|
||||||
self.assertIn("USE_LES", source)
|
self.assertIn("USE_LES", source)
|
||||||
|
|||||||
Reference in New Issue
Block a user