test(fls): the Java oracle opens files as FILIUS does (M8)

FlsOracle now loads through SzenarioVerwaltung.laden, FILIUS's full
loading path: the archive unpacked, the project's own applications copied
where FILIUS's class loader finds them, then the configuration.
--network keeps the configuration-only load (netzwerkLaden).

On the corpus this changes two files: anwendung_komplett.fls and
multicast_server.fls then have their own applications (Accumulator,
Broadcast) installed. Java's views of the written and the exported files
are byte-equal to before: Java-FILIUS 2.14 opens our exports, with the
classes they carry, as it opens a file of its own, and sees what it sees
in the original. Until own applications on hosts are written (B2), the
reader, writer and export tests leave them out (test/ownApplications.ts);
a test checks that only those two files are touched.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-09-30 09:32:24 +00:00
co-authored by Claude Opus 5.5
parent 75c3da2bd1
commit 95c5b7d97b
8 changed files with 99 additions and 9 deletions
+11 -2
View File
@@ -20,8 +20,17 @@ Braucht JDK 17+, Maven und `xvfb-run`. Filius öffnet beim Laden sein
Hauptfenster (`Information.reset` → `JMainFrame`), deshalb läuft es an einem
virtuellen Bildschirm statt „headless".
* Gelesen wird über Filius' eigene, private Lademethode
`SzenarioVerwaltung.netzwerkLaden` (per Reflection) — Javas Weg, kein Nachbau.
* Gelesen wird so, wie Filius eine Datei öffnet: `SzenarioVerwaltung.laden`
entpackt das Archiv, kopiert die eigenen Anwendungen
(`projekt/anwendungen`) dorthin, wo Filius' Klassenlader sucht, und lädt
dann die Konfiguration — Javas Weg, kein Nachbau (seit 30.09.2026, M8).
`--network` lädt nur die Konfiguration über die private Methode
`netzwerkLaden` (per Reflection), wie vorher. Der Unterschied am Korpus:
In `anwendung_komplett.fls` und `multicast_server.fls` sind dann die
eigenen Anwendungen `Accumulator` und `Broadcast` installiert. Filius'
Klassenlader ist ein Singleton: Eine einmal geladene eigene Klasse bleibt
für die übrigen Dateien desselben Laufs geladen. Am Korpus stört das
nicht, denn keine Datei nutzt eine Klasse, die sie nicht mitbringt.
* Stand: `gitlab.com/filius1/filius` @ `6640354` (2.14.0), wird beim ersten
Lauf nach `.upstream/` geholt und gebaut.
* **Gewürfeltes:** Was nicht in der Datei steht, würfelt Filius zum Teil