mirror of
https://github.com/kuhyx/testsAndMisc-archive.git
synced 2026-11-10 19:07:06 +01:00
Format last three markdown files; cap billsplit's Android build memory
Brings the repo to prettier-clean across all 525 tracked md/json/yaml files. The markdown edits are cosmetic: escaping `L*` so it stops rendering as emphasis, normalising `*em*` to `_em_`, and aligning tables. billsplit/android/gradle.properties shipped from the Flutter template asking for `-Xmx8G -XX:MaxMetaspaceSize=4G` — more than this machine has. Lowered to 768m/512m and, more importantly, cut the number of JVMs: Kotlin compiles in-process, no persistent daemon, no parallel execution, one worker. Also repairs a regression an earlier prettier pass introduced. That pass pretty-printed test/fixtures/sample_receipt.json, but `accepts bare JPK payload and bare JWS token` reads the fixture as raw TEXT with a regex matching `"data":"..."` with no space after the colon. The inserted space made the match null and the null-check operator threw. Comparing the parsed JSON for equality had passed and proved nothing about that raw-text contract. The fixture is restored to its original minified bytes — a real e-paragon arrives as single-line JSON — and test/fixtures/ is now in .prettierignore so captured payloads stay byte-faithful. The regex also tolerates whitespace now and asserts the match is non-null with a reason, so the same change would fail readably instead of crashing. Verified against both the minified and the pretty-printed fixture. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
4dd582a1df
commit
4ecf6ad594
@ -1,6 +1,24 @@
|
||||
org.gradle.jvmargs=-Xmx8G -XX:MaxMetaspaceSize=4G -XX:ReservedCodeCacheSize=512m -XX:+HeapDumpOnOutOfMemoryError
|
||||
# Memory budget. The Flutter template ships `-Xmx8G -XX:MaxMetaspaceSize=4G`
|
||||
# here, which asks for more than this 7.6 GB machine has and got a whole
|
||||
# session OOM-killed. What actually brings the footprint down is cutting the
|
||||
# NUMBER of JVMs, not just the heap: without these flags Gradle runs a daemon
|
||||
# plus a separate Kotlin compile daemon plus workers, each with its own heap.
|
||||
#
|
||||
# Budget for anything run on this machine is <= 2 GB. Verify with PSS summed
|
||||
# from /proc/<pid>/smaps_rollup across the build's own processes — system-wide
|
||||
# "used" includes everything else, and RSS double-counts shared pages.
|
||||
org.gradle.jvmargs=-Xmx768m -XX:MaxMetaspaceSize=512m -XX:ReservedCodeCacheSize=128m -XX:+HeapDumpOnOutOfMemoryError
|
||||
# Compile Kotlin inside the Gradle process instead of spawning a second daemon.
|
||||
kotlin.compiler.execution.strategy=in-process
|
||||
# No persistent daemon, no parallel project execution, one worker.
|
||||
org.gradle.daemon=false
|
||||
org.gradle.parallel=false
|
||||
org.gradle.workers.max=1
|
||||
|
||||
android.useAndroidX=true
|
||||
# This newDsl flag was added by the Flutter template
|
||||
android.newDsl=false
|
||||
# This builtInKotlin flag was added by the Flutter template
|
||||
# This builtInKotlin flag was added by the Flutter template. Kept false to
|
||||
# match every sibling app (todo, habit_stack, home_inventory, diet_guard_app),
|
||||
# which all build fine on this same AGP 9.0.1 / Gradle 9.1.0 pair.
|
||||
android.builtInKotlin=false
|
||||
|
||||
@ -63,8 +63,12 @@ void main() {
|
||||
test('accepts bare JPK payload and bare JWS token', () {
|
||||
final res = parseEParagonDetailed(fixture);
|
||||
expect(res.receipt.items, isNotEmpty);
|
||||
// Raw JWS from the wrapper should parse identically.
|
||||
final jws = RegExp('"data":"([^"]+)"').firstMatch(fixture)!.group(1)!;
|
||||
// Raw JWS from the wrapper should parse identically. Tolerate whitespace
|
||||
// around the colon: the fixture is minified as the device emits it, but a
|
||||
// pretty-printed payload is equally valid JSON and must not fail here.
|
||||
final match = RegExp(r'"data"\s*:\s*"([^"]+)"').firstMatch(fixture);
|
||||
expect(match, isNotNull, reason: 'fixture must carry a "data" JWS field');
|
||||
final jws = match!.group(1)!;
|
||||
final fromJws = parseEParagon(jws);
|
||||
expect(fromJws.items.length, res.receipt.items.length);
|
||||
});
|
||||
|
||||
780
billsplit/test/fixtures/sample_receipt.json
vendored
780
billsplit/test/fixtures/sample_receipt.json
vendored
File diff suppressed because one or more lines are too long
Loading…
Reference in New Issue
Block a user