874b6f20c2
Основа — Horizon (MIT). История апстрима не переносится: этот репозиторий ведёт свою.
22 lines
920 B
Python
22 lines
920 B
Python
import json
|
|
import unittest
|
|
from tools import test_scattered_ore_parity as ore
|
|
|
|
|
|
class ScatteredOreCorpusTests(unittest.TestCase):
|
|
def test_exposure_directions_empty_targets_and_boundary_sizes(self):
|
|
fixtures = list(ore.corpus({}))
|
|
self.assertEqual({f['mode'] for f in fixtures}, set(range(8)))
|
|
self.assertEqual({f['legacy'] for f in fixtures}, {False, True})
|
|
self.assertEqual({f['fail'] for f in fixtures}, {-1, 0, 7})
|
|
definitions = [json.loads(f['definition']) for f in fixtures]
|
|
sizes = {d['size'] for d in definitions}
|
|
self.assertTrue({-1, 0, 1, 7, 8, 64, 65, 4294967297} <= sizes)
|
|
self.assertTrue(any(d['targets'] == [] for d in definitions))
|
|
self.assertTrue(any(f['origin'][0] == 2147483647 for f in fixtures))
|
|
self.assertTrue(any(f['origin'][0] == -2147483648 for f in fixtures))
|
|
|
|
|
|
if __name__ == '__main__':
|
|
unittest.main()
|