mirror of
https://github.com/Yuyi-Oak/BlueArchiveToolkit.git
synced 2026-07-22 05:25:14 +08:00
Add the production-facing official update service and bat-official-sync watch CLI for unattended resource synchronization. Support launcher-resource discovery without installing the launcher, remote marker snapshots, local manifest audit and repair, official seed hash validation, bootstrap caching, richer Addressables coverage, SQLite resource persistence, and FFI JSON helpers.
25 lines
1.0 KiB
Rust
25 lines
1.0 KiB
Rust
use bat_adapters::manifest::ManifestDriverRegistry;
|
|
|
|
#[tokio::test]
|
|
#[ignore = "requires BAT_REAL_ADDRESSABLES_CATALOG pointing at a local catalog_Remote.json"]
|
|
async fn parses_local_real_addressables_catalog() {
|
|
let path = std::env::var("BAT_REAL_ADDRESSABLES_CATALOG")
|
|
.expect("BAT_REAL_ADDRESSABLES_CATALOG must be set");
|
|
let data = std::fs::read(path).expect("read local Addressables catalog");
|
|
|
|
let manifest = ManifestDriverRegistry::with_defaults()
|
|
.parse(&data)
|
|
.await
|
|
.expect("parse local Addressables catalog");
|
|
|
|
assert_eq!(
|
|
manifest.metadata.locator_id.as_deref(),
|
|
Some("AddressablesMainContentCatalog")
|
|
);
|
|
assert!(manifest.resources.len() > 1_000);
|
|
assert!(manifest.metadata.extra.contains_key("internal_id_count"));
|
|
assert!(manifest.metadata.extra.contains_key("key_object_count"));
|
|
assert!(manifest.metadata.extra.contains_key("bucket_record_count"));
|
|
assert!(manifest.metadata.extra.contains_key("entry_record_count"));
|
|
}
|