Spaces:
Runtime error
Runtime error
| """Tests for engine approval policies. | |
| Author: mohamedgamal04 | |
| """ | |
| import asyncio | |
| import unittest | |
| from pathlib import Path | |
| from queryquest.core.models import WritebackTarget | |
| from queryquest.core.policy import AutoApprovePolicy, DenyAllPolicy | |
| def _target(path: str) -> WritebackTarget: | |
| return WritebackTarget(file_path=Path(path), sheet_name="Sheet1", table_name="t", affected_rows=1) | |
| class AutoApprovePolicyTests(unittest.TestCase): | |
| def test_approves_execution(self) -> None: | |
| policy = AutoApprovePolicy("/data") | |
| self.assertTrue(asyncio.run(policy.approve_execution([]))) | |
| def test_approves_writeback_inside_dir(self) -> None: | |
| policy = AutoApprovePolicy("/data") | |
| self.assertTrue(asyncio.run(policy.approve_writeback(_target("/data/listings.xlsx")))) | |
| def test_rejects_writeback_outside_dir(self) -> None: | |
| policy = AutoApprovePolicy("/data") | |
| self.assertFalse(asyncio.run(policy.approve_writeback(_target("/etc/passwd.xlsx")))) | |
| class DenyAllPolicyTests(unittest.TestCase): | |
| def test_denies_everything(self) -> None: | |
| policy = DenyAllPolicy() | |
| self.assertFalse(asyncio.run(policy.approve_execution([]))) | |
| self.assertFalse(asyncio.run(policy.approve_writeback(_target("/data/x.xlsx")))) | |
| if __name__ == "__main__": | |
| unittest.main() | |