Luigit
repositories / termux-janitor

termux-janitor

Interactive cleanup assistant for Termux: transparent, safe, confirmed disk reclamation.

owned by admin

spec/fixtures/adapters/android_allowlist.md

Raw
Rendered preview

Android package allowlist

Fixture: fixture-android-allowlist@1

Given

The generated specification projection contains the Android package registry.

When

The fixture inspects the generated package identities and roles.

Required invariants

  • INV-ANDROID-ALLOWLIST-IDENTITIES: Every version 1 Android Termux package identifier is present exactly once.
  • INV-ANDROID-ALLOWLIST-ROLES: com.termux is the base package and every other allowlisted identifier is an add-on.

Forbidden effects

  • NO-ANDROID-ALLOWLIST-BASE-ADDON: The generated allowlist never marks com.termux as an add-on.

Instrumentation

try fixture.given_generated_android_allowlist();
try fixture.when_inspect_android_allowlist();
try fixture.then_inv_android_allowlist_identities();
try fixture.then_inv_android_allowlist_roles();
try fixture.forbid_no_android_allowlist_base_addon();

Variations

Malformed registries and incorrect requirement references are covered by product-registry unit validation.

Limitations

This fixture verifies generated registry data. It does not prove Android package-manager behavior, installed state, or system confirmation outcomes.

# Android package allowlist

**Fixture:** `fixture-android-allowlist@1`

## Given

The generated specification projection contains the Android package registry.

## When

The fixture inspects the generated package identities and roles.

## Required invariants

- **`INV-ANDROID-ALLOWLIST-IDENTITIES`:** Every version 1 Android Termux package identifier is present exactly once.
- **`INV-ANDROID-ALLOWLIST-ROLES`:** `com.termux` is the base package and every other allowlisted identifier is an add-on.

## Forbidden effects

- **`NO-ANDROID-ALLOWLIST-BASE-ADDON`:** The generated allowlist never marks `com.termux` as an add-on.

## Instrumentation

```zig tj-test
try fixture.given_generated_android_allowlist();
try fixture.when_inspect_android_allowlist();
try fixture.then_inv_android_allowlist_identities();
try fixture.then_inv_android_allowlist_roles();
try fixture.forbid_no_android_allowlist_base_addon();
```

## Variations

Malformed registries and incorrect requirement references are covered by product-registry unit validation.

## Limitations

This fixture verifies generated registry data. It does not prove Android package-manager behavior,
installed state, or system confirmation outcomes.