diff --git a/e2e/compute-reset-chained-links.e2e-spec.ts b/e2e/compute-reset-chained-links.e2e-spec.ts index 17a716766fc0cb7e5c6a8286de5f2a62d119059a..44fb7022bd0adbcb7856212eaadfd73775d3dbfe 100644 --- a/e2e/compute-reset-chained-links.e2e-spec.ts +++ b/e2e/compute-reset-chained-links.e2e-spec.ts @@ -126,7 +126,7 @@ describe("ngHyd − compute then reset chained results", () => { expect(await navbar.getAllCalculatorTabs().count()).toBe(3); // 1. get top most module - await navbar.clickCalculatorTabForUid("YWFqMD"); + await navbar.clickCalculatorTabForUid("YjJua2"); // check that "compute" button is active const calcButton = calcPage.getCalculateButton(); @@ -143,7 +143,7 @@ describe("ngHyd − compute then reset chained results", () => { } // 2. get bottom-most module - await navbar.clickCalculatorTabForUid("ZHd0ej"); + await navbar.clickCalculatorTabForUid("OGd2em"); // modify any input (for ex. "Ks") await calcPage.getInputById("Ks").clear(); diff --git a/e2e/session-cascade-results.json b/e2e/session-cascade-results.json index 9825f301c4561fd08fab26df548de94c6b3961c4..e0284cc662a5bb8c051caff035859a89c4b36be1 100644 --- a/e2e/session-cascade-results.json +++ b/e2e/session-cascade-results.json @@ -1,7 +1,7 @@ { "session": [ { - "uid": "YWFqMD", + "uid": "YjJua2", "props": { "calcType": 11, "nodeType": 0 @@ -37,7 +37,7 @@ { "symbol": "Q", "mode": "LINK", - "targetNub": "MXB0en", + "targetNub": "eW1hY3", "targetParam": "Q" }, { @@ -73,7 +73,7 @@ ] }, { - "uid": "MXB0en", + "uid": "eW1hY3", "props": { "calcType": 3, "nodeType": 2 @@ -103,14 +103,14 @@ }, { "symbol": "YB", - "mode": "LINK", - "targetNub": "ZHd0ej", - "targetParam": "Yco" + "mode": "SINGLE", + "value": 1 }, { "symbol": "Y", - "mode": "SINGLE", - "value": 0.8 + "mode": "LINK", + "targetNub": "OGd2em", + "targetParam": "Yco" }, { "symbol": "LargeurBerge", @@ -120,14 +120,14 @@ ] }, { - "uid": "ZHd0ej", + "uid": "OGd2em", "props": { - "methodeResolution": 0, - "calcType": 4, + "varCalc": "Hs", + "calcType": 2, "nodeType": 2 }, "meta": { - "title": "Remous" + "title": "Sec. param." }, "parameters": [ { @@ -135,26 +135,6 @@ "mode": "SINGLE", "value": 0.0001 }, - { - "symbol": "Yamont", - "mode": "SINGLE", - "value": 0.15 - }, - { - "symbol": "Yaval", - "mode": "SINGLE", - "value": 0.4 - }, - { - "symbol": "Long", - "mode": "SINGLE", - "value": 100 - }, - { - "symbol": "Dx", - "mode": "SINGLE", - "value": 5 - }, { "symbol": "Ks", "mode": "SINGLE", @@ -178,7 +158,7 @@ { "symbol": "Y", "mode": "SINGLE", - "value": 0.5643749999999994 + "value": 0.8 }, { "symbol": "LargeurBerge", diff --git a/src/app/services/formulaire/formulaire.service.ts b/src/app/services/formulaire/formulaire.service.ts index 49533c522cf8d09cceba9f2c675fb3fbe3edf66f..fe3e0bfe647b01192068444a2a8d6b39475d793c 100644 --- a/src/app/services/formulaire/formulaire.service.ts +++ b/src/app/services/formulaire/formulaire.service.ts @@ -617,8 +617,10 @@ export class FormulaireService extends Observable { for (const dn of dependingNubs) { if (! visited.includes(dn.uid)) { const form = this.getFormulaireFromNubId(dn.uid); - if (form.hasResults) { - form.resetResults(visited); + const hadResults = form.hasResults; + // form might not have a result, but still have another form depending on it ! + form.resetResults(visited); + if (hadResults) { if (notify) { this.notificationsService.notify( this.intlService.localizeText("INFO_SNACKBAR_RESULTS_INVALIDATED") + " " + form.calculatorName,