cb19660fbe
Add version-bound core, world data, geometry, generation and feature implementations with native client/server comparison tools and scoped evidence reports. Apply Horizon project branding. Workspace tests, Clippy and 147 Python tests passed. Full 51-family survival and expanded provider comparisons are still running; complete gameplay parity and a playable Rust client remain unfinished. Private game artifacts and the isolated simple-block placement work are excluded.
20 lines
861 B
Python
20 lines
861 B
Python
import unittest
|
|
from tools import test_block_properties_parity as properties
|
|
|
|
|
|
class BlockPropertiesCorpusTests(unittest.TestCase):
|
|
def test_cache_flags_empty_shapes_and_threshold_cases(self):
|
|
fixtures=list(properties.corpus())
|
|
self.assertEqual(fixtures,list(properties.corpus()))
|
|
self.assertEqual({(f['on'],f['off'],f['cached']) for f in fixtures},
|
|
{(a,b,c) for a in [False,True] for b in [False,True] for c in [False,True]})
|
|
self.assertEqual({f['occludes'] for f in fixtures},{False,True})
|
|
self.assertTrue(any(not f['shape'] for f in fixtures))
|
|
self.assertTrue(any(len(f['shape'])>1 for f in fixtures))
|
|
self.assertGreater(len(fixtures),8000)
|
|
for f in fixtures:
|
|
for box in f['shape']:self.assertEqual(len(box),6)
|
|
|
|
|
|
if __name__=='__main__':unittest.main()
|