@mirai/core 0.4.36 → 0.4.37
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/.env +0 -22
- package/.gitlab-ci.yml +0 -4
- package/.nvmrc +0 -1
- package/__tests__/Booking/__mocks__/booking-delete.json +0 -1
- package/__tests__/Booking/__mocks__/booking-get.json +0 -105
- package/__tests__/Booking/booking.constants.js +0 -8
- package/__tests__/Booking/workflows/cancel.workflow.js +0 -20
- package/__tests__/Booking/workflows/index.js +0 -5
- package/__tests__/Booking/workflows/openMobileMenu.workflow.js +0 -4
- package/__tests__/Booking/workflows/print.workflow.js +0 -13
- package/__tests__/Booking/workflows/resend.workflow.js +0 -18
- package/__tests__/Booking/workflows/review.workflow.js +0 -17
- package/__tests__/BookingQuery/__mocks__/user-booking-get.json +0 -9
- package/__tests__/BookingQuery/workflows/index.js +0 -1
- package/__tests__/BookingQuery/workflows/login.workflow.js +0 -22
- package/__tests__/Checkout/__mocks__/checkout-get.json +0 -935
- package/__tests__/Checkout/__mocks__/checkout-post-PAYLATER.json +0 -10
- package/__tests__/Checkout/__mocks__/checkout-post-TPV.json +0 -7
- package/__tests__/Checkout/__mocks__/checkout-post-TRANSFER.json +0 -10
- package/__tests__/Checkout/checkout.constants.js +0 -8
- package/__tests__/Checkout/workflows/form.workflow.js +0 -17
- package/__tests__/Checkout/workflows/index.js +0 -4
- package/__tests__/Checkout/workflows/payment.workflow.js +0 -10
- package/__tests__/Checkout/workflows/review.workflow.js +0 -19
- package/__tests__/Checkout/workflows/submit.workflow.js +0 -9
- package/__tests__/Deals/__mocks__/deals-success.json +0 -739
- package/__tests__/Deals/workflows/calendar.workflow.js +0 -14
- package/__tests__/Deals/workflows/clear.workflow.js +0 -7
- package/__tests__/Deals/workflows/index.js +0 -5
- package/__tests__/Deals/workflows/occupation.workflow.js +0 -6
- package/__tests__/Deals/workflows/promocode.workflow.js +0 -3
- package/__tests__/Deals/workflows/submit.workflow.js +0 -6
- package/__tests__/Finder/workflows/calendar.workflow.js +0 -10
- package/__tests__/Finder/workflows/index.js +0 -3
- package/__tests__/Finder/workflows/occupation.workflow.js +0 -27
- package/__tests__/Finder/workflows/promocode.workflow.js +0 -8
- package/__tests__/Rates/__mocks__/extras-one-success.json +0 -138
- package/__tests__/Rates/__mocks__/extras-success.json +0 -397
- package/__tests__/Rates/__mocks__/rates-success.json +0 -731
- package/__tests__/Rates/workflows/extras.js +0 -9
- package/__tests__/Rates/workflows/extrasExpect.js +0 -11
- package/__tests__/Rates/workflows/index.js +0 -4
- package/__tests__/Rates/workflows/multiroom.js +0 -26
- package/__tests__/Rates/workflows/rates.js +0 -9
- package/__tests__/Session/workflows/bookings.workflow.js +0 -18
- package/__tests__/Session/workflows/forgotPassword.workflow.js +0 -20
- package/__tests__/Session/workflows/index.js +0 -5
- package/__tests__/Session/workflows/login.workflow.js +0 -29
- package/__tests__/Session/workflows/logout.workflow.js +0 -8
- package/__tests__/Session/workflows/profile.workflow.js +0 -49
- package/__tests__/Signup/workflows/index.js +0 -2
- package/__tests__/Signup/workflows/signup.workflow.js +0 -26
- package/__tests__/Signup/workflows/signupError.workflow.js +0 -22
- package/__tests__/__screenshots__/rates.spec.jsx/Desktop/Search-multiroom-with-one-extras-1.png +0 -0
- package/__tests__/__screenshots__/rates.spec.jsx/Desktop/Search-multiroom-with-some-extras-1.png +0 -0
- package/__tests__/__screenshots__/rates.spec.jsx/iPhone-12/Search-multiroom-with-one-extras-1.png +0 -0
- package/__tests__/__screenshots__/rates.spec.jsx/iPhone-12/Search-multiroom-with-some-extras-1.png +0 -0
- package/__tests__/booking.spec.jsx +0 -34
- package/__tests__/bookingQuey.spec.js +0 -43
- package/__tests__/buttonFinder.spec.js +0 -16
- package/__tests__/checkout.spec.jsx +0 -52
- package/__tests__/constants.js +0 -20
- package/__tests__/deals.spec.js +0 -30
- package/__tests__/finder.spec.js +0 -75
- package/__tests__/helpers/closeNotification.js +0 -7
- package/__tests__/helpers/getWeekNumber.js +0 -8
- package/__tests__/helpers/index.js +0 -2
- package/__tests__/rates.spec.jsx +0 -39
- package/__tests__/session.spec.js +0 -32
- package/__tests__/signup.spec.js +0 -17
- package/build/components/BannerLoyalty/__tests__/__snapshots__/BannerLoyalty.skeleton.test.js.snap +0 -287
- package/build/components/BannerLoyalty/__tests__/__snapshots__/BannerLoyalty.test.js.snap +0 -102
- package/build/components/Booking/__tests__/__snapshots__/Booking.test.js.snap +0 -1302
- package/build/components/Booking/components/Field/__tests__/__snapshots__/Field.test.js.snap +0 -139
- package/build/components/Booking/components/Hotelverse/__tests__/__snapshots__/Hotelverse.test.js.snap +0 -108
- package/build/components/Booking/partials/__tests__/__snapshots__/Booking.FormCancel.test.js.snap +0 -546
- package/build/components/Booking/partials/__tests__/__snapshots__/Booking.FormEdit.test.js.snap +0 -46
- package/build/components/Booking/partials/__tests__/__snapshots__/Booking.FormResend.test.js.snap +0 -166
- package/build/components/Booking/partials/__tests__/__snapshots__/Booking.Information.test.js.snap +0 -110
- package/build/components/Booking/partials/__tests__/__snapshots__/Booking.Menu.test.js.snap +0 -82
- package/build/components/Booking/partials/__tests__/__snapshots__/Booking.Modal.test.js.snap +0 -432
- package/build/components/Booking/partials/__tests__/__snapshots__/Booking.ModalAgency.test.js.snap +0 -319
- package/build/components/Booking/partials/__tests__/__snapshots__/Booking.Payment.test.js.snap +0 -178
- package/build/components/BookingQuery/__tests__/__snapshots__/BookingQuery.test.js.snap +0 -1048
- package/build/components/ButtonFinder/__tests__/__snapshots__/ButtonFinder.test.js.snap +0 -8210
- package/build/components/Chat/__tests__/__snapshots__/Chat.constants.test.js.snap +0 -30
- package/build/components/Chat/__tests__/__snapshots__/Chat.test.js.snap +0 -634
- package/build/components/Chat/components/Avatar/__tests__/__snapshots__/Avatar.test.jsx.snap +0 -97
- package/build/components/Chat/components/Input/__tests__/__snapshots__/Input.test.jsx.snap +0 -178
- package/build/components/Chat/components/InputRich/__tests__/__snapshots__/InputRich.test.jsx.snap +0 -282
- package/build/components/Chat/components/Message/__tests__/__snapshots__/Message.test.jsx.snap +0 -211
- package/build/components/Chat/components/Message/components/__tests__/__snapshots__/Booking.test.js.snap +0 -65
- package/build/components/Chat/components/Message/components/__tests__/__snapshots__/Card.test.js.snap +0 -29
- package/build/components/Chat/components/Message/components/__tests__/__snapshots__/Environment.test.js.snap +0 -44
- package/build/components/Chat/components/Offline/__tests__/__snapshots__/Offline.test.js.snap +0 -162
- package/build/components/Chat/helpers/__tests__/__snapshots__/getVerboseDate.test.js.snap +0 -9
- package/build/components/Checkout/__tests__/__snapshots__/Checkout.test.js.snap +0 -2018
- package/build/components/Checkout/components/InputRadio/__tests__/__snapshots__/InputRadio.test.js.snap +0 -347
- package/build/components/Checkout/partials/__tests__/__snapshots__/Checkout.Confirmation.test.js.snap +0 -418
- package/build/components/Checkout/partials/__tests__/__snapshots__/Checkout.Form.test.js.snap +0 -6754
- package/build/components/Deals/__tests__/__snapshots__/Deals.Calendar.test.js.snap +0 -4449
- package/build/components/Deals/__tests__/__snapshots__/Deals.constants.js.snap +0 -15
- package/build/components/Deals/__tests__/__snapshots__/Deals.test.js.snap +0 -7828
- package/build/components/Deals/helpers/__tests__/__mocks__/deal.json +0 -25
- package/build/components/Environment/__tests__/__snapshots__/Environment.State.test.js.snap +0 -120
- package/build/components/Environment/__tests__/__snapshots__/Environment.test.js.snap +0 -988
- package/build/components/Finder/__tests__/__snapshots__/Finder.constants.test.js.snap +0 -39
- package/build/components/Finder/__tests__/__snapshots__/Finder.test.js.snap +0 -22237
- package/build/components/Finder/components/Calendar/__tests__/__mocks__/prices.json +0 -11
- package/build/components/Finder/components/Calendar/__tests__/__snapshots__/Calendar.test.js.snap +0 -11108
- package/build/components/Finder/components/Places/__tests__/__mocks__/places.json +0 -44
- package/build/components/Finder/components/Places/__tests__/__snapshots__/Places.test.js.snap +0 -324
- package/build/components/Finder/helpers/__tests__/__mocks__/dataSource.json +0 -1382
- package/build/components/Finder/helpers/__tests__/__snapshots__/getForwarderUrl.test.js.snap +0 -7
- package/build/components/Header/__tests__/__snapshots__/Header.test.js.snap +0 -1187
- package/build/components/Profile/components/Bookings/__tests__/__snapshots__/Bookings.test.js.snap +0 -19
- package/build/components/Rates/__tests__/__snapshots__/Rates.Content.test.js.snap +0 -41
- package/build/components/Rates/__tests__/__snapshots__/Rates.Footer.test.js.snap +0 -50
- package/build/components/Rates/__tests__/__snapshots__/Rates.Header.test.js.snap +0 -3
- package/build/components/Rates/__tests__/__snapshots__/Rates.RoomSelector.test.js.snap +0 -3
- package/build/components/Rates/__tests__/__snapshots__/Rates.Unavailability.test.js.snap +0 -53
- package/build/components/Rates/__tests__/__snapshots__/Rates.test.js.snap +0 -11760
- package/build/components/Rates/components/CardHotel/__tests__/__snapshots__/CardHotel.test.js.snap +0 -113
- package/build/components/Rates/components/Filters/__tests__/__snapshots__/FIlters.Button.test.js.snap +0 -32
- package/build/components/Rates/components/Filters/__tests__/__snapshots__/Filters.Amenity.test.js.snap +0 -21
- package/build/components/Rates/components/Filters/__tests__/__snapshots__/Filters.BookingOption.test.js.snap +0 -32
- package/build/components/Rates/components/Filters/__tests__/__snapshots__/Filters.test.js.snap +0 -167
- package/build/components/Rates/components/Hotelverse/__tests__/__snapshots__/Hotelverse.test.js.snap +0 -3
- package/build/components/Rates/components/Item/__tests__/__snapshots__/Item.Preview.test.js.snap +0 -96
- package/build/components/Rates/components/Item/__tests__/__snapshots__/Item.Rates.test.js.snap +0 -9
- package/build/components/Rates/components/Item/__tests__/__snapshots__/Item.Summary.test.js.snap +0 -53
- package/build/components/Rates/components/Item/__tests__/__snapshots__/Item.test.js.snap +0 -154
- package/build/components/Rates/components/Item/components/Amenities/__tests__/__snapshots__/Amenities.test.js.snap +0 -3
- package/build/components/Rates/components/Item/components/Countdown/__tests__/__snapshots__/Countdown.test.js.snap +0 -3
- package/build/components/Rates/components/Item/components/Features/__tests__/__snapshots__/Features.test.js.snap +0 -40
- package/build/components/Rates/components/Item/components/ModalCancellationInfo/__tests__/__snapshots__/ModalCancellationInfo.test.js.snap +0 -35
- package/build/components/Rates/components/Item/components/ModalInfo/__tests__/__snapshots__/ModalInfo.test.js.snap +0 -72
- package/build/components/Rates/components/Item/components/ModalOfferInfo/__tests__/__snapshots__/ModalOfferInfo.test.js.snap +0 -49
- package/build/components/Rates/components/Item/components/ModalUrl/__tests__/__snapshots__/ModalUrl.test.js.snap +0 -50
- package/build/components/Rates/components/Item/components/Option/__tests__/__snapshots__/Option.test.js.snap +0 -18
- package/build/components/Rates/components/Item/components/PriceDetails/__tests__/__snapshots__/PriceDetails.test.js.snap +0 -23
- package/build/components/Rates/components/Item/components/RateDetails/__tests__/__snapshots__/RateDetails.test.js.snap +0 -3
- package/build/components/Rates/components/Item/components/Slider/__tests__/__snapshots__/Slider.test.js.snap +0 -27
- package/build/components/Rates/components/Item/components/TooltipDates/__tests__/__snapshots__/TooltipDates.test.js.snap +0 -3
- package/build/components/Rates/components/ModalClubRate/__tests__/__snapshots__/ModalClubRate.test.js.snap +0 -257
- package/build/components/Rates/components/ModalExtras/__tests__/__snapshots__/ModalExtras.test.js.snap +0 -68
- package/build/components/Rates/components/ModalMapView/__tests__/__snapshots__/ModalMapView.test.js.snap +0 -78
- package/build/components/Session/__tests__/__snapshots__/Session.test.js.snap +0 -260
- package/build/components/Signup/__tests__/__snapshots__/Signup.test.js.snap +0 -1091
- package/build/components/__shared__/BookingDates/__tests__/__snapshots__/BookingDates.test.js.snap +0 -208
- package/build/components/__shared__/BookingDetails/__tests__/__snapshots__/BookingDetails.test.js.snap +0 -2190
- package/build/components/__shared__/BookingTable/__tests__/__snapshots__/BookingTable.Row.test.js.snap +0 -500
- package/build/components/__shared__/BookingTable/__tests__/__snapshots__/BookingTable.test.js.snap +0 -745
- package/build/components/__shared__/BookingTerms/__tests__/__snapshots__/BookingTerms.test.js.snap +0 -450
- package/build/components/__shared__/ButtonMore/__tests__/__snapshots__/ButtonMore.test.js.snap +0 -115
- package/build/components/__shared__/ButtonPayment/__tests__/__snapshots__/ButtonPayment.test.js.snap +0 -206
- package/build/components/__shared__/ButtonPayment/components/Form/__tests__/__snapshots__/Form.test.js.snap +0 -65
- package/build/components/__shared__/ButtonPayment/components/FormAddon/__tests__/__snapshots__/FormAddon.test.js.snap +0 -68
- package/build/components/__shared__/ButtonPayment/components/FormCheckout/__tests__/__snapshots__/FormCheckout.test.js.snap +0 -356
- package/build/components/__shared__/ButtonPayment/components/FormCheckout/helpers/__tests__/__snapshots__/getStyle.test.js.snap +0 -23
- package/build/components/__shared__/ButtonPayment/components/FormPaycomet/__tests__/__snapshots__/FormPaycomet.test.js.snap +0 -165
- package/build/components/__shared__/ButtonPayment/components/FormSipay/__tests__/__snapshots__/FormSipay.test.js.snap +0 -161
- package/build/components/__shared__/ButtonPayment/components/InputField/__tests__/__snapshots__/InputField.test.js.snap +0 -190
- package/build/components/__shared__/Card/__tests__/__snapshots__/Card.test.js.snap +0 -34
- package/build/components/__shared__/Countdown/__tests__/__snapshots__/Countdown.test.js.snap +0 -42
- package/build/components/__shared__/Field/__tests__/__snapshots__/Field.test.js.snap +0 -1018
- package/build/components/__shared__/FieldOccupation/__tests__/__snapshots__/FieldOccupation.test.js.snap +0 -2243
- package/build/components/__shared__/FieldPromocode/__tests__/__snapshots__/FieldPromocode.test.jsx.snap +0 -373
- package/build/components/__shared__/Footer/__tests__/__snapshots__/Footer.test.js.snap +0 -178
- package/build/components/__shared__/NotificationRequiredFields/__tests__/__snapshots__/NotificationRequiredFields.test.js.snap +0 -118
- package/build/components/__shared__/Occupation/__tests__/__mocks__/occupation.json +0 -17
- package/build/components/__shared__/Occupation/__tests__/__snapshots__/Occupation.test.js.snap +0 -3754
- package/build/components/__shared__/Payment/__tests__/__snapshots__/Payment.test.js.snap +0 -1109
- package/build/components/__shared__/Payment/components/AmazonPay/__tests__/__snapshots__/AmazonPay.test.js.snap +0 -23
- package/build/components/__shared__/Payment/components/Aplazame/__tests__/__snapshots__/Aplazame.test.js.snap +0 -33
- package/build/components/__shared__/Payment/components/Card/__tests__/__snapshots__/Card.test.js.snap +0 -933
- package/build/components/__shared__/Payment/components/PCI/__tests__/__snapshots__/PCI.test.js.snap +0 -474
- package/build/components/__shared__/Payment/components/Tpv/__tests__/__snapshots__/Tpv.test.js.snap +0 -98
- package/build/components/__shared__/PriceBreakdown/__tests__/__snapshots__/PriceBreakdown.Line.test.js.snap +0 -49
- package/build/components/__shared__/PriceBreakdown/__tests__/__snapshots__/PriceBreakdown.test.js.snap +0 -337
- package/build/components/__shared__/SelectEnvironment/__tests__/__snapshots__/SelectEnvironment.test.js.snap +0 -1192
- package/build/components/__shared__/Skeleton/__tests__/__snapshots__/Skeleton.test.js.snap +0 -66
- package/build/components/__shared__/TextRequiredFields/__tests__/__snapshots__/TextRequiredFields.test.js.snap +0 -41
- package/build/components/helpers/__tests__/__mocks__/hotels.json +0 -87
- package/build/components/helpers/__tests__/__snapshots__/parseHtml.test.js.snap +0 -317
- package/playwright.config.js +0 -50
- package/public/App.Container.jsx +0 -147
- package/public/App.jsx +0 -34
- package/public/App.module.css +0 -153
- package/public/index.html +0 -32
- package/public/index.template.html +0 -19
- package/public/performance/index.html +0 -159
- package/public/routes/Deals.jsx +0 -20
- package/public/routes/Finder.jsx +0 -19
- package/public/routes/Home.constants.js +0 -52
- package/public/routes/Home.jsx +0 -131
- package/public/routes/NotFound.jsx +0 -23
- package/public/routes/Profile.jsx +0 -21
- package/public/routes/Signup.jsx +0 -20
- package/public/routes/Step0-Accommodations.jsx +0 -4
- package/public/routes/Step1-Rates.jsx +0 -12
- package/public/routes/Step2-Checkout.jsx +0 -4
- package/public/routes/Step3-Booking.jsx +0 -4
- package/public/routes/components/Logo.jsx +0 -18
- package/public/routes/components/index.js +0 -1
- package/public/routes/index.js +0 -10
- package/public/routes/routes.module.css +0 -259
- package/public/themes/monalisa.theme.css +0 -45
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
export const extras = async ({ page, empty, onlyOne }) => {
|
|
2
|
-
await page.route('https://reservation.mirai.com/XMAS/reservation/v2/booking/extras*', (route) => {
|
|
3
|
-
route.fulfill({
|
|
4
|
-
status: 200,
|
|
5
|
-
contentType: 'application/json',
|
|
6
|
-
body: JSON.stringify(empty ? {} : require(`../__mocks__/extras${onlyOne ? '-one' : ''}-success.json`)),
|
|
7
|
-
});
|
|
8
|
-
});
|
|
9
|
-
};
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { expect } from '@playwright/test';
|
|
2
|
-
|
|
3
|
-
export const extrasExpect = async ({ page, testId }) => {
|
|
4
|
-
await page.waitForTimeout(500);
|
|
5
|
-
await expect(page).toHaveScreenshot({
|
|
6
|
-
clip: await (await page.getByTestId(`${testId}-modalExtras`)).boundingBox(),
|
|
7
|
-
});
|
|
8
|
-
|
|
9
|
-
await page.getByTestId(`${testId}-modalExtras-submit`).click();
|
|
10
|
-
await expect(page).toHaveURL(/.*step2-checkout/, { timeout: 10000 });
|
|
11
|
-
};
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { expect } from '@playwright/test';
|
|
2
|
-
|
|
3
|
-
import { occupation } from '../../Finder/workflows';
|
|
4
|
-
|
|
5
|
-
const WAIT_URL = 'https://reservation.mirai.com/XMAS/reservation/v2/booking/rates*';
|
|
6
|
-
|
|
7
|
-
export const multiroom = async ({ isMobile, page, testId }) => {
|
|
8
|
-
await expect(await page.getByTestId(`${testId}-multiroom`)).toBeHidden();
|
|
9
|
-
|
|
10
|
-
await occupation({ addRoom: true, isMobile, page, search: true, testId: `${testId}-finder` });
|
|
11
|
-
await expect(await page.getByTestId(`${testId}-multiroom`)).toBeVisible();
|
|
12
|
-
|
|
13
|
-
await page.waitForResponse(WAIT_URL);
|
|
14
|
-
const buttons = await page.getByTestId(`${testId}-multiroom`).locator('ui-button').all();
|
|
15
|
-
expect(buttons.length).toBe(2);
|
|
16
|
-
expect(buttons[0]).not.toHaveAttribute('disabled');
|
|
17
|
-
expect(buttons[1]).toHaveAttribute('disabled');
|
|
18
|
-
|
|
19
|
-
await page.getByTestId(`${testId}-item-0-select`).click();
|
|
20
|
-
await page.waitForResponse(WAIT_URL);
|
|
21
|
-
expect(buttons[0]).not.toHaveAttribute('disabled');
|
|
22
|
-
expect(buttons[1]).not.toHaveAttribute('disabled');
|
|
23
|
-
|
|
24
|
-
await page.getByTestId(`${testId}-item-0-select`).click();
|
|
25
|
-
await page.getByTestId(`${testId}-footer-reserve`).click();
|
|
26
|
-
};
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
export const rates = async ({ page }) => {
|
|
2
|
-
await page.route('https://reservation.mirai.com/XMAS/reservation/v2/booking/rates*', (route) => {
|
|
3
|
-
route.fulfill({
|
|
4
|
-
status: 200,
|
|
5
|
-
contentType: 'application/json',
|
|
6
|
-
body: JSON.stringify(require('../__mocks__/rates-success.json')),
|
|
7
|
-
});
|
|
8
|
-
});
|
|
9
|
-
};
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { expect } from '@playwright/test';
|
|
2
|
-
|
|
3
|
-
export const bookings = async ({ isMobile, page }) => {
|
|
4
|
-
await page.getByTestId('show-profile-menu').click();
|
|
5
|
-
await page.getByTestId(`profile-menu-${isMobile ? 2 : 1}`).click();
|
|
6
|
-
|
|
7
|
-
await page.waitForURL(/\/profile/, { waitUntil: 'networkidle', timeout: 10000 });
|
|
8
|
-
|
|
9
|
-
// Card: price details
|
|
10
|
-
await page.getByText('Price details').first().click();
|
|
11
|
-
await expect(page.locator('ui-tooltip-content')).toBeVisible();
|
|
12
|
-
|
|
13
|
-
// Search
|
|
14
|
-
await page.getByTestId('show-search').click();
|
|
15
|
-
await page.fill('input[name="search"]', '19800410');
|
|
16
|
-
await page.getByTestId('button-search').click();
|
|
17
|
-
await expect(page.locator('ui-tooltip-content')).not.toBeVisible();
|
|
18
|
-
};
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { expect } from '@playwright/test';
|
|
2
|
-
|
|
3
|
-
import { USER } from '../../constants';
|
|
4
|
-
|
|
5
|
-
export const forgotPassword = async ({ page }) => {
|
|
6
|
-
await page.getByTestId('show-login').click();
|
|
7
|
-
await page.waitForTimeout(300);
|
|
8
|
-
|
|
9
|
-
await page.getByTestId('login-action').click();
|
|
10
|
-
|
|
11
|
-
await page.fill('input[name="email"]', USER.email);
|
|
12
|
-
|
|
13
|
-
const [responseError] = await Promise.all([
|
|
14
|
-
page.waitForResponse((response) => response.url().includes('/recovery') && !!response.status()),
|
|
15
|
-
page.getByTestId('login-button').click(),
|
|
16
|
-
]);
|
|
17
|
-
expect(responseError.status()).toBe(200);
|
|
18
|
-
|
|
19
|
-
await page.getByTestId('login-button-secondary').click();
|
|
20
|
-
};
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { expect } from '@playwright/test';
|
|
2
|
-
|
|
3
|
-
import { SESSION } from '../../constants';
|
|
4
|
-
|
|
5
|
-
export const login = async ({ page }) => {
|
|
6
|
-
await page.getByTestId('show-login').click();
|
|
7
|
-
await page.waitForTimeout(300);
|
|
8
|
-
|
|
9
|
-
// Fails
|
|
10
|
-
await page.fill('input[name="email"]', SESSION.email);
|
|
11
|
-
expect(await page.getByTestId('login-button').getAttribute('disabled')).toBe('true');
|
|
12
|
-
await page.fill('input[name="password"]', 'PassworD');
|
|
13
|
-
|
|
14
|
-
const [responseError] = await Promise.all([
|
|
15
|
-
page.waitForResponse((response) => response.url().includes('/login') && !!response.status()),
|
|
16
|
-
page.getByTestId('login-button').click(),
|
|
17
|
-
]);
|
|
18
|
-
expect(responseError.status()).toBe(400);
|
|
19
|
-
|
|
20
|
-
// Success
|
|
21
|
-
await page.fill('input[name="email"]', SESSION.email);
|
|
22
|
-
await page.fill('input[name="password"]', SESSION.password);
|
|
23
|
-
|
|
24
|
-
const [response] = await Promise.all([
|
|
25
|
-
page.waitForResponse((response) => response.url().includes('/login') && !!response.status()),
|
|
26
|
-
page.getByTestId('login-button').click(),
|
|
27
|
-
]);
|
|
28
|
-
expect(response.status()).toBe(200);
|
|
29
|
-
};
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { expect } from '@playwright/test';
|
|
2
|
-
|
|
3
|
-
export const logout = async ({ isMobile, page }) => {
|
|
4
|
-
await page.getByTestId('show-profile-menu').click();
|
|
5
|
-
await page.getByTestId(`profile-menu-${isMobile ? 3 : 2}`).click();
|
|
6
|
-
|
|
7
|
-
await expect(page.getByTestId('show-login')).toBeVisible();
|
|
8
|
-
};
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import { expect } from '@playwright/test';
|
|
2
|
-
|
|
3
|
-
import { SESSION, USER } from '../../constants';
|
|
4
|
-
|
|
5
|
-
// ! TODO: Somehow we should close the notifications
|
|
6
|
-
// import { closeNotification } from '../../helpers';
|
|
7
|
-
|
|
8
|
-
export const profile = async ({ isMobile, page }) => {
|
|
9
|
-
await page.getByTestId('show-profile-menu').click();
|
|
10
|
-
await page.getByTestId(`profile-menu-${isMobile ? 1 : 0}`).click();
|
|
11
|
-
|
|
12
|
-
await page.waitForURL(/\/profile/, { waitUntil: 'networkidle', timeout: 10000 });
|
|
13
|
-
|
|
14
|
-
// Update profile
|
|
15
|
-
await page.fill('input[name="firstName"]', USER.firstName);
|
|
16
|
-
await page.fill('input[name="lastName"]', USER.lastName);
|
|
17
|
-
await page.fill('input[name="dateOfBirth"]', USER.dateOfBirth);
|
|
18
|
-
await page.locator('input[name="subscribed"]').check();
|
|
19
|
-
|
|
20
|
-
const [response] = await Promise.all([
|
|
21
|
-
page.waitForResponse((response) => response.url().includes('/modify_member') && !!response.status()),
|
|
22
|
-
page.getByTestId('button-save').click(),
|
|
23
|
-
]);
|
|
24
|
-
expect(response.status()).toBe(200);
|
|
25
|
-
// await closeNotification();
|
|
26
|
-
|
|
27
|
-
// Move to "security" context
|
|
28
|
-
await page.getByTestId('profile-context-2').click();
|
|
29
|
-
|
|
30
|
-
// Try to change the password but user fails with the confirmation password
|
|
31
|
-
await page.fill('input[name="password"]', SESSION.password);
|
|
32
|
-
await page.fill('input[name="rePassword"]', 'n3wp4ssw0rD');
|
|
33
|
-
expect(await page.getByTestId('button-password').getAttribute('disabled')).toBe('true');
|
|
34
|
-
|
|
35
|
-
// User changes password
|
|
36
|
-
await page.fill('input[name="password"]', SESSION.password);
|
|
37
|
-
await page.fill('input[name="rePassword"]', SESSION.password);
|
|
38
|
-
const [responsePassword] = await Promise.all([
|
|
39
|
-
page.waitForResponse((response) => response.url().includes('/modify_member') && !!response.status()),
|
|
40
|
-
page.getByTestId('button-password').click(),
|
|
41
|
-
]);
|
|
42
|
-
expect(responsePassword.status()).toBe(200);
|
|
43
|
-
// await closeNotification();
|
|
44
|
-
|
|
45
|
-
// Try to delete account and cancel process.
|
|
46
|
-
await page.getByTestId('button-delete-account').click();
|
|
47
|
-
await page.waitForTimeout(300);
|
|
48
|
-
await page.getByTestId('button-delete-close').click();
|
|
49
|
-
};
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { expect } from '@playwright/test';
|
|
2
|
-
|
|
3
|
-
import { USER } from '../../constants';
|
|
4
|
-
|
|
5
|
-
export const signup = async ({ page }) => {
|
|
6
|
-
await page.fill('ui-signup input[name="firstName"]', USER.firstName);
|
|
7
|
-
await page.fill('ui-signup input[name="lastName"]', USER.lastName);
|
|
8
|
-
await page.fill('ui-signup input[name="email"]', `${new Date().getTime()}@mail.com`);
|
|
9
|
-
await page.fill('ui-signup input[name="dateOfBirth"]', USER.dateOfBirth);
|
|
10
|
-
await page.locator('ui-signup select[name="country"]').selectOption('United States');
|
|
11
|
-
await page.fill('ui-signup input[name="password"]', USER.password);
|
|
12
|
-
await page.locator('ui-signup input[name="subscribed"]').check();
|
|
13
|
-
|
|
14
|
-
// User forgot some fields
|
|
15
|
-
await page.getByTestId('signup-button').click();
|
|
16
|
-
await page.waitForSelector('ui-notification-error', { state: 'visible' });
|
|
17
|
-
await page.locator('input[name="privacy"]').check();
|
|
18
|
-
|
|
19
|
-
// Success
|
|
20
|
-
const [responseError] = await Promise.all([
|
|
21
|
-
page.waitForResponse((response) => response.url().includes('/join') && !!response.status()),
|
|
22
|
-
page.getByTestId('signup-button').click(),
|
|
23
|
-
]);
|
|
24
|
-
|
|
25
|
-
expect(responseError.status()).toBe(201);
|
|
26
|
-
};
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { expect } from '@playwright/test';
|
|
2
|
-
|
|
3
|
-
import { USER } from '../../constants';
|
|
4
|
-
|
|
5
|
-
export const signupError = async ({ page }) => {
|
|
6
|
-
await page.fill('ui-signup input[name="firstName"]', USER.firstName);
|
|
7
|
-
await page.fill('ui-signup input[name="lastName"]', USER.lastName);
|
|
8
|
-
await page.fill('ui-signup input[name="email"]', USER.email);
|
|
9
|
-
await page.fill('ui-signup input[name="dateOfBirth"]', USER.dateOfBirth);
|
|
10
|
-
await page.locator('ui-signup select[name="country"]').selectOption('United States');
|
|
11
|
-
await page.fill('ui-signup input[name="password"]', USER.password);
|
|
12
|
-
await page.locator('ui-signup input[name="subscribed"]').check();
|
|
13
|
-
await page.locator('input[name="privacy"]').check();
|
|
14
|
-
|
|
15
|
-
// Success
|
|
16
|
-
const [responseError] = await Promise.all([
|
|
17
|
-
page.waitForResponse((response) => response.url().includes('/join') && !!response.status()),
|
|
18
|
-
page.getByTestId('signup-button').click(),
|
|
19
|
-
]);
|
|
20
|
-
|
|
21
|
-
expect(responseError.status()).toBe(409);
|
|
22
|
-
};
|
package/__tests__/__screenshots__/rates.spec.jsx/Desktop/Search-multiroom-with-one-extras-1.png
DELETED
|
Binary file
|
package/__tests__/__screenshots__/rates.spec.jsx/Desktop/Search-multiroom-with-some-extras-1.png
DELETED
|
Binary file
|
package/__tests__/__screenshots__/rates.spec.jsx/iPhone-12/Search-multiroom-with-one-extras-1.png
DELETED
|
Binary file
|
package/__tests__/__screenshots__/rates.spec.jsx/iPhone-12/Search-multiroom-with-some-extras-1.png
DELETED
|
Binary file
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { test } from '@playwright/test';
|
|
2
|
-
|
|
3
|
-
import { PAGE_URL, URL_PARAMS } from './Booking/booking.constants';
|
|
4
|
-
import { cancel, print, resend, review } from './Booking/workflows';
|
|
5
|
-
|
|
6
|
-
test.beforeEach(async ({ context, page }) => {
|
|
7
|
-
await context.addInitScript(() => (window.IS_PLAYWRIGHT = true));
|
|
8
|
-
|
|
9
|
-
await page.route('https://reservation.mirai.com/XMAS/reservation/v2/booking/*', (route) => {
|
|
10
|
-
route.fulfill({
|
|
11
|
-
status: 200,
|
|
12
|
-
contentType: 'application/json',
|
|
13
|
-
body: JSON.stringify(require(`./Booking/__mocks__/booking-${route.request().method().toLowerCase()}.json`)),
|
|
14
|
-
});
|
|
15
|
-
});
|
|
16
|
-
|
|
17
|
-
await page.goto(`${PAGE_URL}${URL_PARAMS.DEFAULT}`, { waitUntil: 'networkidle', timeout: 10000 });
|
|
18
|
-
});
|
|
19
|
-
|
|
20
|
-
test(`Review`, async ({ isMobile, page }) => {
|
|
21
|
-
await review({ isMobile, page });
|
|
22
|
-
});
|
|
23
|
-
|
|
24
|
-
test(`Print`, async ({ isMobile, page }) => {
|
|
25
|
-
await print({ isMobile, page });
|
|
26
|
-
});
|
|
27
|
-
|
|
28
|
-
test(`Resend`, async ({ isMobile, page }) => {
|
|
29
|
-
await resend({ isMobile, page });
|
|
30
|
-
});
|
|
31
|
-
|
|
32
|
-
test(`Cancel`, async ({ isMobile, page }) => {
|
|
33
|
-
await cancel({ isMobile, page });
|
|
34
|
-
});
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import { test, expect } from '@playwright/test';
|
|
2
|
-
|
|
3
|
-
import { login } from './BookingQuery/workflows';
|
|
4
|
-
|
|
5
|
-
const CORRECT_ID = '23011372299';
|
|
6
|
-
const CORRECT_PIN_CODE = '7950376';
|
|
7
|
-
const INCORRECT_ID = '123456789';
|
|
8
|
-
const INCORRECT_PIN_CODE = '123456';
|
|
9
|
-
|
|
10
|
-
const testId = 'bookingQuery';
|
|
11
|
-
|
|
12
|
-
test.beforeEach(async ({ context, page }) => {
|
|
13
|
-
await context.addInitScript(() => (window.IS_PLAYWRIGHT = true));
|
|
14
|
-
|
|
15
|
-
await page.goto('http://local.mirai.com:8080', { waitUntil: 'networkidle', timeout: 10000 });
|
|
16
|
-
});
|
|
17
|
-
|
|
18
|
-
test('incorrect id and pinCode booking', async ({ page }) => {
|
|
19
|
-
await login({ id: INCORRECT_ID, page, pinCode: INCORRECT_PIN_CODE, testId });
|
|
20
|
-
await expect(page.getByTestId(`${testId}-notification-error`)).toBeVisible();
|
|
21
|
-
});
|
|
22
|
-
|
|
23
|
-
test('incorrect id and correct pinCode booking', async ({ page }) => {
|
|
24
|
-
await login({ id: INCORRECT_ID, page, pinCode: CORRECT_PIN_CODE, testId });
|
|
25
|
-
await expect(page.getByTestId(`${testId}-notification-error`)).toBeVisible();
|
|
26
|
-
});
|
|
27
|
-
|
|
28
|
-
test('correct id and incorrect pinCode booking', async ({ page }) => {
|
|
29
|
-
await login({ id: CORRECT_ID, page, pinCode: INCORRECT_PIN_CODE, testId });
|
|
30
|
-
await expect(page.getByTestId(`${testId}-notification-error`)).toBeVisible();
|
|
31
|
-
});
|
|
32
|
-
|
|
33
|
-
test('correct id and correct pinCode booking', async ({ page }) => {
|
|
34
|
-
await page.route(/.*login_reservation.json*/, (route) => {
|
|
35
|
-
route.fulfill({
|
|
36
|
-
status: 200,
|
|
37
|
-
contentType: 'application/json',
|
|
38
|
-
body: JSON.stringify(require(`./BookingQuery/__mocks__/user-booking-get.json`)),
|
|
39
|
-
});
|
|
40
|
-
});
|
|
41
|
-
await login({ id: CORRECT_ID, page, pinCode: CORRECT_PIN_CODE, testId, wait: false });
|
|
42
|
-
await expect(page).toHaveURL(/.*step3-booking*/);
|
|
43
|
-
});
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { test } from '@playwright/test';
|
|
2
|
-
|
|
3
|
-
const testId = `button-finder`;
|
|
4
|
-
|
|
5
|
-
test.beforeEach(async ({ context, page }) => {
|
|
6
|
-
await context.addInitScript(() => (window.IS_PLAYWRIGHT = true));
|
|
7
|
-
|
|
8
|
-
await page.goto('http://local.mirai.com:8080', { waitUntil: 'networkidle', timeout: 10000 });
|
|
9
|
-
});
|
|
10
|
-
|
|
11
|
-
test('Open & Close', async ({ page }) => {
|
|
12
|
-
await page.getByTestId(`${testId}-button-modal`).click();
|
|
13
|
-
await page.waitForTimeout(300);
|
|
14
|
-
await page.getByTestId(`${testId}-modal-button-close`).click();
|
|
15
|
-
await page.waitForTimeout(300);
|
|
16
|
-
});
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
import { test } from '@playwright/test';
|
|
2
|
-
|
|
3
|
-
import { PAGE_URL, URL_PARAMS } from './Checkout/checkout.constants';
|
|
4
|
-
import { form, payment, review, submit } from './Checkout/workflows';
|
|
5
|
-
|
|
6
|
-
const PAYMENTS = ['PAYLATER', 'TPV', 'TRANSFER'];
|
|
7
|
-
|
|
8
|
-
test.beforeEach(async ({ context }) => {
|
|
9
|
-
await context.addInitScript(() => (window.IS_PLAYWRIGHT = true));
|
|
10
|
-
});
|
|
11
|
-
|
|
12
|
-
const enviroment = async ({ page, payment }) => {
|
|
13
|
-
await page.route(
|
|
14
|
-
'https://reservation.mirai.com/XMAS/reservation/request_is_possible_prereserve_V2.json*',
|
|
15
|
-
(route) => {
|
|
16
|
-
route.fulfill({
|
|
17
|
-
status: 200,
|
|
18
|
-
contentType: 'application/json',
|
|
19
|
-
body: JSON.stringify({ status: 'OK', message: '', data: null }),
|
|
20
|
-
});
|
|
21
|
-
},
|
|
22
|
-
);
|
|
23
|
-
await page.route(/https:\/\/reservation\.mirai\.com\/XMAS\/reservation\/v2\/booking\/checkout(\?.*)?$/, (route) => {
|
|
24
|
-
const method = route.request().method().toLowerCase();
|
|
25
|
-
|
|
26
|
-
route.fulfill({
|
|
27
|
-
status: 200,
|
|
28
|
-
contentType: 'application/json',
|
|
29
|
-
body: JSON.stringify(
|
|
30
|
-
require(`./Checkout/__mocks__/checkout-${method}${method === 'post' ? `-${payment}` : ''}.json`),
|
|
31
|
-
),
|
|
32
|
-
});
|
|
33
|
-
});
|
|
34
|
-
|
|
35
|
-
await page.goto(`${PAGE_URL}${URL_PARAMS.DEFAULT}`, { waitUntil: 'networkidle', timeout: 10000 });
|
|
36
|
-
};
|
|
37
|
-
|
|
38
|
-
PAYMENTS.forEach((paymentId) => {
|
|
39
|
-
test(`Payment w/ ${paymentId}`, async ({ page }) => {
|
|
40
|
-
await enviroment({ page, payment: paymentId });
|
|
41
|
-
|
|
42
|
-
await form({ page });
|
|
43
|
-
await payment({ page, payment: paymentId });
|
|
44
|
-
await submit({ page, payment: paymentId });
|
|
45
|
-
});
|
|
46
|
-
});
|
|
47
|
-
|
|
48
|
-
test(`Review & return to previous step`, async ({ page }) => {
|
|
49
|
-
await enviroment({ page });
|
|
50
|
-
|
|
51
|
-
await review({ page });
|
|
52
|
-
});
|
package/__tests__/constants.js
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
const DEFAULT_TIMEOUT = 10000;
|
|
2
|
-
|
|
3
|
-
const SESSION = {
|
|
4
|
-
email: 'hello@soyjavi.com',
|
|
5
|
-
password: 'BuyB1tc01N',
|
|
6
|
-
};
|
|
7
|
-
|
|
8
|
-
const USER = {
|
|
9
|
-
firstName: 'Hal',
|
|
10
|
-
lastName: 'Finney',
|
|
11
|
-
dateOfBirth: '04/05/1956',
|
|
12
|
-
phone: {
|
|
13
|
-
prefix: '+1',
|
|
14
|
-
number: '818-555-1234',
|
|
15
|
-
},
|
|
16
|
-
email: 'hal@finney.org',
|
|
17
|
-
password: 'BuyB1tc01N',
|
|
18
|
-
};
|
|
19
|
-
|
|
20
|
-
export { DEFAULT_TIMEOUT, SESSION, USER };
|
package/__tests__/deals.spec.js
DELETED
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { test } from '@playwright/test';
|
|
2
|
-
|
|
3
|
-
import { calendar, clear, occupation, promocode, submit } from './Deals/workflows';
|
|
4
|
-
|
|
5
|
-
test.beforeEach(async ({ context, page }) => {
|
|
6
|
-
await context.addInitScript(() => (window.IS_PLAYWRIGHT = true));
|
|
7
|
-
|
|
8
|
-
await page.route('https://index-deal.mirai.com/100379008/350807', (route) => {
|
|
9
|
-
route.fulfill({
|
|
10
|
-
status: 200,
|
|
11
|
-
contentType: 'application/json',
|
|
12
|
-
body: JSON.stringify(require('./Deals/__mocks__/deals-success.json')),
|
|
13
|
-
});
|
|
14
|
-
});
|
|
15
|
-
await page.goto('http://local.mirai.com:8080/deals', { waitUntil: 'networkidle', timeout: 10000 });
|
|
16
|
-
});
|
|
17
|
-
|
|
18
|
-
test('Search (default)', async ({ isMobile, page }) => {
|
|
19
|
-
await calendar({ isMobile, page });
|
|
20
|
-
await occupation({ isMobile, page });
|
|
21
|
-
await promocode({ isMobile, page });
|
|
22
|
-
await submit({ isMobile, page });
|
|
23
|
-
});
|
|
24
|
-
|
|
25
|
-
test('Fulfill form & clear', async ({ isMobile, page }) => {
|
|
26
|
-
await calendar({ isMobile, page });
|
|
27
|
-
await occupation({ isMobile, page });
|
|
28
|
-
await promocode({ isMobile, page });
|
|
29
|
-
await clear({ isMobile, page });
|
|
30
|
-
});
|
package/__tests__/finder.spec.js
DELETED
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
import { expect, test } from '@playwright/test';
|
|
2
|
-
|
|
3
|
-
import { calendar, occupation, promocode } from './Finder/workflows';
|
|
4
|
-
|
|
5
|
-
const testId = 'finder';
|
|
6
|
-
|
|
7
|
-
test.beforeEach(async ({ context, page }) => {
|
|
8
|
-
await context.addInitScript(() => (window.IS_PLAYWRIGHT = true));
|
|
9
|
-
|
|
10
|
-
await page.goto('http://local.mirai.com:8080', { waitUntil: 'networkidle', timeout: 10000 });
|
|
11
|
-
});
|
|
12
|
-
|
|
13
|
-
test('Search (default)', async ({ page }) => {
|
|
14
|
-
await calendar({ page, testId });
|
|
15
|
-
await page.getByTestId(`${testId}-submit`).click();
|
|
16
|
-
|
|
17
|
-
await expect(page).toHaveURL(/.*step1-rates/, { timeout: 10000 });
|
|
18
|
-
});
|
|
19
|
-
|
|
20
|
-
test('Search w/ +1 adult', async ({ isMobile, page }) => {
|
|
21
|
-
await calendar({ isMobile, page, testId });
|
|
22
|
-
await occupation({ addAdult: true, isMobile, page, testId });
|
|
23
|
-
|
|
24
|
-
await page.getByTestId(`${testId}-submit`).click();
|
|
25
|
-
|
|
26
|
-
await expect(page).toHaveURL(/.*step1-rates/, { timeout: 10000 });
|
|
27
|
-
});
|
|
28
|
-
|
|
29
|
-
test('Search w/ +1 child', async ({ isMobile, page }) => {
|
|
30
|
-
await calendar({ isMobile, page, testId });
|
|
31
|
-
await occupation({ addChild: true, isMobile, page, testId });
|
|
32
|
-
|
|
33
|
-
await page.getByTestId(`${testId}-submit`).click();
|
|
34
|
-
|
|
35
|
-
await expect(page).toHaveURL(/.*step1-rates/, { timeout: 10000 });
|
|
36
|
-
});
|
|
37
|
-
|
|
38
|
-
test('Search w/ +1 child widhout age', async ({ isMobile, page }) => {
|
|
39
|
-
await calendar({ isMobile, page, testId });
|
|
40
|
-
await occupation({ addAgeChild: false, addChild: true, isMobile, page, testId });
|
|
41
|
-
|
|
42
|
-
await page.getByTestId(`${testId}-submit`).click();
|
|
43
|
-
|
|
44
|
-
if (isMobile) await expect(page.getByTestId(`${testId}-occupation-field-modal`)).toBeVisible();
|
|
45
|
-
else await expect(page.getByTestId(`${testId}-occupation`)).toBeVisible();
|
|
46
|
-
});
|
|
47
|
-
|
|
48
|
-
test('Search w/ promocode', async ({ isMobile, page }) => {
|
|
49
|
-
await calendar({ isMobile, page, testId });
|
|
50
|
-
await promocode({ isMobile, page, testId });
|
|
51
|
-
|
|
52
|
-
await page.getByTestId(`${testId}-submit`).click();
|
|
53
|
-
|
|
54
|
-
await expect(page).toHaveURL(/.*step1-rates/, { timeout: 10000 });
|
|
55
|
-
});
|
|
56
|
-
|
|
57
|
-
test('Search w/ +1 adult & promocode', async ({ isMobile, page }) => {
|
|
58
|
-
await calendar({ isMobile, page, testId });
|
|
59
|
-
await occupation({ addAdult: true, isMobile, page, testId });
|
|
60
|
-
await promocode({ isMobile, page, testId });
|
|
61
|
-
|
|
62
|
-
await page.getByTestId(`${testId}-submit`).click();
|
|
63
|
-
|
|
64
|
-
await expect(page).toHaveURL(/.step1-rates/, { timeout: 10000 });
|
|
65
|
-
});
|
|
66
|
-
|
|
67
|
-
test('Search w/ +1 adult, +1 room & promocode', async ({ isMobile, page }) => {
|
|
68
|
-
await calendar({ isMobile, page, testId });
|
|
69
|
-
await occupation({ addAdult: true, addRoom: true, isMobile, page, testId });
|
|
70
|
-
await promocode({ isMobile, page, testId });
|
|
71
|
-
|
|
72
|
-
await page.getByTestId(`${testId}-submit`).click();
|
|
73
|
-
|
|
74
|
-
await expect(page).toHaveURL(/.step1-rates/, { timeout: 10000 });
|
|
75
|
-
});
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { UTC } from '@mirai/locale';
|
|
2
|
-
|
|
3
|
-
export const getWeekNumber = (date) => {
|
|
4
|
-
const firstDayOfYear = UTC(new Date(date.getFullYear(), 0, 1));
|
|
5
|
-
const pastDaysOfYear = (Number(date) - Number(firstDayOfYear)) / 86400000;
|
|
6
|
-
|
|
7
|
-
return Math.ceil((pastDaysOfYear + firstDayOfYear.getDay()) / 7);
|
|
8
|
-
};
|
package/__tests__/rates.spec.jsx
DELETED
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import { expect, test } from '@playwright/test';
|
|
2
|
-
|
|
3
|
-
import { extras, extrasExpect, multiroom, rates } from './Rates/workflows';
|
|
4
|
-
|
|
5
|
-
const testId = 'rates';
|
|
6
|
-
|
|
7
|
-
test.beforeEach(async ({ context, page }) => {
|
|
8
|
-
await context.addInitScript(() => (window.IS_PLAYWRIGHT = true));
|
|
9
|
-
await rates({ page });
|
|
10
|
-
|
|
11
|
-
await page.goto(
|
|
12
|
-
'http://local.mirai.com:8080/step1-rates?checkin=10/04/2025&idtokenprovider=100379008¤cy=EUR&hsri=02040&lang=en&nights=2&parties=W3siYWR1bHRzIjoyLCJjaGlsZHJlbiI6W119XQ%3D%3D&&step=1',
|
|
13
|
-
{ waitUntil: 'networkidle', timeout: 10000 },
|
|
14
|
-
);
|
|
15
|
-
});
|
|
16
|
-
|
|
17
|
-
test('Search multiroom without extras', async ({ isMobile, page }) => {
|
|
18
|
-
await rates({ page });
|
|
19
|
-
await extras({ empty: true, page });
|
|
20
|
-
await multiroom({ isMobile, page, testId });
|
|
21
|
-
|
|
22
|
-
await expect(page).toHaveURL(/.*step2-checkout/, { timeout: 10000 });
|
|
23
|
-
});
|
|
24
|
-
|
|
25
|
-
test('Search multiroom with some extras', async ({ isMobile, page }) => {
|
|
26
|
-
await rates({ page });
|
|
27
|
-
await extras({ page });
|
|
28
|
-
await multiroom({ isMobile, page, testId });
|
|
29
|
-
|
|
30
|
-
await extrasExpect({ page, testId });
|
|
31
|
-
});
|
|
32
|
-
|
|
33
|
-
test('Search multiroom with one extras', async ({ isMobile, page }) => {
|
|
34
|
-
await rates({ page });
|
|
35
|
-
await extras({ onlyOne: true, page });
|
|
36
|
-
await multiroom({ isMobile, page, testId });
|
|
37
|
-
|
|
38
|
-
await extrasExpect({ page, testId });
|
|
39
|
-
});
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { test } from '@playwright/test';
|
|
2
|
-
|
|
3
|
-
import { bookings, forgotPassword, login, logout, profile } from './Session/workflows';
|
|
4
|
-
|
|
5
|
-
test.beforeEach(async ({ context, page }) => {
|
|
6
|
-
await context.addInitScript(() => (window.IS_PLAYWRIGHT = true));
|
|
7
|
-
|
|
8
|
-
await page.goto('http://local.mirai.com:8080', { waitUntil: 'networkidle', timeout: 10000 });
|
|
9
|
-
});
|
|
10
|
-
|
|
11
|
-
test('Login', async ({ isMobile, page }) => {
|
|
12
|
-
await login({ isMobile, page });
|
|
13
|
-
});
|
|
14
|
-
|
|
15
|
-
test('Edit profile', async ({ isMobile, page }) => {
|
|
16
|
-
await login({ isMobile, page });
|
|
17
|
-
await profile({ isMobile, page });
|
|
18
|
-
});
|
|
19
|
-
|
|
20
|
-
test('View bookings', async ({ isMobile, page }) => {
|
|
21
|
-
await login({ isMobile, page });
|
|
22
|
-
await bookings({ isMobile, page });
|
|
23
|
-
});
|
|
24
|
-
|
|
25
|
-
test('Logout', async ({ isMobile, page }) => {
|
|
26
|
-
await login({ isMobile, page });
|
|
27
|
-
await logout({ isMobile, page });
|
|
28
|
-
});
|
|
29
|
-
|
|
30
|
-
test('Forgot password', async ({ isMobile, page }) => {
|
|
31
|
-
await forgotPassword({ isMobile, page });
|
|
32
|
-
});
|
package/__tests__/signup.spec.js
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { test } from '@playwright/test';
|
|
2
|
-
|
|
3
|
-
import { signup, signupError } from './Signup/workflows';
|
|
4
|
-
|
|
5
|
-
test.beforeEach(async ({ context, page }) => {
|
|
6
|
-
await context.addInitScript(() => (window.IS_PLAYWRIGHT = true));
|
|
7
|
-
|
|
8
|
-
await page.goto('http://local.mirai.com:8080/signup', { waitUntil: 'networkidle', timeout: 10000 });
|
|
9
|
-
});
|
|
10
|
-
|
|
11
|
-
test('Signup', async ({ page }) => {
|
|
12
|
-
await signup({ page });
|
|
13
|
-
});
|
|
14
|
-
|
|
15
|
-
test('User already exists', async ({ page }) => {
|
|
16
|
-
await signupError({ page });
|
|
17
|
-
});
|