sfml/angelscript/threejs/pygame: unit tests + patches + whitepaper (115 sites, 48 ecosystems)

SFML 5 defects: VideoMode dedup x3 (139x), allWindows erase (1001x), GL ext (149x)
AngelScript 3 defects: FindNewOwner (100x), CompileSwitch (250x)
Three.js 5 defects: WebGL binding (22x), StackNode filter (1875x), NodeBuilder (517x)
pygame 4 defects: remove_internal (3001x), spritecollide dokill (3001x), switch_layer (3001x)

Whitepaper: 98→115 sites, 44→48 ecosystems
All unit tests pass: 6/6 each
This commit is contained in:
russell@unturf.com 2026-03-27 11:57:12 -04:00
parent 442a6156e3
commit 6bafc7f5e9
17 changed files with 1189 additions and 18 deletions

View file

@ -68,6 +68,7 @@ SUPPORT_ALL := support/TarjanAlgorithm.java \
unit-tinkerpop-0001 \
unit-godot \
unit-dry \
unit-sfml unit-angelscript unit-threejs unit-pygame \
bench-mc-server bench-max bench-gumyum bench-everything bench-loadsim bench-elytra \
bench-unpatched bench-mitigated bench-enriched bench-three-tier \
play-unpatched play-mitigated play-enriched \
@ -94,7 +95,8 @@ unit: unit-tarjan unit-findnode unit-closure unit-toposort unit-deplist unit-bou
unit-networkx unit-jenkins unit-maven-extra \
unit-tinkerpop-0001 \
unit-godot \
unit-dry
unit-dry \
unit-sfml unit-angelscript unit-threejs unit-pygame
unit-tarjan: unit/TarjanComplexityTest.class
@echo ""
@ -519,6 +521,38 @@ unit-dry: unit/DryEngineTest.class
@echo "=== UNIT dry-0001/0002: Dry/Urho3D ListView (893x), event unsub (48x) ==="
$(JAVA) -ea -cp . unit.DryEngineTest
unit/SFMLTest.class: ../defects/sfml/unit/SFMLTest.java
$(JAVAC) -cp . -d . ../defects/sfml/unit/SFMLTest.java
unit-sfml: unit/SFMLTest.class
@echo ""
@echo "=== UNIT sfml-0001..0005: SFML VideoMode (139x), window (1001x), GL ext (149x) ==="
$(JAVA) -ea -cp . unit.SFMLTest
unit/AngelScriptTest.class: ../defects/angelscript/unit/AngelScriptTest.java
$(JAVAC) -cp . -d . ../defects/angelscript/unit/AngelScriptTest.java
unit-angelscript: unit/AngelScriptTest.class
@echo ""
@echo "=== UNIT angelscript-0001..0003: AngelScript shared-type (100x), switch (250x) ==="
$(JAVA) -ea -cp . unit.AngelScriptTest
unit/ThreeJSTest.class: ../defects/threejs/unit/ThreeJSTest.java
$(JAVAC) -cp . -d . ../defects/threejs/unit/ThreeJSTest.java
unit-threejs: unit/ThreeJSTest.class
@echo ""
@echo "=== UNIT threejs-0001..0005: Three.js indexOf (22x/1875x/517x) ==="
$(JAVA) -ea -cp . unit.ThreeJSTest
unit/PygameTest.class: ../defects/pygame/unit/PygameTest.java
$(JAVAC) -cp . -d . ../defects/pygame/unit/PygameTest.java
unit-pygame: unit/PygameTest.class
@echo ""
@echo "=== UNIT pygame-0001..0004: pygame sprite remove (3001x), kill (3001x), layer (3001x) ==="
$(JAVA) -ea -cp . unit.PygameTest
# ── Integration ───────────────────────────────────────────────────────────────
# Runs against the installed JDK's compiled GraphUtils.
# Proves real timing growth and confirms algorithm correctness.