Ajoute l'assistant IA "Ruby" (Claude + Scenario) et corrige plusieurs bugs de la scène
Intègre un chat IA capable de manipuler la scène via les mêmes fonctions que l'éditeur manuel (objets, variables, déclencheurs, images générées), avec conversations multiples par écran façon Claude. Corrige au passage le rafraîchissement pjax hors-ordre, l'onglet IA/déclencheurs vide après sélection d'un objet, la comparaison de booléens dans les conditions, et le blocage du glisser-déposer hors du cadre caméra après un redimensionnement de fond par l'IA. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Sonnet 5
parent
ab6635eee0
commit
b07b231a61
@@ -41,12 +41,29 @@ test('compareValues — repli sur comparaison de chaînes si non numérique', ()
|
||||
assert.equal(compareValues('abc', 'different', 'xyz'), true);
|
||||
});
|
||||
|
||||
test('compareValues — "egal"/"different" sur du texte, insensible à la casse (bug corrigé)', () => {
|
||||
assert.equal(compareValues('Vrai', 'egal', 'vrai'), true);
|
||||
assert.equal(compareValues('VRAI', 'egal', 'vrai'), true);
|
||||
assert.equal(compareValues('Vrai', 'different', 'vrai'), false);
|
||||
assert.equal(compareValues('Vrai', 'egal', 'faux'), false);
|
||||
});
|
||||
|
||||
test('compareValues — champ booléen, vocabulaire oui/non insensible à la casse', () => {
|
||||
assert.equal(compareValues(true, 'egal', 'Oui', 'booleen'), true);
|
||||
assert.equal(compareValues(false, 'egal', 'non', 'booleen'), true);
|
||||
assert.equal(compareValues(true, 'different', 'non', 'booleen'), true);
|
||||
});
|
||||
|
||||
test('compareValues — champ booléen, la valeur RÉELLE stockée en texte "faux" est bien fausse (bug corrigé)', () => {
|
||||
// Une variable booléenne est stockée en texte ("vrai"/"faux") — la
|
||||
// chaîne "faux" est non vide, donc VRAIE au sens JS naïf : sans
|
||||
// normalisation des DEUX côtés, "faux" == "Vrai" ressortait vrai à tort.
|
||||
assert.equal(compareValues('faux', 'egal', 'Vrai', 'booleen'), false);
|
||||
assert.equal(compareValues('faux', 'different', 'Vrai', 'booleen'), true);
|
||||
assert.equal(compareValues('vrai', 'egal', 'Vrai', 'booleen'), true);
|
||||
assert.equal(compareValues('non', 'egal', 'oui', 'booleen'), false);
|
||||
});
|
||||
|
||||
test('resolveVariablePath — chemin vide renvoie la valeur brute', () => {
|
||||
assert.equal(resolveVariablePath('42', ''), '42');
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user