mirror of
https://github.com/angr/angr
synced 2026-08-17 12:23:11 -04:00
* Enable ruff isort rule * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
38 lines
1.1 KiB
Python
Executable file
38 lines
1.1 KiB
Python
Executable file
#!/usr/bin/env python3
|
|
from __future__ import annotations
|
|
|
|
from unittest import TestCase, main
|
|
|
|
from angr.knowledge_plugins.cfg import CFGManager
|
|
|
|
|
|
class TestCFGManager(TestCase):
|
|
def setUp(self):
|
|
self.cfg_manager = CFGManager(None)
|
|
|
|
def test_when_both_cfg_emulated_and_cfg_fast_are_present(self):
|
|
self.cfg_manager["CFGEmulated"] = "fake CFGEmulated"
|
|
self.cfg_manager["CFGFast"] = "fake CFGFast"
|
|
|
|
result = self.cfg_manager.get_most_accurate()
|
|
self.assertEqual(result, "fake CFGEmulated")
|
|
|
|
def test_when_only_cfg_emulated_is_present(self):
|
|
self.cfg_manager["CFGEmulated"] = "fake CFGEmulated"
|
|
|
|
result = self.cfg_manager.get_most_accurate()
|
|
self.assertEqual(result, "fake CFGEmulated")
|
|
|
|
def test_when_only_cfg_fast_is_present(self):
|
|
self.cfg_manager["CFGFast"] = "fake CFGFast"
|
|
|
|
result = self.cfg_manager.get_most_accurate()
|
|
self.assertEqual(result, "fake CFGFast")
|
|
|
|
def test_when_no_cfg_is_present(self):
|
|
result = self.cfg_manager.get_most_accurate()
|
|
self.assertEqual(result, None)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
main()
|