Files
horizon-airdef/tests/test_replace_block_parity.py
T
Ludovic Marie cb19660fbe Build Horizon Rust parity foundations and differential validation
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.
2026-10-06 11:24:51 +02:00

21 lines
914 B
Python

import json
import unittest
from tools import test_replace_block_parity as replace
class ReplaceBlockCorpusTests(unittest.TestCase):
def test_ordered_targets_failures_and_repeated_world_state(self):
fixtures = list(replace.corpus({}))
self.assertEqual({f['legacy'] for f in fixtures}, {False, True})
self.assertEqual({f['fail'] for f in fixtures}, {-1, 0, 1, 2, 4})
self.assertEqual({f['reject'] for f in fixtures}, {0, 2})
self.assertTrue(all(f['repeats'] == 3 for f in fixtures))
definitions = [json.loads(f['definition']) for f in fixtures]
self.assertTrue(any(d['targets'] == [] for d in definitions))
self.assertTrue(any(isinstance(d['targets'], list) and len(d['targets']) == 3 for d in definitions))
self.assertTrue(any('random_block_match' in f['definition'] for f in fixtures))
if __name__ == '__main__':
unittest.main()