From c87f7d1f7d87ebba65dafea87bd1d02fb9cbe563 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fran=C3=A7ois=20Grand?= <francois.grand@inrae.fr>
Date: Wed, 8 Jun 2022 14:17:34 +0200
Subject: [PATCH] test(e2e): check that running a calculation in solver does
 not modify selected searched parameter

refs #486
---
 e2e/solveur.e2e-spec.ts | 27 ++++++++++++++++++++++++++-
 1 file changed, 26 insertions(+), 1 deletion(-)

diff --git a/e2e/solveur.e2e-spec.ts b/e2e/solveur.e2e-spec.ts
index 3de2651cf..a742f9078 100644
--- a/e2e/solveur.e2e-spec.ts
+++ b/e2e/solveur.e2e-spec.ts
@@ -2,7 +2,7 @@ import { AppPage } from "./app.po";
 import { ListPage } from "./list.po";
 import { CalculatorPage } from "./calculator.po";
 import { Navbar } from "./navbar.po";
-import { browser } from "protractor";
+import { browser, by, element } from "protractor";
 import { SideNav } from "./sidenav.po";
 import { PreferencesPage } from "./preferences.po";
 
@@ -145,4 +145,29 @@ describe("Solveur - ", () => {
         const hasResultsClone2 = await calcPage.hasResults();
         expect(hasResultsClone2).toBe(true);
     });
+
+    it("channel flow example > solver > change searched parameter > run calculation", async () => {
+        // open "channel flow with hydraulic structures" example
+        const examples = await element.all(by.css("#examples-list .load-example"));
+        await examples[1].click();
+        await browser.sleep(500);
+
+        // select solver tab
+        await navbar.clickCalculatorTab(3);
+        await browser.sleep(200);
+
+        // modify searched parameter
+        const sel = calcPage.getSelectById("select_searched_param");
+        await calcPage.changeSelectValue(sel, 11);
+        await browser.sleep(100);
+        const selText = await calcPage.getSelectValueText(sel);
+
+        // run calculation
+        const calcButton = calcPage.getCalculateButton();
+        await calcButton.click();
+        await browser.sleep(500);
+
+        // check "search parameter" value has not changed
+        expect(await calcPage.getSelectValueText(sel)).toEqual(selText);
+    });
 });
-- 
GitLab