Corrige l'action "Modifier une variable" sans effet en aperçu créateur
Build and deploy / test-python (push) Successful in 5m47s
Build and deploy / test-js (push) Successful in 51s
Build and deploy / build-and-push (push) Skipped
Build and deploy / deploy (push) Skipped

compute-operation.js/apply-actions.js n'étaient chargés que dans le
paquet SCORM exporté (offline_mode) ; en aperçu créateur (/game/<slug>/play),
forgeApplyVariableActionOffline était donc absente et l'action ne modifiait
rien. Charge les deux scripts inconditionnellement dans play.html.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
william
2026-09-07 22:24:47 +02:00
co-authored by Claude Sonnet 5
parent d664ed5637
commit ab6635eee0
2 changed files with 16 additions and 1 deletions
+1 -1
View File
@@ -163,9 +163,9 @@
</script>
<script src="{{ asset_url('js/play/screens.js') }}"></script>
<script src="{{ asset_url('js/play/conditions.js') }}"></script>
{% if offline_mode %}
<script src="{{ asset_url('js/play/offline/compute-operation.js') }}"></script>
<script src="{{ asset_url('js/play/offline/apply-actions.js') }}"></script>
{% if offline_mode %}
<script src="{{ asset_url('js/play/offline/filter-repeater-rows.js') }}"></script>
<script src="{{ asset_url('js/play/offline/visibility-condition.js') }}"></script>
<script src="{{ asset_url('js/play/offline/render-jauge.js') }}"></script>
+15
View File
@@ -357,3 +357,18 @@ def test_build_collision_rule_objects_excludes_the_player(client, tmp_game_slug_
ids = [o["id"] for o in rule_objects]
assert enemy_id in ids
assert player_id not in ids
def test_game_play_online_route_loads_the_scripts_that_apply_a_variable_action(client, tmp_game_slug_cleanup):
"""Bug corrigé : compute-operation.js/apply-actions.js (qui portent
forgeApplyVariableActionOffline, appelée par collision-rules-controller.js
pour l'action "Modifier une variable") n'étaient chargés QUE derrière
`{% if offline_mode %}` dans templates/play.html — en aperçu créateur
(/game/<slug>/play, jamais offline_mode), l'action ne faisait donc
RIEN (fonction absente). Les deux scripts doivent être chargés
inconditionnellement (voir aussi test_export_scorm.py, qui vérifie
qu'ils restent bien présents dans le paquet exporté)."""
slug, _ = _create_jeu2d_game(client, tmp_game_slug_cleanup)
html = client.get(f"/game/{slug}/play").data.decode()
assert 'src="/static/js/play/offline/compute-operation.js"' in html
assert 'src="/static/js/play/offline/apply-actions.js"' in html