Remplace data-testid
gitea/hedera-web/pipeline/pr-beta This commit looks good Details

This commit is contained in:
William Buezas 2024-12-10 10:29:42 -03:00
parent 3aad2eaeec
commit 6adb4268ff
33 changed files with 99 additions and 109 deletions

View File

@ -240,7 +240,7 @@ defineExpose({
flat
:disabled="!showBottomActions && !updatedColumns.length"
@click="submit()"
data-testid="formDefaultSaveButton"
data-cy="formDefaultSaveButton"
>
<QTooltip>{{ t('save') }}</QTooltip>
</QBtn>

View File

@ -91,7 +91,7 @@ async function confirm() {
@click="confirm()"
unelevated
autofocus
data-testid="confirmDialogButton"
data-cy="confirmDialogButton"
/>
</QCardActions>
</QCard>

View File

@ -76,7 +76,7 @@ onMounted(() => {
is-outlined
:clearable="false"
class="searchbar"
data-testid="searchBar"
data-cy="searchBar"
>
<template #prepend>
<QIcon name="search" class="cursor-pointer" @click="search()" />

View File

@ -14,7 +14,7 @@ export default function useNotify() {
type,
icon: icon || defaultIcons[type],
attrs: {
'data-testid': `${type}Notify`
'data-cy': `${type}Notify`
}
});
};

View File

@ -60,7 +60,7 @@ const logoutSupplantedUser = async () => {
class="q-mr-md"
/>
<img class="logo q-mr-lg" src="statics/logo-dark.svg" />
<QToolbarTitle data-testid="headerTitle">
<QToolbarTitle data-cy="headerTitle">
{{ customTitle || menuTitle }}
<div v-if="subtitle" class="subtitle text-caption">
{{ subtitle }}
@ -84,11 +84,11 @@ const logoutSupplantedUser = async () => {
v-model="leftDrawerOpen"
:width="250"
show-if-above
data-testid="layoutMenuDrawer"
data-cy="layoutMenuDrawer"
>
<div class="user-info">
<div>
<span id="user-name" data-testid="layoutUserName">
<span id="user-name" data-cy="layoutUserName">
{{ mainUser?.nickname }}
</span>
<QBtn
@ -96,7 +96,7 @@ const logoutSupplantedUser = async () => {
icon="logout"
alt="_Exit"
@click="logout()"
data-testid="logoutButton"
data-cy="logoutButton"
>
<QTooltip>{{ $t('logOut') }}</QTooltip>
</QBtn>
@ -105,7 +105,7 @@ const logoutSupplantedUser = async () => {
v-if="supplantedUser"
id="supplant"
class="supplant"
data-testid="layoutSupplantedUserName"
data-cy="layoutSupplantedUserName"
>
<span id="supplanted">
{{ supplantedUser?.nickname }}

View File

@ -119,7 +119,7 @@ onMounted(() => fetchLanguagesSql());
:label="t('nickname')"
@keyup.enter="updateUserNickname(data.nickname)"
@blur="updateUserNickname(data.nickname)"
data-testid="configViewNickname"
data-cy="configViewNickname"
/>
<VnSelect
v-model="data.lang"
@ -128,7 +128,7 @@ onMounted(() => fetchLanguagesSql());
option-value="code"
:options="langOptions"
@update:model-value="updateConfigLang(data.lang)"
data-testid="configViewLang"
data-cy="configViewLang"
/>
</template>
<template #extraForm>

View File

@ -93,36 +93,36 @@ onMounted(() => getCountries());
<VnInput
v-model="data.nickname"
:label="t('name')"
data-testid="addressFormNickname"
data-cy="addressFormNickname"
/>
<VnInput
v-model="data.street"
:label="t('address')"
data-testid="addressFormStreet"
data-cy="addressFormStreet"
/>
<VnInput
v-model="data.city"
:label="t('city')"
data-testid="addressFormCity"
data-cy="addressFormCity"
/>
<VnInput
v-model="data.postalCode"
type="number"
:label="t('postalCode')"
data-testid="addressFormPostcode"
data-cy="addressFormPostcode"
/>
<VnSelect
v-model="data.countryFk"
:label="t('country')"
:options="countriesOptions"
@update:model-value="data.provinceFk = null"
data-testid="addressFormCountry"
data-cy="addressFormCountry"
/>
<VnSelect
v-model="data.provinceFk"
:label="t('province')"
:options="provincesOptions"
data-testid="addressFormProvince"
data-cy="addressFormProvince"
/>
</template>
</VnForm>

View File

@ -98,7 +98,7 @@ onMounted(async () => {
@click="goToAddressDetails()"
rounded
no-caps
data-testid="newAddressBtn"
data-cy="newAddressBtn"
>
<QTooltip>
{{ t('addAddress') }}
@ -110,7 +110,7 @@ onMounted(async () => {
class="rounded-borders shadow-1 shadow-transition"
separator
:rows="addresses"
data-testid="addressCardList"
data-cy="addressCardList"
>
<CardList
v-for="(address, index) in addresses"
@ -158,7 +158,7 @@ onMounted(async () => {
flat
rounded
@click.stop="goToAddressDetails(address.id)"
data-testid="editAddressBtn"
data-cy="editAddressBtn"
>
<QTooltip>
{{ t('editAddress') }}

View File

@ -44,13 +44,13 @@ const onSearch = data => (items.value = data || []);
empty-icon="refresh"
:loading="loading"
:rows="items"
data-testid="itemsViewList"
data-cy="itemsViewList"
>
<CardList
v-for="(item, index) in items"
:key="index"
:clickable="false"
data-testid="itemsViewCard"
data-cy="itemsViewCard"
>
<template #prepend>
<VnImg

View File

@ -106,7 +106,7 @@ onMounted(async () => {
v-model="data.title"
:label="t('title')"
:clearable="false"
data-testid="newsTitleInput"
data-cy="newsTitleInput"
/>
<div class="row justify-between q-gutter-x-md">
<VnSelect
@ -116,14 +116,14 @@ onMounted(async () => {
option-value="name"
:options="newsTags"
class="col"
data-testid="newsTagSelect"
data-cy="newsTagSelect"
/>
<VnInput
v-model="data.priority"
:label="t('priority')"
:clearable="false"
class="col"
data-testid="newsPriorityInput"
data-cy="newsPriorityInput"
/>
</div>
<QEditor

View File

@ -64,7 +64,7 @@ onMounted(async () => getNews());
:to="{ name: 'adminNewsDetails' }"
rounded
no-caps
data-testid="addNewBtn"
data-cy="addNewBtn"
>
<QTooltip>{{ t('addNew') }}</QTooltip>
</QBtn>
@ -75,7 +75,7 @@ onMounted(async () => getNews());
v-for="(newsItem, index) in news"
:key="index"
:to="{ name: 'adminNewsDetails', params: { id: newsItem.id } }"
data-testid="newsCard"
data-cy="newsCard"
>
<template #prepend>
<VnImg
@ -108,7 +108,7 @@ onMounted(async () => getNews());
() => deleteNew(newsItem.id, index)
)
"
data-testid="deleteNewBtn"
data-cy="deleteNewBtn"
>
<QTooltip>{{ t('remove') }}</QTooltip>
</QBtn>

View File

@ -153,7 +153,7 @@ onMounted(async () => getImageCollections());
option-label="desc"
option-value="name"
:options="imageCollections"
data-testid="photoCollectionSelect"
data-cy="photoCollectionSelect"
/>
<QUploader
ref="fileUploaderRef"
@ -165,19 +165,19 @@ onMounted(async () => getImageCollections());
bordered
hide-upload-btn
@added="onFilesAdded"
data-testid="photoUploader"
data-cy="photoUploader"
>
<template #list="scope">
<QList
v-if="addedFiles.length"
separator
data-testid="photoUploaderList"
data-cy="photoUploaderList"
>
<QItem
v-for="(file, index) in scope.files"
:key="file.__key"
class="flex full-width row items-center justify-center"
data-testid="photoUploaderItem"
data-cy="photoUploaderItem"
>
<img
:src="file.__img.src"
@ -211,7 +211,7 @@ onMounted(async () => getImageCollections());
].icon
"
size="sm"
data-testid="photoUploaderItemsStatusIcon"
data-cy="photoUploaderItemsStatusIcon"
>
<QTooltip>
{{
@ -237,7 +237,7 @@ onMounted(async () => getImageCollections());
round
icon="delete"
@click="removeFile(file, index)"
data-testid="photoUploaderItemsDeleteBtn"
data-cy="photoUploaderItemsDeleteBtn"
>
<QTooltip>{{ t('remove') }}</QTooltip>
</QBtn>
@ -257,7 +257,7 @@ onMounted(async () => getImageCollections());
no-caps
flat
@click="clearFiles()"
data-testid="photoUploaderClearBtn"
data-cy="photoUploaderClearBtn"
/>
<QBtn
:label="t('uploadFiles')"
@ -266,7 +266,7 @@ onMounted(async () => getImageCollections());
flat
:disable="!isSubmitable"
@click="onSubmit(data)"
data-testid="photoUploadSubmitBtn"
data-cy="photoUploadSubmitBtn"
/>
</template>
</VnForm>

View File

@ -47,7 +47,7 @@ const supplantUser = async user => {
search-field="user"
@on-search="onSearch"
@on-search-error="users = []"
data-testid="usersViewSearchBar"
data-cy="usersViewSearchBar"
/>
</Teleport>
<QPage class="vn-w-xs">
@ -57,13 +57,13 @@ const supplantUser = async user => {
empty-icon="refresh"
:loading="loading"
:rows="users"
data-testid="usersViewList"
data-cy="usersViewList"
>
<CardList
v-for="(user, index) in users"
:key="index"
:to="{ name: 'accessLog', params: { id: user.id } }"
data-testid="userViewCard"
data-cy="userViewCard"
>
<template #content>
<span class="text-bold q-mb-sm">
@ -78,7 +78,7 @@ const supplantUser = async user => {
flat
rounded
@click.stop.prevent="supplantUser(user.name)"
data-testid="usersViewSupplantUserBtn"
data-cy="usersViewSupplantUserBtn"
>
<QTooltip>
{{ t('Impersonate user') }}

View File

@ -122,7 +122,7 @@ const fetchData = async () => {
:to="{ name: 'confirm', params: { id: orderId } }"
rounded
no-caps
data-testid="basketToConfirmBtn"
data-cy="basketToConfirmBtn"
>
<QTooltip>{{ t('checkout') }}</QTooltip>
</QBtn>

View File

@ -19,7 +19,7 @@ const { t } = useI18n();
v-if="viewMode === 'grid'"
v-ripple
class="catalog-card"
data-testid="catalogCardGrid"
data-cy="catalogCardGrid"
>
<VnImg
storage="catalog"
@ -28,12 +28,12 @@ const { t } = useI18n();
height="190px"
rounded="bottom"
zoom-size="1600x900"
data-testid="catalogCardImage"
data-cy="catalogCardImage"
/>
<div
class="column"
style="height: 205px; padding: 10px"
data-testid="catalogCardGridBody"
data-cy="catalogCardGridBody"
>
<div class="column" style="margin-bottom: auto">
<div class="text-subtitle2 ellipsis-2-lines">
@ -107,7 +107,7 @@ const { t } = useI18n();
</div>
</div>
</QCard>
<CardList v-else class="vn-w-sm" data-testid="catalogCardList">
<CardList v-else class="vn-w-sm" data-cy="catalogCardList">
<template #prepend>
<VnImg
storage="catalog"
@ -118,7 +118,7 @@ const { t } = useI18n();
rounded-borders="full"
class="q-mr-md"
zoom-size="1600x900"
data-testid="catalogCardImage"
data-cy="catalogCardImage"
/>
</template>
<template #content>

View File

@ -26,7 +26,7 @@
@click="redirectToBasket()"
rounded
no-caps
data-testid="catalogGoToBasketButton"
data-cy="catalogGoToBasketButton"
>
<QTooltip>
{{ t('shoppingCart') }}
@ -61,7 +61,7 @@
rounded
no-caps
@click="redirectToCheckout()"
data-testid="orderModifyButton"
data-cy="orderModifyButton"
color="light-green-7"
unelevated
text-color="white"
@ -90,7 +90,7 @@
:class="{ active: category == cat.id }"
:key="cat.id"
@click="selectedCategory = cat.id"
data-testid="catalogCategoryButton"
data-cy="catalogCategoryButton"
>
<img :src="`statics/category/${cat.code}.svg`" />
<QTooltip>{{ cat.name }}</QTooltip>
@ -108,7 +108,7 @@
:options="itemFamilies"
:disable="!category"
:label="t('family')"
data-testid="catalogFamilySelect"
data-cy="catalogFamilySelect"
/>
<VnSelect
v-model="selectedColor"
@ -192,7 +192,7 @@
:item="_item"
:view-mode="viewMode"
@click="showItem(_item)"
data-testid="catalogCardElement"
data-cy="catalogCardElement"
/>
</div>
<QDialog v-model="showItemDialog" @hide="resetAmounts()">
@ -267,7 +267,7 @@
flat
dense
@click="onAddLotClick(lot)"
data-testid="addItemQuantityButton"
data-cy="addItemQuantityButton"
>
<QTooltip>{{ t('add') }}</QTooltip>
</QBtn>
@ -292,7 +292,7 @@
flat
color="white"
@click="onConfirmClick()"
data-testid="catalogAddToBasketButton"
data-cy="catalogAddToBasketButton"
>
<QTooltip>{{ t('confirm') }}</QTooltip>
</QBtn>

View File

@ -350,7 +350,7 @@ watch(
:flat="isMobile"
contracted
class="default-radius stepper-container"
data-testid="checkoutStepper"
data-cy="checkoutStepper"
>
<QStep
v-for="(step, stepIndex) in steps[orderForm.method]"
@ -403,7 +403,7 @@ watch(
<QList
v-if="step.name === 'address'"
class="vn-w-xs q-gutter-y-sm column"
data-testid="checkoutAddressStep"
data-cy="checkoutAddressStep"
>
<span class="text-h6 step-title">
{{
@ -447,7 +447,7 @@ watch(
option-label="description"
option-value="id"
:options="agencies"
data-testid="agencyStepSelect"
data-cy="agencyStepSelect"
/>
</div>
<div
@ -462,7 +462,7 @@ watch(
option-label="description"
option-value="id"
:options="warehouses"
data-testid="pickupStepSelect"
data-cy="pickupStepSelect"
/>
</div>
<!-- Confirm step -->
@ -489,7 +489,7 @@ watch(
icon="arrow_back"
dense
class="left-navigation-button"
data-testid="checkoutStepperLeftButton"
data-cy="checkoutStepperLeftButton"
>
<QTooltip>
{{ t(`${step.backButtonLabel || 'back'}`) }}
@ -504,7 +504,7 @@ watch(
"
dense
class="right-navigation-button"
data-testid="checkoutStepperRightButton"
data-cy="checkoutStepperRightButton"
:loading="loading"
>
<QTooltip>

View File

@ -73,7 +73,7 @@ const onConfirmPay = async () => {
@click="onPayClick()"
rounded
no-caps
data-testid="makePaymentButton"
data-cy="makePaymentButton"
>
<QTooltip>
{{ t('makePayment') }}
@ -126,7 +126,7 @@ const onConfirmPay = async () => {
v-model="showAmountToPayDialog"
message=" "
:promise="onConfirmPay"
data-testid="payAmountDialog"
data-cy="payAmountDialog"
>
<template #customHTML>
<VnInput
@ -136,7 +136,7 @@ const onConfirmPay = async () => {
type="number"
min="0"
:max="debt * -1"
data-testid="payAmountInput"
data-cy="payAmountInput"
>
<template #append></template>
</VnInput>

View File

@ -71,7 +71,7 @@ onMounted(async () => {
<template>
<Teleport v-if="isHeaderMounted" to="#actions">
<QBtn
data-testid="pendingOrdersNewOrder"
data-cy="pendingOrdersNewOrder"
:to="{ name: 'checkout' }"
icon="add_shopping_cart"
:label="t('newOrder')"
@ -84,16 +84,12 @@ onMounted(async () => {
</QBtn>
</Teleport>
<QPage class="vn-w-sm">
<VnList
:rows="orders"
:loading="loading"
data-testid="pendingOrdersList"
>
<VnList :rows="orders" :loading="loading" data-cy="pendingOrdersList">
<CardList
v-for="(order, index) in orders"
:key="index"
:to="{ name: 'basket', params: { id: order.id } }"
data-testid="pendingOrderCard"
data-cy="pendingOrderCard"
>
<template #content>
<QItemLabel class="text-bold q-mb-sm">
@ -116,7 +112,7 @@ onMounted(async () => {
() => removeOrder(order.id, index)
)
"
data-testid="pendingOrderCardDelete"
data-cy="pendingOrderCardDelete"
>
<QTooltip>{{ t('deleteOrder') }}</QTooltip>
</QBtn>
@ -125,7 +121,7 @@ onMounted(async () => {
flat
rounded
@click.stop.prevent="loadOrder(order.id)"
data-testid="addOrderToBasket"
data-cy="addOrderToBasket"
>
<QTooltip>{{ t('loadOrderIntoCart') }}</QTooltip>
</QBtn>

View File

@ -111,7 +111,7 @@ const deleteRow = id => {
</QCardSection>
<QSeparator v-if="showItems" inset />
<QList v-for="(row, index) in rows" :key="index">
<QItem v-if="row" data-testid="basketItemRow">
<QItem v-if="row" data-cy="basketItemRow">
<QItemSection v-if="canDeleteItems" avatar>
<QBtn
icon="delete"

View File

@ -73,17 +73,17 @@ const loginAsGuest = async () => {
v-model="email"
:label="$t('user')"
autofocus
data-testid="loginUserInput"
data-cy="loginUserInput"
/>
<QInput
v-model="password"
:label="$t('password')"
:type="!showPwd ? 'password' : 'text'"
data-testid="loginPasswordInput"
data-cy="loginPasswordInput"
>
<template #append>
<QIcon
data-testid="showPasswordIcon"
data-cy="showPasswordIcon"
:name="showPwd ? 'visibility_off' : 'visibility'"
class="cursor-pointer"
@click="showPwd = !showPwd"
@ -92,14 +92,14 @@ const loginAsGuest = async () => {
</QInput>
<div class="row justify-between text-center">
<QCheckbox
data-testid="rememberCheckbox"
data-cy="rememberCheckbox"
v-model="remember"
:label="$t('remindMe')"
dense
class="col"
/>
<QSelect
data-testid="switchLanguage"
data-cy="switchLanguage"
v-model="selectedLocaleValue"
:options="localeOptions"
:label="t('language')"
@ -126,7 +126,7 @@ const loginAsGuest = async () => {
</div>
<div class="justify-center">
<QBtn
data-testid="loginAsGuestButton"
data-cy="loginAsGuestButton"
@click="loginAsGuest()"
:label="$t('logInAsGuest')"
class="full-width"
@ -138,7 +138,7 @@ const loginAsGuest = async () => {
</div>
<p
class="password-forgotten text-center q-mt-lg"
data-testid="recoverPasswordViewLink"
data-cy="recoverPasswordViewLink"
>
<router-link :to="{ name: 'recoverPassword' }" class="link">
{{ $t('haveForgottenPassword') }}

View File

@ -37,7 +37,7 @@ const onSend = async () => {
v-model="user"
:label="t('user')"
autofocus
data-testid="recoverPasswordUserInput"
data-cy="recoverPasswordUserInput"
/>
<div class="q-mt-lg">
{{ t('weSendEmail') }}
@ -51,7 +51,7 @@ const onSend = async () => {
rounded
no-caps
unelevated
data-testid="recoverPasswordSubmitButton"
data-cy="recoverPasswordSubmitButton"
/>
<div class="text-center q-mt-md">
<router-link to="/login" class="link">

View File

@ -29,7 +29,7 @@ describe('NewsView', () => {
cy.dataCy('newsTitleInput').should('exist');
cy.dataCy('newsTitleInput').find('input').type('Test new');
cy.dataCy('newsTagSelect').should('exist');
cy.selectOption('[data-testid="newsTagSelect"]', 'Curso');
cy.selectOption('[data-cy="newsTagSelect"]', 'Curso');
cy.dataCy('newsPriorityInput').should('exist');
cy.dataCy('newsPriorityInput').find('input').type('2');
cy.dataCy('formDefaultSaveButton').should('not.be.disabled');

View File

@ -15,8 +15,8 @@ describe('Photo Uploader Component', () => {
it('should allow selecting a photo collection', () => {
// Simular la selección de una colección de fotos
cy.selectOption('[data-testid="photoCollectionSelect"]', 'Enlace');
cy.getValue('[data-testid="photoCollectionSelect"]').should(
cy.selectOption('[data-cy="photoCollectionSelect"]', 'Enlace');
cy.getValue('[data-cy="photoCollectionSelect"]').should(
'equal',
'Enlace'
);

View File

@ -1,21 +1,18 @@
Cypress.Commands.add('addItemToBasketFlow', () => {
// 1- Seleccionar categoría
cy.dataCy('catalogCategoryButton').should('exist');
cy.get('[data-testid="catalogCategoryButton"]:first').click();
cy.get('[data-cy="catalogCategoryButton"]:first').click();
// 2- Seleccionar familia
cy.dataCy('catalogFamilySelect').should('exist');
cy.selectOption('[data-testid="catalogFamilySelect"]', 'Anthurium');
cy.getValue('[data-testid="catalogFamilySelect"]').should(
'equal',
'Anthurium'
);
cy.selectOption('[data-cy="catalogFamilySelect"]', 'Anthurium');
cy.getValue('[data-cy="catalogFamilySelect"]').should('equal', 'Anthurium');
cy.dataCy('catalogFamilySelect').should('exist');
// 3- Seleccionar item
cy.dataCy('catalogCardGridBody').should('exist');
cy.get('[data-testid="catalogCardGridBody"]:first').click();
cy.get('[data-cy="catalogCardGridBody"]:first').click();
// 4- Añadir item al carrito
cy.dataCy('addItemQuantityButton').should('exist');
cy.get('[data-testid="addItemQuantityButton"]:first').click();
cy.get('[data-cy="addItemQuantityButton"]:first').click();
cy.dataCy('catalogAddToBasketButton').should('exist');
cy.dataCy('catalogAddToBasketButton').click();
cy.checkNotify('positive', 'Añadido');

View File

@ -29,7 +29,7 @@ Cypress.Commands.add('createOrderReceive', () => {
'¿Cómo quieres recibir el pedido?'
);
cy.dataCy('agencyStepSelect').should('exist');
cy.selectOption('[data-testid="agencyStepSelect"]', 'Other agency');
cy.selectOption('[data-cy="agencyStepSelect"]', 'Other agency');
checkoutNextStep();
checkoutNextStep();
cy.url().should('contain', '/#/ecomerce/catalog');
@ -69,7 +69,7 @@ Cypress.Commands.add('createOrderPickup', () => {
'¿En qué almacén quieres recoger tu pedido?'
);
cy.dataCy('pickupStepSelect').should('exist');
cy.selectOption('[data-testid="pickupStepSelect"]', 'Teleportation device');
cy.selectOption('[data-cy="pickupStepSelect"]', 'Teleportation device');
checkoutNextStep();
checkoutNextStep();
cy.url().should('contain', '/#/ecomerce/catalog');

View File

@ -1,7 +1,7 @@
Cypress.Commands.add('changeUserNickname', (oldNickname, newNickname) => {
cy.dataCy('configViewNickname').find('input').should('exist');
cy.getValue('input[data-testid="configViewNickname"]').should(
cy.getValue('input[data-cy="configViewNickname"]').should(
'equal',
oldNickname
);

View File

@ -11,9 +11,9 @@ describe('Changes user nickname', () => {
it('changes site lang when changing user lang', () => {
cy.dataCy('configViewLang').should('exist');
cy.selectOption('[data-testid="configViewLang"]', 'Español');
cy.selectOption('[data-cy="configViewLang"]', 'Español');
cy.dataCy('headerTitle').should('contain', 'Configuración');
cy.selectOption('[data-testid="configViewLang"]', 'English');
cy.selectOption('[data-cy="configViewLang"]', 'English');
cy.dataCy('headerTitle').should('contain', 'Configuration');
});
});

View File

@ -23,8 +23,8 @@ describe('PendingOrders', () => {
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');
cy.selectOption('[data-cy="addressFormCountry"]', 'España');
cy.selectOption('[data-cy="addressFormProvince"]', 'Province one');
};
const verifyAddressCardData = data => {
@ -63,7 +63,7 @@ describe('PendingOrders', () => {
cy.dataCy('addressCardList')
.children()
.last()
.find('[data-testid="editAddressBtn"]')
.find('[data-cy="editAddressBtn"]')
.click();
// Clear form data
cy.get('form input').each(input => {

View File

@ -40,12 +40,9 @@ Cypress.Commands.add('logout', user => {
Cypress.Commands.add('loginFlow', (user, visitLogin = true) => {
if (visitLogin) cy.visit('/#/login');
cy.dataCy('loginUserInput').type(user);
cy.getValue('[data-testid="loginUserInput"]').should('equal', user);
cy.getValue('[data-cy="loginUserInput"]').should('equal', user);
cy.dataCy('loginPasswordInput').type('nightmare');
cy.getValue('[data-testid="loginPasswordInput"]').should(
'equal',
'nightmare'
);
cy.getValue('[data-cy="loginPasswordInput"]').should('equal', 'nightmare');
cy.get('button[type="submit"]').click();
cy.url().should('contain', '/#/cms/home');
@ -54,7 +51,7 @@ Cypress.Commands.add('loginFlow', (user, visitLogin = true) => {
Cypress.Commands.add('changeLanguage', language => {
const languagesOrder = ['en', 'es', 'ca', 'fr', 'pt'];
const index = languagesOrder.indexOf(language);
cy.waitForElement('[data-testid="switchLanguage"]');
cy.waitForElement('[data-cy="switchLanguage"]');
cy.dataCy('switchLanguage').click();
cy.get('.q-menu .q-item').eq(index).click(); // Selecciona y hace clic en el tercer elemento "index" de la lista
});

View File

@ -1,5 +1,5 @@
describe('Login Tests', () => {
const rememberCheckbox = '[data-testid="rememberCheckbox"]';
const rememberCheckbox = '[data-cy="rememberCheckbox"]';
beforeEach(() => {
cy.visit('/#/login');

File diff suppressed because one or more lines are too long

View File

@ -56,7 +56,7 @@ Cypress.Commands.add('waitForElement', (element, timeout = 5000) => {
cy.get(element, { timeout }).should('be.visible');
});
Cypress.Commands.add('dataCy', (dataTestId, attr = 'data-testid') => {
Cypress.Commands.add('dataCy', (dataTestId, attr = 'data-cy') => {
return cy.get(`[${attr}="${dataTestId}"]`);
});