mirror of
https://github.com/mvt-project/mvt.git
synced 2026-09-03 08:30:51 +02:00
check-iocs re-checks the results a previous run stored, so its module list is every module of the platform that could have written one. Each platform's CLI composed that list inline, concatenating the families by hand, so the list existed only inside the click callback: anything else needing to know what check-iocs runs had to build its own copy, and the two could drift apart without a test noticing. Give each platform a command_modules.py holding the one list, and have its CLI assign it. The modules check-iocs runs are unchanged, and a test pins each list to the families it is composed of.
28 lines
1.2 KiB
Python
28 lines
1.2 KiB
Python
# Mobile Verification Toolkit (MVT)
|
|
# Copyright (c) 2021-2026 The MVT Authors.
|
|
# Use of this software is governed by the MVT License 1.1 that can be found at
|
|
# https://license.mvt.re/1.1/
|
|
|
|
from mvt.android.command_modules import ANDROID_CHECK_IOCS_MODULES
|
|
from mvt.android.modules.androidqf import ANDROIDQF_MODULES
|
|
from mvt.android.modules.backup import BACKUP_MODULES as ANDROID_BACKUP_MODULES
|
|
from mvt.android.modules.bugreport import BUGREPORT_MODULES
|
|
from mvt.android.modules.intrusion_logs import INTRUSION_LOGS_MODULES
|
|
from mvt.ios.command_modules import IOS_CHECK_IOCS_MODULES
|
|
from mvt.ios.modules.backup import BACKUP_MODULES as IOS_BACKUP_MODULES
|
|
from mvt.ios.modules.fs import FS_MODULES
|
|
from mvt.ios.modules.mixed import MIXED_MODULES
|
|
|
|
|
|
def test_the_check_iocs_lists_are_the_families_of_their_platform():
|
|
# The CLI reads these same lists, so nothing composing one elsewhere can
|
|
# drift from what the command runs. This pins what the lists are composed
|
|
# of.
|
|
assert IOS_CHECK_IOCS_MODULES == IOS_BACKUP_MODULES + FS_MODULES + MIXED_MODULES
|
|
assert ANDROID_CHECK_IOCS_MODULES == (
|
|
ANDROID_BACKUP_MODULES
|
|
+ BUGREPORT_MODULES
|
|
+ ANDROIDQF_MODULES
|
|
+ INTRUSION_LOGS_MODULES
|
|
)
|