Add address tests
gitea/hedera-web/pipeline/pr-4922-vueMigration This commit looks good
Details
gitea/hedera-web/pipeline/pr-4922-vueMigration This commit looks good
Details
This commit is contained in:
parent
f70b98b514
commit
ab7c1d1fe0
|
@ -90,24 +90,39 @@ onMounted(() => getCountries());
|
||||||
@on-data-saved="goBack()"
|
@on-data-saved="goBack()"
|
||||||
>
|
>
|
||||||
<template #form="{ data }">
|
<template #form="{ data }">
|
||||||
<VnInput v-model="data.nickname" :label="t('name')" />
|
<VnInput
|
||||||
<VnInput v-model="data.street" :label="t('address')" />
|
v-model="data.nickname"
|
||||||
<VnInput v-model="data.city" :label="t('city')" />
|
:label="t('name')"
|
||||||
|
data-testid="addressFormNickname"
|
||||||
|
/>
|
||||||
|
<VnInput
|
||||||
|
v-model="data.street"
|
||||||
|
:label="t('address')"
|
||||||
|
data-testid="addressFormStreet"
|
||||||
|
/>
|
||||||
|
<VnInput
|
||||||
|
v-model="data.city"
|
||||||
|
:label="t('city')"
|
||||||
|
data-testid="addressFormCity"
|
||||||
|
/>
|
||||||
<VnInput
|
<VnInput
|
||||||
v-model="data.postalCode"
|
v-model="data.postalCode"
|
||||||
type="number"
|
type="number"
|
||||||
:label="t('postalCode')"
|
:label="t('postalCode')"
|
||||||
|
data-testid="addressFormPostcode"
|
||||||
/>
|
/>
|
||||||
<VnSelect
|
<VnSelect
|
||||||
v-model="data.countryFk"
|
v-model="data.countryFk"
|
||||||
:label="t('country')"
|
:label="t('country')"
|
||||||
:options="countriesOptions"
|
:options="countriesOptions"
|
||||||
@update:model-value="data.provinceFk = null"
|
@update:model-value="data.provinceFk = null"
|
||||||
|
data-testid="addressFormCountry"
|
||||||
/>
|
/>
|
||||||
<VnSelect
|
<VnSelect
|
||||||
v-model="data.provinceFk"
|
v-model="data.provinceFk"
|
||||||
:label="t('province')"
|
:label="t('province')"
|
||||||
:options="provincesOptions"
|
:options="provincesOptions"
|
||||||
|
data-testid="addressFormProvince"
|
||||||
/>
|
/>
|
||||||
</template>
|
</template>
|
||||||
</VnForm>
|
</VnForm>
|
||||||
|
|
|
@ -98,6 +98,7 @@ onMounted(async () => {
|
||||||
@click="goToAddressDetails()"
|
@click="goToAddressDetails()"
|
||||||
rounded
|
rounded
|
||||||
no-caps
|
no-caps
|
||||||
|
data-testid="newAddressBtn"
|
||||||
>
|
>
|
||||||
<QTooltip>
|
<QTooltip>
|
||||||
{{ t('addAddress') }}
|
{{ t('addAddress') }}
|
||||||
|
@ -109,6 +110,7 @@ onMounted(async () => {
|
||||||
class="rounded-borders shadow-1 shadow-transition"
|
class="rounded-borders shadow-1 shadow-transition"
|
||||||
separator
|
separator
|
||||||
:rows="addresses"
|
:rows="addresses"
|
||||||
|
data-testid="addressCardList"
|
||||||
>
|
>
|
||||||
<CardList
|
<CardList
|
||||||
v-for="(address, index) in addresses"
|
v-for="(address, index) in addresses"
|
||||||
|
@ -156,6 +158,7 @@ onMounted(async () => {
|
||||||
flat
|
flat
|
||||||
rounded
|
rounded
|
||||||
@click.stop="goToAddressDetails(address.id)"
|
@click.stop="goToAddressDetails(address.id)"
|
||||||
|
data-testid="editAddressBtn"
|
||||||
>
|
>
|
||||||
<QTooltip>
|
<QTooltip>
|
||||||
{{ t('editAddress') }}
|
{{ t('editAddress') }}
|
||||||
|
|
|
@ -0,0 +1,75 @@
|
||||||
|
describe('PendingOrders', () => {
|
||||||
|
beforeEach(() => {
|
||||||
|
cy.login('developer');
|
||||||
|
cy.visit('/#/account/address-list');
|
||||||
|
});
|
||||||
|
|
||||||
|
const getRandomAddressFormData = () => {
|
||||||
|
const randomString = () => Math.random().toString(36).substring(2, 15);
|
||||||
|
return {
|
||||||
|
nickname: `Nickname-${randomString()}`,
|
||||||
|
street: `Street-${randomString()}`,
|
||||||
|
city: `City-${randomString()}`,
|
||||||
|
postcode: Math.floor(Math.random() * 90000) + 10000
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
const fillFormWithData = data => {
|
||||||
|
cy.dataCy('addressFormNickname').find('input').click();
|
||||||
|
cy.dataCy('addressFormNickname').find('input').type(data.nickname);
|
||||||
|
cy.dataCy('addressFormStreet').find('input').click();
|
||||||
|
cy.dataCy('addressFormStreet').find('input').type(data.street);
|
||||||
|
cy.dataCy('addressFormCity').find('input').click();
|
||||||
|
cy.dataCy('addressFormCity').find('input').type(data.city);
|
||||||
|
cy.dataCy('addressFormPostcode').find('input').click();
|
||||||
|
cy.dataCy('addressFormPostcode').find('input').type(data.postcode);
|
||||||
|
cy.selectOption('[data-testid="addressFormCountry"]', 'España');
|
||||||
|
cy.selectOption('[data-testid="addressFormProvince"]', 'Province one');
|
||||||
|
};
|
||||||
|
|
||||||
|
const verifyAddressCardData = data => {
|
||||||
|
cy.dataCy('addressCardList')
|
||||||
|
.children()
|
||||||
|
.last()
|
||||||
|
.should('contain', data.nickname);
|
||||||
|
cy.dataCy('addressCardList')
|
||||||
|
.children()
|
||||||
|
.last()
|
||||||
|
.should('contain', data.street);
|
||||||
|
cy.dataCy('addressCardList')
|
||||||
|
.children()
|
||||||
|
.last()
|
||||||
|
.should('contain', data.city);
|
||||||
|
cy.dataCy('addressCardList')
|
||||||
|
.children()
|
||||||
|
.last()
|
||||||
|
.should('contain', data.postcode);
|
||||||
|
};
|
||||||
|
|
||||||
|
it('should create a new address', () => {
|
||||||
|
cy.dataCy('newAddressBtn').should('exist');
|
||||||
|
cy.dataCy('newAddressBtn').click();
|
||||||
|
cy.dataCy('formDefaultSaveButton').should('exist');
|
||||||
|
cy.dataCy('formDefaultSaveButton').should('be.disabled');
|
||||||
|
const addressFormData = getRandomAddressFormData();
|
||||||
|
fillFormWithData(addressFormData);
|
||||||
|
cy.dataCy('formDefaultSaveButton').should('not.be.disabled');
|
||||||
|
cy.dataCy('formDefaultSaveButton').click();
|
||||||
|
cy.checkNotify('positive', 'Datos guardados');
|
||||||
|
verifyAddressCardData(addressFormData);
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should edit an existent address', () => {
|
||||||
|
cy.dataCy('addressCardList')
|
||||||
|
.children()
|
||||||
|
.last()
|
||||||
|
.find('[data-testid="editAddressBtn"]')
|
||||||
|
.click();
|
||||||
|
const addressFormData = getRandomAddressFormData();
|
||||||
|
fillFormWithData(addressFormData);
|
||||||
|
cy.dataCy('formDefaultSaveButton').should('not.be.disabled');
|
||||||
|
cy.dataCy('formDefaultSaveButton').click();
|
||||||
|
cy.checkNotify('positive', 'Datos guardados');
|
||||||
|
verifyAddressCardData(addressFormData);
|
||||||
|
});
|
||||||
|
});
|
Loading…
Reference in New Issue