Replace inventory-counting risk with bounded workload scoring and separate confidence

This commit is contained in:
2026-10-30 12:34:39 -07:00
parent f65ade9fff
commit 57e716b710
26 changed files with 10351 additions and 87 deletions

View File

@@ -141,3 +141,33 @@ class UITests(unittest.TestCase):
window.quick_save.click()
self.assertIn('LOCAL WINDOWS INVENTORY', report.read_text())
window.close()
def test_policy_changes_preserve_history_and_confidence_is_visible(self):
import json
from samsara.analyzers.policy import load_policy
window=MainWindow()
fixture=Path('tests/fixtures/scoring/active_sql_server.json')
window.collection_done(json.loads(fixture.read_text()))
self.assertEqual(window.assessment['score'],70)
original_policy=window.assessment['scoring']['policy_id']
self.assertIn('Confidence:',window.coverage_note.text())
self.assertIn('Coverage gaps do not add risk points',window.coverage_note.text())
with tempfile.TemporaryDirectory() as folder:
policy=load_policy()
policy['scores']['observed_application_clients']=55
path=Path(folder)/'policy.json'
path.write_text(json.dumps(policy))
with patch('samsara.ui.window.QFileDialog.getOpenFileName',return_value=(str(path),'')):
window.choose_policy()
window.source.setCurrentIndex(window.source.findData('file'))
window.inventory_path.setText(str(fixture.resolve()))
window.start_collection()
self.assertFalse(window.policy_button.isEnabled())
self.finish(window)
self.assertEqual(window.assessment['score'],55)
self.assertNotEqual(window.assessment['scoring']['policy_id'],original_policy)
window.open_history(window.history_list.item(0))
self.assertEqual(window.assessment['score'],70)
self.assertEqual(window.assessment['scoring']['policy_id'],original_policy)
window.reset_policy()
window.close()