20 lines
1.1 KiB
Python
20 lines
1.1 KiB
Python
import unittest
|
|
from pathlib import Path
|
|
from PIL import Image
|
|
from gpu_replay import replay,homologous,diff
|
|
from native_replay import validate_claims
|
|
LAB=Path('/home/fy59/swayfx-mosaic-targeted-7gge6h8b/runs')
|
|
class GPUReplayTests(unittest.TestCase):
|
|
def test_real_whole_differences(self):
|
|
for name,pixels in [('pristine',37252),('A',34323),('G',34323)]:
|
|
r=replay(LAB/f'FX-{name}/run');d=r['whole_H1_A_return']
|
|
self.assertEqual(d['pixels'],pixels);self.assertEqual(max(v['max_abs'] for v in d['perchannel']),6)
|
|
self.assertEqual(r['CACHE_A_RETURN_CAUSALITY'],'INCONCLUSIVE')
|
|
self.assertTrue(r['source_SHM']['ABA_byte_exact'])
|
|
def test_sixteen_homologous(self):
|
|
self.assertEqual(len(homologous(LAB/'FX-A/run',LAB/'FX-G/run')),16)
|
|
def test_masked_whole_and_source_buffer_output_falseproof(self):
|
|
im=Image.new('RGB',(2,2))
|
|
with self.assertRaises(ValueError):diff(im,im,mask=[])
|
|
with self.assertRaises(ValueError):validate_claims({'source_buffer_is_output':True})
|
|
if __name__=='__main__':unittest.main()
|