WIP: #6943 improve_sections_and_e2e #998
|
@ -0,0 +1,42 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Verificar si se pasaron los parámetros correctos
|
||||||
|
if [ "$#" -ne 3 ]; then
|
||||||
|
echo "Uso: $0 <id_tarea> <modulo> <e2e_path>"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Asignar parámetros a variables
|
||||||
|
ID_TAREA=$1
|
||||||
|
MODULO=$2
|
||||||
|
E2E_PATH=$3
|
||||||
|
|
||||||
|
# Nombre de la rama
|
||||||
|
BRANCH_NAME="${ID_TAREA}_${MODULO}_missing_e2e"
|
||||||
|
|
||||||
|
# Paso 1: Crear la rama local a partir de dev
|
||||||
|
git checkout dev
|
||||||
|
git pull origin dev
|
||||||
|
git checkout -b "${BRANCH_NAME}"
|
||||||
|
|
||||||
|
# Paso 2: Copiar archivos al directorio destino
|
||||||
|
SOURCE_DIR="../salix/e2e/paths/${E2E_PATH}"
|
||||||
|
DEST_DIR="../test-processing/tests"
|
||||||
|
|
||||||
|
mkdir -p "${DEST_DIR}"
|
||||||
|
cp -r "${SOURCE_DIR}"/* "${DEST_DIR}"
|
||||||
|
|
||||||
|
# Paso 3: Ejecutar el comando node
|
||||||
|
cd ../test-processing
|
||||||
|
PROCESS_SCRIPT="../test-processing/index.js"
|
||||||
|
node "${PROCESS_SCRIPT}"
|
||||||
|
cd ../salix-front
|
||||||
|
|
||||||
|
# Paso 4: Copiar archivos procesados al destino Cypress
|
||||||
|
PROCESSED_DIR="../test-processing/processedTests"
|
||||||
|
CYPRESS_DEST="./test/cypress/integration/${MODULO}"
|
||||||
|
mkdir -p "${CYPRESS_DEST}"
|
||||||
|
cp -r "${PROCESSED_DIR}"/* "${CYPRESS_DEST}"
|
||||||
|
|
||||||
|
# Confirmación final
|
||||||
|
echo "Flujo completado exitosamente. Revisa los resultados."
|
|
@ -0,0 +1,43 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Verificar si se pasaron los parámetros correctos
|
||||||
|
if [ "$#" -ne 3 ]; then
|
||||||
|
echo "Uso: $0 <id_tarea> <modulo> <e2e_path>"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Asignar parámetros a variables
|
||||||
|
ID_TAREA=$1
|
||||||
|
MODULO=$2
|
||||||
|
E2E_PATH=$3
|
||||||
|
|
||||||
|
# Nombre de la rama
|
||||||
|
BRANCH_NAME="${ID_TAREA}_${MODULO}_missing_e2e"
|
||||||
|
|
||||||
|
# Paso 1: Crear la rama local a partir de dev
|
||||||
|
echo "git checkout dev"
|
||||||
|
echo "git pull origin dev"
|
||||||
|
echo "git checkout -b ${BRANCH_NAME}"
|
||||||
|
|
||||||
|
# Paso 2: Copiar archivos al directorio destino
|
||||||
|
SOURCE_DIR="../salix/e2e/paths/${E2E_PATH}"
|
||||||
|
DEST_DIR="../test-processing/tests"
|
||||||
|
|
||||||
|
echo "mkdir -p ${DEST_DIR}"
|
||||||
|
echo "cp -r ${SOURCE_DIR}/* ${DEST_DIR}"
|
||||||
|
|
||||||
|
# Paso 3: Ejecutar el comando node
|
||||||
|
echo "cd ../test-processing"
|
||||||
|
PROCESS_SCRIPT="../test-processing/index.js"
|
||||||
|
echo "node ${PROCESS_SCRIPT}"
|
||||||
|
echo "cd ../salix-front"
|
||||||
|
|
||||||
|
# Paso 4: Copiar archivos procesados al destino Cypress
|
||||||
|
PROCESSED_DIR="../test-processing/processedTests"
|
||||||
|
CYPRESS_DEST="./test/cypress/integration/${MODULO}"
|
||||||
|
|
||||||
|
echo "mkdir -p ${CYPRESS_DEST}"
|
||||||
|
echo "cp -r ${PROCESSED_DIR}/* ${CYPRESS_DEST}"
|
||||||
|
|
||||||
|
# Confirmación final
|
||||||
|
echo "Flujo completado (pendiente de ejecución real). Valida los comandos antes de proceder."
|
Binary file not shown.
|
@ -11,6 +11,7 @@
|
||||||
"lint": "eslint --ext .js,.vue ./",
|
"lint": "eslint --ext .js,.vue ./",
|
||||||
"format": "prettier --write \"**/*.{js,vue,scss,html,md,json}\" --ignore-path .gitignore",
|
"format": "prettier --write \"**/*.{js,vue,scss,html,md,json}\" --ignore-path .gitignore",
|
||||||
"test:e2e": "cypress open",
|
"test:e2e": "cypress open",
|
||||||
|
"test:e2e:run": "cypress run",
|
||||||
"test:e2e:ci": "npm run resetDatabase && cd ../salix-front && cypress run",
|
"test:e2e:ci": "npm run resetDatabase && cd ../salix-front && cypress run",
|
||||||
"test": "echo \"See package.json => scripts for available tests.\" && exit 0",
|
"test": "echo \"See package.json => scripts for available tests.\" && exit 0",
|
||||||
"test:unit": "vitest",
|
"test:unit": "vitest",
|
||||||
|
|
|
@ -18,6 +18,7 @@ import parsePhone from './parsePhone';
|
||||||
import isDialogOpened from './isDialogOpened';
|
import isDialogOpened from './isDialogOpened';
|
||||||
|
|
||||||
export {
|
export {
|
||||||
|
isDialogOpened,
|
||||||
getUpdatedValues,
|
getUpdatedValues,
|
||||||
getDifferences,
|
getDifferences,
|
||||||
isDialogOpened,
|
isDialogOpened,
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
import { ref } from 'vue';
|
import { ref } from 'vue';
|
||||||
import { useI18n } from 'vue-i18n';
|
import { useI18n } from 'vue-i18n';
|
||||||
import { useRoute } from 'vue-router';
|
import { useRoute } from 'vue-router';
|
||||||
|
|
||||||
import VnInputDate from 'components/common/VnInputDate.vue';
|
import VnInputDate from 'components/common/VnInputDate.vue';
|
||||||
import FormModel from 'components/FormModel.vue';
|
import FormModel from 'components/FormModel.vue';
|
||||||
import FetchData from 'components/FetchData.vue';
|
import FetchData from 'components/FetchData.vue';
|
||||||
|
@ -38,7 +39,6 @@ const filterClientFindOne = {
|
||||||
}
|
}
|
||||||
"
|
"
|
||||||
/>
|
/>
|
||||||
<QCard>
|
|
||||||
<FormModel
|
<FormModel
|
||||||
v-if="'unpaid' in initialData"
|
v-if="'unpaid' in initialData"
|
||||||
:observe-form-changes="false"
|
:observe-form-changes="false"
|
||||||
|
@ -76,7 +76,6 @@ const filterClientFindOne = {
|
||||||
</VnRow>
|
</VnRow>
|
||||||
</template>
|
</template>
|
||||||
</FormModel>
|
</FormModel>
|
||||||
</QCard>
|
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<i18n>
|
<i18n>
|
||||||
|
|
|
@ -0,0 +1,22 @@
|
||||||
|
describe.skip('Client create path', () => {
|
||||||
|
beforeEach(() => {
|
||||||
|
cy.viewport(1280, 720);
|
||||||
|
cy.login('developer');
|
||||||
|
cy.visit('#/customer/list', {
|
||||||
|
timeout: 5000,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
it(`should search for the user Carol Danvers to confirm it isn't created yet`, async () => {});
|
||||||
|
it('should now access to the create client view by clicking the create-client floating button', async () => {});
|
||||||
|
it('should receive an error when clicking the create button having name and Business name fields empty', async () => {});
|
||||||
|
it(`should create a new province`, async () => {});
|
||||||
|
it(`should create a new city`, async () => {});
|
||||||
|
it(`should create a new post code`, async () => {});
|
||||||
|
it(`should attempt to create a new user with all it's data but wrong email`, async () => {});
|
||||||
|
it(`should attempt to create a new user with all it's data but wrong business type`, async () => {});
|
||||||
|
it(`should attempt to create a new user with all it's data but wrong postal code`, async () => {});
|
||||||
|
it(`should check for autocompleted city, province and country`, async () => {});
|
||||||
|
it(`should create a new user with all correct data`, async () => {});
|
||||||
|
it('should click on the Clients button of the top bar menu', async () => {});
|
||||||
|
it(`should search for the user Carol Danvers to confirm it exists`, async () => {});
|
||||||
|
});
|
|
@ -0,0 +1,38 @@
|
||||||
|
describe.skip('Client Edit basicData path', () => {
|
||||||
|
describe('as employee', () => {
|
||||||
|
beforeEach(() => {
|
||||||
|
cy.viewport(1280, 720);
|
||||||
|
cy.login('developer');
|
||||||
|
cy.visit('#/customer/1110/basic-data', {
|
||||||
|
timeout: 5000,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
it('should not be able to change the salesPerson', async () => {});
|
||||||
|
it('should edit the client basic data but leave salesPerson untainted', async () => {});
|
||||||
|
it('should confirm the name have been edited', async () => {});
|
||||||
|
it('should confirm the contact name have been edited', async () => {});
|
||||||
|
it('should confirm the business type have been edited', async () => {});
|
||||||
|
it('should confirm the email have been edited', async () => {});
|
||||||
|
it('should confirm the channel have been selected', async () => {});
|
||||||
|
it('should confirm the previous client have been selected', async () => {});
|
||||||
|
});
|
||||||
|
describe('as salesAssistant', () => {
|
||||||
|
beforeEach(() => {
|
||||||
|
cy.viewport(1280, 720);
|
||||||
|
cy.login('developer');
|
||||||
|
cy.visit('#/customer/1110/basic-data', {
|
||||||
|
timeout: 5000,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
it('should navigate to a client basic data', async () => {});
|
||||||
|
it('should be able to change the salesPerson', async () => {});
|
||||||
|
it('should edit the client basic data including salesPerson', async () => {});
|
||||||
|
it('should now confirm the name have been edited', async () => {});
|
||||||
|
it('should now confirm the contact name have been edited', async () => {});
|
||||||
|
it('should now confirm the email have been edited', async () => {});
|
||||||
|
it('should now confirm the phone have been edited', async () => {});
|
||||||
|
it('should now confirm the mobile have been edited', async () => {});
|
||||||
|
it('should confirm the sales person have been selected', async () => {});
|
||||||
|
it('should now confirm the channel have been selected', async () => {});
|
||||||
|
});
|
||||||
|
});
|
|
@ -0,0 +1,39 @@
|
||||||
|
describe.skip('Client Edit fiscalData path', () => {
|
||||||
|
describe('as employee', () => {
|
||||||
|
beforeEach(() => {
|
||||||
|
cy.viewport(1280, 720);
|
||||||
|
cy.login('developer');
|
||||||
|
cy.visit('#/customer/1110/fiscal-data', {
|
||||||
|
timeout: 5000,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
it(`should click on the 1st edit icon to check EQtax isnt checked`, async () => {});
|
||||||
|
it(`should go back to addresses then select the second one and confirm the EQtax isnt checked`, async () => {});
|
||||||
|
it(`should click on the fiscal data button`, async () => {});
|
||||||
|
it('should not be able to edit the verified data checkbox', async () => {});
|
||||||
|
});
|
||||||
|
describe('as administrative', () => {
|
||||||
|
beforeEach(() => {
|
||||||
|
cy.viewport(1280, 720);
|
||||||
|
cy.login('developer');
|
||||||
|
cy.visit('#/customer/1110/fiscal-data', {
|
||||||
|
timeout: 5000,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
it(`should edit the fiscal data but fail as the fiscal id ain't valid`, async () => {});
|
||||||
|
it(`should edit the fiscal this time with a valid fiscal id`, async () => {});
|
||||||
|
it('should propagate the Equalization tax', async () => {});
|
||||||
|
it('should receive an error if the fiscal id contains A or B at the beginning', async () => {});
|
||||||
|
it('should edit the fiscal data correctly as VIES isnt checked and fiscal id is valid for EQtax', async () => {});
|
||||||
|
it(`should click on the addresses button to access to the client's addresses`, async () => {});
|
||||||
|
it(`should click on the 1st edit icon to confirm EQtax is checked`, async () => {});
|
||||||
|
it(`should go back to addresses then select the second one and confirm the EQtax is checked`, async () => {});
|
||||||
|
it('should navigate back to fiscal data and uncheck EQtax then check VIES', async () => {});
|
||||||
|
it('should propagate the Equalization tax changes', async () => {});
|
||||||
|
it('should confirm its name have been edited', async () => {});
|
||||||
|
it('should confirm the fiscal data have been edited', async () => {});
|
||||||
|
it(`should click on the addresses button to access to the client's addresses`, async () => {});
|
||||||
|
it(`should click on the 1st edit icon to access the address details and uncheck EQtax checkbox`, async () => {});
|
||||||
|
it('should navigate back to fiscal data to confirm invoice by address is now checked', async () => {});
|
||||||
|
});
|
||||||
|
});
|
|
@ -0,0 +1,15 @@
|
||||||
|
describe.skip('Client ient Edit billing data path', () => {
|
||||||
|
beforeEach(() => {
|
||||||
|
cy.viewport(1280, 720);
|
||||||
|
cy.login('developer');
|
||||||
|
cy.visit('#/customer/1110/billing-data', {
|
||||||
|
timeout: 5000,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
it(`should attempt to edit the billing data without an IBAN but fail`, async () => {});
|
||||||
|
it(`should edit the billing data and save the form`, async () => {});
|
||||||
|
it(`should create a new BIC code`, async () => {});
|
||||||
|
it(`should confirm the IBAN pay method was sucessfully saved`, async () => {});
|
||||||
|
it(`should clear the BIC code field, update the IBAN to see how he BIC code autocompletes`, async () => {});
|
||||||
|
it('should confirm the billing data have been edited', async () => {});
|
||||||
|
});
|
|
@ -0,0 +1,22 @@
|
||||||
|
describe.skip('Client ient Add address path', () => {
|
||||||
|
beforeEach(() => {
|
||||||
|
cy.viewport(1280, 720);
|
||||||
|
cy.login('developer');
|
||||||
|
cy.visit('#/customer/1110/adresses', {
|
||||||
|
timeout: 5000,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
it(`should click on the add new address button to access to the new address form`, async () => {});
|
||||||
|
it('should receive an error after clicking save button as consignee, street and town fields are empty', async () => {});
|
||||||
|
it('should confirm that the city and province are propertly filled', async () => {});
|
||||||
|
it(`should throw after clicking save button as consignee, incoterms and customsAgent are empty`, async () => {});
|
||||||
|
it(`should receive an error after clicking save button as customsAgent is empty`, async () => {});
|
||||||
|
it(`should create a new custom agent and then save the address`, async () => {});
|
||||||
|
it(`should navigate back to the addresses index`, async () => {});
|
||||||
|
it(`should confirm the new address exists and it's the default one`, async () => {});
|
||||||
|
it('should click on the make default icon of the second address', async () => {});
|
||||||
|
it(`should confirm the default address is the expected one`, async () => {});
|
||||||
|
it(`should click on the edit icon of the default address`, async () => {});
|
||||||
|
it(`should click on the active checkbox and receive an error to save it because it is the default address`, async () => {});
|
||||||
|
it(`should go back to the addreses section by clicking the cancel button`, async () => {});
|
||||||
|
});
|
|
@ -0,0 +1,13 @@
|
||||||
|
describe.skip('Client ient add address notes path', () => {
|
||||||
|
beforeEach(() => {
|
||||||
|
cy.viewport(1280, 720);
|
||||||
|
cy.login('developer');
|
||||||
|
cy.visit('#/customer/1110/credits', {
|
||||||
|
timeout: 5000,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
it(`should click on the edit icon of the default address`, async () => {});
|
||||||
|
it('should not save a description without observation type', async () => {});
|
||||||
|
it('should not save an observation type without description', async () => {});
|
||||||
|
it('should create two new observations', async () => {});
|
||||||
|
});
|
|
@ -0,0 +1,10 @@
|
||||||
|
describe.skip('Client ient web access path', () => {
|
||||||
|
beforeEach(() => {
|
||||||
|
cy.viewport(1280, 720);
|
||||||
|
cy.login('developer');
|
||||||
|
cy.visit('#/customer/1110/web-access', {
|
||||||
|
timeout: 5000,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
it('should modify and save web access attributes', async () => {});
|
||||||
|
});
|
|
@ -0,0 +1,12 @@
|
||||||
|
describe.skip('Client ient Add credit path', () => {
|
||||||
|
beforeEach(() => {
|
||||||
|
cy.viewport(1280, 720);
|
||||||
|
cy.login('developer');
|
||||||
|
cy.visit('#/customer/1110/credits', {
|
||||||
|
timeout: 5000,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
it(`should click on the add credit button`, async () => {});
|
||||||
|
it(`should edit the credit`, async () => {});
|
||||||
|
it('should confirm the credit was updated', async () => {});
|
||||||
|
});
|
|
@ -0,0 +1,12 @@
|
||||||
|
describe.skip('Client ient Add greuge path', () => {
|
||||||
|
beforeEach(() => {
|
||||||
|
cy.viewport(1280, 720);
|
||||||
|
cy.login('developer');
|
||||||
|
cy.visit('#/customer/1110/credits', {
|
||||||
|
timeout: 5000,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
it(`should click on the add greuge button`, async () => {});
|
||||||
|
it(`should receive an error if all fields are empty but date and type on submit`, async () => {});
|
||||||
|
it(`should create a new greuge with all its data and confirm the greuge was added to the list`, async () => {});
|
||||||
|
});
|
|
@ -0,0 +1,10 @@
|
||||||
|
describe.skip('Client ient mandate path', () => {
|
||||||
|
beforeEach(() => {
|
||||||
|
cy.viewport(1280, 720);
|
||||||
|
cy.login('developer');
|
||||||
|
cy.visit('#/customer/1110/credits', {
|
||||||
|
timeout: 5000,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
it('should confirm the client has a mandate of the CORE type', async () => {});
|
||||||
|
});
|
|
@ -0,0 +1,63 @@
|
||||||
|
describe.skip('Client ient lock verified data path', () => {
|
||||||
|
describe('as salesPerson', () => {
|
||||||
|
beforeEach(() => {
|
||||||
|
cy.viewport(1280, 720);
|
||||||
|
cy.login('developer');
|
||||||
|
cy.visit('#/customer/1110/credits', {
|
||||||
|
timeout: 5000,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
it('should confirm verified data button is disabled for salesPerson', async () => {});
|
||||||
|
it('should edit the social name', async () => {});
|
||||||
|
it('should confirm the social name have been edited', async () => {});
|
||||||
|
});
|
||||||
|
describe('as administrative', () => {
|
||||||
|
beforeEach(() => {
|
||||||
|
cy.viewport(1280, 720);
|
||||||
|
cy.login('developer');
|
||||||
|
cy.visit('#/customer/1110/credits', {
|
||||||
|
timeout: 5000,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
it('should confirm verified data button is enabled for administrative', async () => {});
|
||||||
|
it('should check the Verified data checkbox', async () => {});
|
||||||
|
it('should confirm Verified data checkbox is checked', async () => {});
|
||||||
|
it('should again edit the social name', async () => {});
|
||||||
|
it('should again confirm the social name have been edited', async () => {});
|
||||||
|
});
|
||||||
|
describe('as salesPerson second run', () => {
|
||||||
|
beforeEach(() => {
|
||||||
|
cy.viewport(1280, 720);
|
||||||
|
cy.login('developer');
|
||||||
|
cy.visit('#/customer/1110/credits', {
|
||||||
|
timeout: 5000,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
it('should confirm verified data button is disabled once again for salesPerson', async () => {});
|
||||||
|
it('should not be able to save change throwing a verified data error', async () => {});
|
||||||
|
});
|
||||||
|
describe('as salesAssistant', () => {
|
||||||
|
beforeEach(() => {
|
||||||
|
cy.viewport(1280, 720);
|
||||||
|
cy.login('developer');
|
||||||
|
cy.visit('#/customer/1110/credits', {
|
||||||
|
timeout: 5000,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
it('should log in as salesAssistant then get to the client fiscal data', async () => {});
|
||||||
|
it('should confirm verified data button is enabled for salesAssistant', async () => {});
|
||||||
|
it('should now edit the social name', async () => {});
|
||||||
|
it('should now confirm the social name have been edited once and for all', async () => {});
|
||||||
|
});
|
||||||
|
describe('as salesPerson third run', () => {
|
||||||
|
beforeEach(() => {
|
||||||
|
cy.viewport(1280, 720);
|
||||||
|
cy.login('developer');
|
||||||
|
cy.visit('#/customer/1110/credits', {
|
||||||
|
timeout: 5000,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
it('should confirm verified data button is enabled once again', async () => {});
|
||||||
|
it('should confirm the form is enabled for salesPerson', async () => {});
|
||||||
|
});
|
||||||
|
});
|
|
@ -0,0 +1,11 @@
|
||||||
|
describe.skip('Client ient log path', () => {
|
||||||
|
beforeEach(() => {
|
||||||
|
cy.viewport(1280, 720);
|
||||||
|
cy.login('developer');
|
||||||
|
cy.visit('#/customer/1110/credits', {
|
||||||
|
timeout: 5000,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
it('should update the clients name', async () => {});
|
||||||
|
it('should navigate to the log section', async () => {});
|
||||||
|
});
|
|
@ -0,0 +1,17 @@
|
||||||
|
describe.skip('Client balance path', () => {
|
||||||
|
beforeEach(() => {
|
||||||
|
cy.viewport(1280, 720);
|
||||||
|
cy.login('developer');
|
||||||
|
cy.visit('#/customer/1110/credits', {
|
||||||
|
timeout: 5000,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
it('should now edit the local user config data', async () => {});
|
||||||
|
it('should create a new payment that clears the debt', async () => {});
|
||||||
|
it('should edit the 1st line reference and check data', async () => {});
|
||||||
|
it('should create a new payment, check the cash comparison works correctly and balance value is -100', async () => {});
|
||||||
|
it('should create a new payment and check the cash exceeded the maximum', async () => {});
|
||||||
|
it('should create a new payment that sets the balance back to negative value and check it', async () => {});
|
||||||
|
it('should now click on the Clients button of the top bar menu', async () => {});
|
||||||
|
it('should now search for the user Petter Parker not check the payment button is not present', async () => {});
|
||||||
|
});
|
|
@ -0,0 +1,37 @@
|
||||||
|
describe('User config', () => {
|
||||||
|
describe('as salesPerson', () => {
|
||||||
|
beforeEach(() => {
|
||||||
|
cy.viewport(1280, 720);
|
||||||
|
cy.login('developer');
|
||||||
|
cy.visit('#/customer/1110/credits', {
|
||||||
|
timeout: 5000,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
it('should login', async () => {});
|
||||||
|
it('should now open the user config form to check the settings', async () => {});
|
||||||
|
});
|
||||||
|
describe('as employee', () => {
|
||||||
|
beforeEach(() => {
|
||||||
|
cy.viewport(1280, 720);
|
||||||
|
cy.login('developer');
|
||||||
|
cy.visit('#/customer/1110/credits', {
|
||||||
|
timeout: 5000,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
it('should log in', async () => {});
|
||||||
|
it('should open the user config form to check the settings', async () => {});
|
||||||
|
it('should now edit the user config data', async () => {});
|
||||||
|
});
|
||||||
|
describe('as salesPerson 2nd run', () => {
|
||||||
|
beforeEach(() => {
|
||||||
|
cy.viewport(1280, 720);
|
||||||
|
cy.login('developer');
|
||||||
|
cy.visit('#/customer/1110/credits', {
|
||||||
|
timeout: 5000,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
it('should log in once more', async () => {});
|
||||||
|
it('should again open the user config form to check the local settings', async () => {});
|
||||||
|
it('should now clear the local settings', async () => {});
|
||||||
|
});
|
||||||
|
});
|
|
@ -0,0 +1,22 @@
|
||||||
|
describe.skip('Client ient web Payment', () => {
|
||||||
|
describe('as employee', () => {
|
||||||
|
beforeEach(() => {
|
||||||
|
cy.viewport(1280, 720);
|
||||||
|
cy.login('developer');
|
||||||
|
cy.visit('#/customer/1110/credits', {
|
||||||
|
timeout: 5000,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
it('should not be able to confirm payments', async () => {});
|
||||||
|
});
|
||||||
|
describe('as administrative', () => {
|
||||||
|
beforeEach(() => {
|
||||||
|
cy.viewport(1280, 720);
|
||||||
|
cy.login('developer');
|
||||||
|
cy.visit('#/customer/1110/credits', {
|
||||||
|
timeout: 5000,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
it('should be able to confirm payments', async () => {});
|
||||||
|
});
|
||||||
|
});
|
|
@ -0,0 +1,13 @@
|
||||||
|
describe.skip('Client DMS', () => {
|
||||||
|
beforeEach(() => {
|
||||||
|
cy.viewport(1280, 720);
|
||||||
|
cy.login('developer');
|
||||||
|
cy.visit('#/customer/1110/credits', {
|
||||||
|
timeout: 5000,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
describe('as salesPerson', () => {
|
||||||
|
it('should delete de first file', async () => {});
|
||||||
|
it(`should click on the first document line worker name making the descriptor visible`, async () => {});
|
||||||
|
});
|
||||||
|
});
|
|
@ -0,0 +1,11 @@
|
||||||
|
describe.skip('Client ient contacts', () => {
|
||||||
|
beforeEach(() => {
|
||||||
|
cy.viewport(1280, 720);
|
||||||
|
cy.login('developer');
|
||||||
|
cy.visit('#/customer/1110/credits', {
|
||||||
|
timeout: 5000,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
it('should add a contact', async () => {});
|
||||||
|
it('should delete de contact', async () => {});
|
||||||
|
});
|
|
@ -0,0 +1,19 @@
|
||||||
|
describe.skip('Client ient summary path', () => {
|
||||||
|
beforeEach(() => {
|
||||||
|
cy.viewport(1280, 720);
|
||||||
|
cy.login('developer');
|
||||||
|
cy.visit('#/customer/1110/credits', {
|
||||||
|
timeout: 5000,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
it('should reach the first route summary section', async () => {});
|
||||||
|
it('should display details from the client on the header', async () => {});
|
||||||
|
it('should display some basic data', async () => {});
|
||||||
|
it('should display fiscal address details', async () => {});
|
||||||
|
it('should display some fiscal data', async () => {});
|
||||||
|
it('should display pay method details', async () => {});
|
||||||
|
it('should display default address details', async () => {});
|
||||||
|
it('should display web access details', async () => {});
|
||||||
|
it('should display business data', async () => {});
|
||||||
|
it('should display financial information', async () => {});
|
||||||
|
});
|
|
@ -0,0 +1,22 @@
|
||||||
|
describe.skip('Client credit insurance path', () => {
|
||||||
|
beforeEach(() => {
|
||||||
|
cy.viewport(1280, 720);
|
||||||
|
cy.login('developer');
|
||||||
|
cy.visit('#/customer/1110/credits', {
|
||||||
|
timeout: 5000,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
it('should open the create a new credit contract form', async () => {});
|
||||||
|
it('should create a new credit contract', async () => {});
|
||||||
|
it(`should verify the addNewContract button is not present since there's an active contract`, async () => {});
|
||||||
|
it(`should click the view credits button`, async () => {});
|
||||||
|
it('should click the add new credit button which opens the new credit form', async () => {});
|
||||||
|
it('should fill the form but provide no grade to the new credit hence fail', async () => {});
|
||||||
|
it('should provide a correct grade and succesfully save a new credit', async () => {});
|
||||||
|
it('should be redirected to the credit index', async () => {});
|
||||||
|
it('should check the amount of credits is the expected', async () => {});
|
||||||
|
it('should navigate to the credit insurance section', async () => {});
|
||||||
|
it('should bring the current contract to an end', async () => {});
|
||||||
|
it(`should verify the addNewContract button is now present since there's no active contract`, async () => {});
|
||||||
|
it(`should verify the endCurrentContract button is not present since there's no active contract`, async () => {});
|
||||||
|
});
|
|
@ -0,0 +1,15 @@
|
||||||
|
describe.skip('Client defaulter path', () => {
|
||||||
|
beforeEach(() => {
|
||||||
|
cy.viewport(1280, 720);
|
||||||
|
cy.login('developer');
|
||||||
|
cy.visit('#/customer/1110/credits', {
|
||||||
|
timeout: 5000,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
it('should count the amount of clients in the turns section', async () => {});
|
||||||
|
it('should check contain expected client', async () => {});
|
||||||
|
it('should first observation not changed', async () => {});
|
||||||
|
it('should not add empty observation', async () => {});
|
||||||
|
it('should checked all defaulters', async () => {});
|
||||||
|
it('should add observation for all clients', async () => {});
|
||||||
|
});
|
|
@ -0,0 +1,12 @@
|
||||||
|
describe.skip('Client unpaid path', () => {
|
||||||
|
beforeEach(() => {
|
||||||
|
cy.viewport(1280, 720);
|
||||||
|
cy.login('developer');
|
||||||
|
cy.visit('#/customer/1110/unpaid', {
|
||||||
|
timeout: 5000,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
it('should set cliet unpaid', async () => {});
|
||||||
|
it('should save unpaid', async () => {});
|
||||||
|
it('should confirm the unpaid have been saved', async () => {});
|
||||||
|
});
|
|
@ -0,0 +1,10 @@
|
||||||
|
describe.skip('Client Send balance compensation', () => {
|
||||||
|
beforeEach(() => {
|
||||||
|
cy.viewport(1280, 720);
|
||||||
|
cy.login('developer');
|
||||||
|
cy.visit('#/customer/1110/credits', {
|
||||||
|
timeout: 5000,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
it(`should click on send compensation button`, async () => {});
|
||||||
|
});
|
|
@ -5,6 +5,7 @@ describe('Client basic data', () => {
|
||||||
cy.login('developer');
|
cy.login('developer');
|
||||||
cy.visit('#/customer/1102/basic-data');
|
cy.visit('#/customer/1102/basic-data');
|
||||||
});
|
});
|
||||||
|
|
||||||
it('Should load layout', () => {
|
it('Should load layout', () => {
|
||||||
cy.get('.q-card').should('be.visible');
|
cy.get('.q-card').should('be.visible');
|
||||||
cy.dataCy('customerPhone').filter('input').should('be.visible');
|
cy.dataCy('customerPhone').filter('input').should('be.visible');
|
||||||
|
|
Loading…
Reference in New Issue