← Files ImagoARCHIVED FILE
tests/test_spec_guard.py
2.37 KB · Nov 9, 2026 · 00:48 UTC
import importlib.util, pathlib, unittest
module_path=pathlib.Path(__file__).resolve().parents[1]/'scripts/spec_guard.py'
spec=importlib.util.spec_from_file_location('spec_guard',module_path)
module=importlib.util.module_from_spec(spec);spec.loader.exec_module(module)
review=module.review
BASE={'task':'create','requested_output':'a square landscape image','claimed_rendered':False,'qa':{'composition':'passed'},'ready':True}
class ReviewTests(unittest.TestCase):
def test_clean_create(self): self.assertEqual(review(BASE),[])
def test_missing_task(self):self.assertTrue(review({**BASE,'task':'unknown'}))
def test_blank_output(self):self.assertTrue(review({**BASE,'requested_output':' '}))
def test_edit_missing_source(self):self.assertIn('edit requires an accessible source image',review({**BASE,'task':'edit','preserve':['background']}))
def test_edit_missing_preserve(self):self.assertIn('edit must specify preservation constraints',review({**BASE,'task':'edit','source_present':True}))
def test_edit_valid(self):self.assertEqual(review({**BASE,'task':'edit','source_present':True,'preserve':['face']}),[])
def test_missing_factual_claims(self):self.assertTrue(review({**BASE,'task':'factual_visual'}))
def test_unsupported_claim(self):self.assertTrue(review({**BASE,'task':'factual_visual','claims':[{'text':'75%'}]}))
def test_supported_claim(self):self.assertEqual(review({**BASE,'task':'factual_visual','claims':[{'text':'20 users','source':'report p2','verified':True}]}),[])
def test_fake_render(self):self.assertTrue(review({**BASE,'claimed_rendered':True}))
def test_verified_render(self):self.assertEqual(review({**BASE,'claimed_rendered':True,'render_tool_result':'success'}),[])
def test_bad_qa(self):self.assertTrue(review({**BASE,'qa':{'text':'imaginary'}}))
def test_failed_ready(self):self.assertTrue(review({**BASE,'qa':{'text':'failed'}}))
def test_untested_ready(self):self.assertTrue(review({**BASE,'qa':{'text':'not_tested'}}))
def test_not_ready_failed(self):self.assertEqual(review({**BASE,'qa':{'text':'failed'},'ready':False}),[])
def test_prompt_no_render(self):self.assertEqual(review({**BASE,'task':'prompt_only'}),[])
def test_prompt_fake_render(self):self.assertTrue(review({**BASE,'task':'prompt_only','claimed_rendered':True}))
def test_no_spec(self):self.assertTrue(review(None))
if __name__=='__main__': unittest.main()
SHA-256: b4931f9c5c8f105228e0eba5cfd6ad49a5f02cf596b87bd8c675884f8eadbbb6