Corrige l'action "Modifier une variable" sans effet en aperçu créateur
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:
co-authored by
Claude Sonnet 5
parent
d664ed5637
commit
ab6635eee0
+1
-1
@@ -163,9 +163,9 @@
|
|||||||
</script>
|
</script>
|
||||||
<script src="{{ asset_url('js/play/screens.js') }}"></script>
|
<script src="{{ asset_url('js/play/screens.js') }}"></script>
|
||||||
<script src="{{ asset_url('js/play/conditions.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/compute-operation.js') }}"></script>
|
||||||
<script src="{{ asset_url('js/play/offline/apply-actions.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/filter-repeater-rows.js') }}"></script>
|
||||||
<script src="{{ asset_url('js/play/offline/visibility-condition.js') }}"></script>
|
<script src="{{ asset_url('js/play/offline/visibility-condition.js') }}"></script>
|
||||||
<script src="{{ asset_url('js/play/offline/render-jauge.js') }}"></script>
|
<script src="{{ asset_url('js/play/offline/render-jauge.js') }}"></script>
|
||||||
|
|||||||
@@ -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]
|
ids = [o["id"] for o in rule_objects]
|
||||||
assert enemy_id in ids
|
assert enemy_id in ids
|
||||||
assert player_id not 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
|
||||||
|
|||||||
Reference in New Issue
Block a user