| backup_test_base.py |
Base class for backup/recovery marionette tests.
Provides common setup, teardown, and helper methods for testing
backup and recovery scenarios involving selectable profiles.
|
13477 |
- |
| compat-files |
|
|
- |
| compat_config.py |
Per-version configuration for backup compatibility tests.
Each version entry defines the fixture files and test hooks for that backup
format version. The keys are:
- legacy_backup_file / selectable_backup_file: Filenames of pre-generated
backup fixtures used for restore testing. None if that backup type didn't
exist for the version.
- recovery_password: The password used to encrypt/decrypt the fixture.
- extra_data_legacy / extra_data_selectable: Lists of feature names whose
test data should be added when generating fixtures. Each entry "foo"
maps to a _add_foo_data(version) method on the generator class.
"legacy" entries are added to legacy-only fixtures; "selectable" entries
are added to selectable profile fixtures (along with any legacy entries).
- extra_checks_legacy / extra_checks_selectable: Lists of feature names
to verify after restoring a fixture. Each entry "foo" maps to a
_verify_foo(version) method on the test class. This allows each version
to declare version-specific assertions beyond the common checks.
|
1983 |
- |
| http2-ca.pem |
|
1042 |
- |
| manifest.toml |
|
1325 |
- |
| test_backup.py |
const { OSKeyStore } = ChromeUtils.importESModule(
"resource://gre/modules/OSKeyStore.sys.mjs"
);
const BACKUP_OSKEYSTORE_LABEL = "test-" + Math.random().toString(36).substr(2);
OSKeyStore.STORE_LABEL = BACKUP_OSKEYSTORE_LABEL;
return BACKUP_OSKEYSTORE_LABEL;
|
34521 |
- |
| test_backup_legacy_to_selectable.py |
Tests that a backup created from a legacy profile (without selectable
profiles enabled) can be successfully recovered in an environment where
selectable profiles ARE enabled.
This verifies that stale selectable profile prefs in the backup are
overwritten with correct values during recovery.
|
4895 |
- |
| test_backup_replace_current_profile.py |
Tests for recovering backups with replaceCurrentProfile=true.
This includes:
1. Verifying the old profile is deleted from the database
2. Verifying metadata (name, avatar, theme) is copied when recovering
a legacy backup into a selectable profile environment
|
10917 |
- |
| test_backup_selectable_to_legacy.py |
Tests that a backup created from a selectable profile can be recovered
into a legacy profile environment, converting it to selectable.
The recovered profile should have the same groupID (storeID) as the
profile group created during conversion.
|
11966 |
- |
| test_backup_selectable_to_selectable.py |
Tests that a backup created from a selectable profile can be recovered
into another selectable profile environment.
The recovered profile should have the same groupID (storeID) as the
profile group we recovered into (not the original backup's storeID).
|
7223 |
- |
| test_compatibility.py |
Tests that backups created with older manifest versions can still be
recovered by the current version of Firefox.
This ensures backward compatibility as the backup schema evolves.
To add a new version:
1. Before bumping SCHEMA_VERSION, run test_generate_backup_fixture.py to create the fixtures
2. Add entry to VERSION_CONFIG in compat_config.py
3. Implement any new _verify_* methods for extra_checks
4. Add test methods: test_recover_vN_backup_selectable / _legacy
|
12524 |
- |