-
Notifications
You must be signed in to change notification settings - Fork 14
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
4 changed files
with
82 additions
and
206 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,123 +1,57 @@ | ||
describe('Flowsheet Output Test', () => { | ||
it('test output page when valid input is solved', () => { | ||
let sc_count = 0 | ||
let sc_count = 1 | ||
|
||
//load webpage | ||
cy.visit('/') | ||
cy.screenshot(sc_count+'_loaded homepage') | ||
sc_count+=1 | ||
cy.load_homepage() | ||
cy.load_ro_flowsheet() | ||
|
||
//click on all flowsheets | ||
// cy.findByText("All Flowsheets").click() | ||
cy.set_ro_flowrate('0.96') | ||
cy.set_ro_flowrate('0.96') | ||
cy.screenshot(sc_count + '_input1') | ||
sc_count += 1 | ||
|
||
//click flowsheet and wait for api response | ||
var flowsheet_name = "RO with energy recovery flowsheet" | ||
cy.intercept({ | ||
method: "GET", | ||
url: "http://localhost:8001/flowsheets/**", | ||
}).as("loadFlowsheet"); | ||
// cy.findByRole('link', { name: flowsheet_name}).click() | ||
cy.findByText(flowsheet_name).click() | ||
cy.wait("@loadFlowsheet"); | ||
cy.screenshot(sc_count+'_loaded flowsheet') | ||
sc_count+=1 | ||
|
||
//enter valid value for recovery rate twice to ensure it registers | ||
// var input_textbox_name = "COD concentration" | ||
var input_textbox_name = "Water mass flowrate" | ||
var input_textbox = cy.findByRole('textbox', { name: input_textbox_name}) | ||
input_textbox.click({force:true}) | ||
input_textbox = cy.findByRole('textbox', { name: input_textbox_name}) | ||
input_textbox.type('1{backspace}{backspace}{backspace}{backspace}0.96') | ||
cy.wait(500) | ||
var input_textbox = cy.findByRole('textbox', { name: input_textbox_name}) | ||
input_textbox.click({force:true}) | ||
input_textbox = cy.findByRole('textbox', { name: input_textbox_name}) | ||
input_textbox.type('1{backspace}{backspace}{backspace}{backspace}0.96') | ||
cy.screenshot(sc_count+'_input1') | ||
sc_count+=1 | ||
|
||
//click on save and wait for api response | ||
// cy.intercept({ | ||
// method: "POST", | ||
// url: "http://localhost:8001/flowsheets/**", | ||
// }).as("saveChanges"); | ||
// cy.findAllByRole('button', { name: /update flowsheet/i}).eq(0).click() | ||
// cy.wait("@saveChanges"); | ||
// cy.screenshot(sc_count+'_saved1') | ||
// sc_count+=1 | ||
|
||
//need to do it twice to ensure changes are saved | ||
//enter valid value for recovery rate | ||
input_textbox = cy.findByRole('textbox', { name: input_textbox_name}) | ||
input_textbox.click({force:true}) | ||
input_textbox = cy.findByRole('textbox', { name: input_textbox_name}) | ||
input_textbox.type('1{backspace}{backspace}{backspace}{backspace}0.96') | ||
cy.wait(500) | ||
var input_textbox = cy.findByRole('textbox', { name: input_textbox_name}) | ||
input_textbox.click({force:true}) | ||
input_textbox = cy.findByRole('textbox', { name: input_textbox_name}) | ||
input_textbox.type('1{backspace}{backspace}{backspace}{backspace}0.96') | ||
cy.screenshot(sc_count+'_input2') | ||
sc_count+=1 | ||
|
||
//click on save and wait for api response | ||
// cy.intercept({ | ||
// method: "POST", | ||
// url: "http://localhost:8001/flowsheets/**", | ||
// }).as("saveChanges"); | ||
// cy.findAllByRole('button', { name: /update flowsheet/i}).eq(0).click() | ||
// cy.wait("@saveChanges"); | ||
// cy.screenshot(sc_count+'_saved2') | ||
// sc_count+=1 | ||
|
||
//click on solve and wait for api response | ||
cy.intercept({ | ||
method: "POST", | ||
url: "http://localhost:8001/flowsheets/**", | ||
}).as("run"); | ||
cy.findAllByRole('button', { name: /run/i}).eq(0).click() | ||
cy.wait("@run"); | ||
cy.screenshot(sc_count+"solved") | ||
sc_count+=1 | ||
cy.set_ro_flowrate('0.96') | ||
cy.set_ro_flowrate('0.96') | ||
cy.screenshot(sc_count + '_input2') | ||
sc_count += 1 | ||
|
||
//find output categories | ||
// cy.findByRole('button', {name: /feed/i}) | ||
// cy.findByRole('button', {name: ""}) | ||
cy.solve_flowsheet() | ||
cy.screenshot(sc_count + "_solved") | ||
sc_count += 1 | ||
|
||
//click save configuration button | ||
// Click save configuration button | ||
cy.findByRole('button', {name: /save configuration/i}).click() | ||
cy.wait(1000) | ||
cy.screenshot(sc_count+'_pre saveConfig') | ||
sc_count+=1 | ||
cy.screenshot(sc_count + '_pre saveConfig') | ||
sc_count += 1 | ||
|
||
//clear preset name and enter new name | ||
// Clear preset name and enter new name | ||
cy.wait(1000) | ||
cy.get('.MuiInput-input').should('be.visible') | ||
cy.get('.MuiInput-input', { timeout: 10000 }).clear({ force: true }) | ||
cy.get('.MuiInput-input', { timeout: 10000 }).type('new_test_configuration', { force: true }) | ||
cy.screenshot(sc_count+'_saveConfig') | ||
sc_count+=1 | ||
cy.get('.MuiInput-input', {timeout: 10000}).clear({force: true}) | ||
cy.get('.MuiInput-input', {timeout: 10000}).type('new_test_configuration', {force: true}) | ||
cy.screenshot(sc_count + '_saveConfig') | ||
sc_count += 1 | ||
|
||
//click on save (config) and wait for api response | ||
// Click on save (config) and wait for api response | ||
cy.intercept({ | ||
method: "POST", | ||
url: "http://localhost:8001/flowsheets/**", | ||
}).as("saveConfig"); | ||
cy.findByRole('button', {name: /save/i}).click() | ||
cy.wait("@saveConfig"); | ||
cy.screenshot(sc_count+'_saved config') | ||
sc_count+=1 | ||
cy.screenshot(sc_count + '_saved config') | ||
sc_count += 1 | ||
|
||
//click compare tab | ||
// Click compare tab | ||
cy.findByRole('tab', {name: /compare/i}).click() | ||
cy.wait(5000) | ||
|
||
//verify that new name is shown in comparison table | ||
// Verify that new name is shown in comparison table | ||
// cy.findAllByRole('button', {name: /new_test_configuration/i}) | ||
cy.findAllByRole('tabpanel', {name: /compare/i}) | ||
|
||
cy.screenshot(sc_count+'_end-test') | ||
cy.screenshot(sc_count + '_end-test') | ||
}) | ||
|
||
}) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,90 +1,19 @@ | ||
describe('Invalid Input Test', () => { | ||
it('test negative input for recovery rate', () => { | ||
let sc_count = 0 | ||
let sc_count = 1; | ||
|
||
//load webpage | ||
cy.visit('/') | ||
cy.screenshot(sc_count+'_loaded homepage') | ||
sc_count+=1 | ||
cy.load_homepage(); | ||
cy.load_ro_flowsheet(); | ||
|
||
//click on all flowsheets | ||
// cy.findByText("All Flowsheets").click() | ||
|
||
//click flowsheet and wait for api response | ||
var flowsheet_name = "RO with energy recovery flowsheet" | ||
cy.intercept({ | ||
method: "GET", | ||
url: "http://localhost:8001/flowsheets/**", | ||
}).as("loadFlowsheet"); | ||
// cy.findByRole('link', { name: flowsheet_name}).click() | ||
cy.findByText(flowsheet_name).click() | ||
cy.wait("@loadFlowsheet"); | ||
cy.screenshot(sc_count+'_loaded flowsheet') | ||
sc_count+=1 | ||
cy.set_ro_flowrate('dfas'); | ||
cy.screenshot(sc_count + '_input1'); | ||
sc_count += 1; | ||
|
||
//enter negative value for recovery rate twice to ensure it is entered | ||
var input_textbox_name = "Water mass flowrate" | ||
var input_textbox = cy.findByRole('textbox', { name: input_textbox_name}) | ||
input_textbox.click({force:true}) | ||
input_textbox = cy.findByRole('textbox', { name: input_textbox_name}) | ||
input_textbox.type('1{backspace}{backspace}{backspace}{backspace}dfas') | ||
cy.wait(500) | ||
var input_textbox = cy.findByRole('textbox', { name: input_textbox_name}) | ||
input_textbox.click({force:true}) | ||
input_textbox = cy.findByRole('textbox', { name: input_textbox_name}) | ||
input_textbox.type('1{backspace}{backspace}{backspace}{backspace}dfas') | ||
cy.screenshot(sc_count+'_input1') | ||
sc_count+=1 | ||
cy.set_ro_flowrate(cy, '-10'); | ||
cy.screenshot(sc_count + '_input2'); | ||
sc_count += 1; | ||
|
||
//click on save and wait for api response | ||
// cy.intercept({ | ||
// method: "POST", | ||
// url: "http://localhost:8001/flowsheets/**", | ||
// }).as("saveChanges"); | ||
// cy.findAllByRole('button', { name: /save/i}).eq(0).click() | ||
// cy.wait("@saveChanges"); | ||
// cy.screenshot(sc_count+'_saved1') | ||
// sc_count+=1 | ||
|
||
// do it all twice to ensure it goes through | ||
//enter negative value for recovery rate | ||
var input_textbox = cy.findByRole('textbox', { name: input_textbox_name}) | ||
input_textbox.click({force:true}) | ||
input_textbox = cy.findByRole('textbox', { name: input_textbox_name}) | ||
input_textbox.type('1{backspace}{backspace}{backspace}{backspace}dfas') | ||
cy.wait(500) | ||
var input_textbox = cy.findByRole('textbox', { name: input_textbox_name}) | ||
input_textbox.click({force:true}) | ||
input_textbox = cy.findByRole('textbox', { name: input_textbox_name}) | ||
input_textbox.type('1{backspace}{backspace}{backspace}{backspace}dfas') | ||
cy.screenshot(sc_count+'_negative, invalid input2') | ||
sc_count+=1 | ||
|
||
//click on save and wait for api response | ||
// cy.intercept({ | ||
// method: "POST", | ||
// url: "http://localhost:8001/flowsheets/**", | ||
// }).as("saveChanges"); | ||
// cy.findAllByRole('button', { name: /update flowsheet/i}).eq(0).click() | ||
// cy.wait("@saveChanges").its('response.statusCode').should('eq', 400) | ||
// cy.screenshot(sc_count+'_saved1') | ||
// sc_count+=1 | ||
|
||
// //click on solve and wait for api response | ||
// cy.intercept({ | ||
// method: "GET", | ||
// url: "http://localhost:8001/flowsheets/**", | ||
// }).as("solve"); | ||
// cy.findAllByRole('button', { name: /solve/i}).eq(0).click() | ||
// cy.wait("@solve"); | ||
// cy.screenshot(sc_count+'_solved') | ||
// sc_count+=1 | ||
|
||
// //find error message | ||
// cy.findByRole('alert') | ||
|
||
cy.screenshot(sc_count+'_end-test') | ||
sc_count+=1 | ||
cy.screenshot(sc_count + '_end-test'); | ||
}) | ||
|
||
}) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,35 @@ | ||
import "@testing-library/cypress/add-commands" | ||
import '@testing-library/cypress/add-commands'; | ||
|
||
Cypress.Commands.add('load_homepage', () => { | ||
cy.visit('/') | ||
cy.screenshot('loaded homepage') | ||
}) | ||
|
||
Cypress.Commands.add('load_ro_flowsheet', () => { | ||
const flowsheet_name = 'RO with energy recovery flowsheet'; | ||
cy.intercept({ | ||
method: 'GET', | ||
url: 'http://localhost:8001/flowsheets/**', | ||
}).as('loadFlowsheet'); | ||
cy.findByText(flowsheet_name).click(); | ||
cy.wait('@loadFlowsheet'); | ||
cy.screenshot('loaded flowsheet'); | ||
}) | ||
|
||
Cypress.Commands.add('set_ro_flowrate', (value) => { | ||
let input_textbox_name = 'Water mass flowrate'; | ||
let input_textbox = cy.findByRole('textbox', {name: input_textbox_name}); | ||
input_textbox.click({force:true}); | ||
input_textbox = cy.findByRole('textbox', {name: input_textbox_name}); | ||
input_textbox.type('{backspace}{backspace}{backspace}{backspace}' + value); | ||
cy.wait(500); | ||
}) | ||
|
||
Cypress.Commands.add('solve_flowsheet', () => { | ||
cy.intercept({ | ||
method: 'POST', | ||
url: 'http://localhost:8001/flowsheets/**', | ||
}).as('run'); | ||
cy.findAllByRole('button', {name: /run/i}).eq(0).click(); | ||
cy.wait('@run'); | ||
}) |