import { LoginPage } from '@admin-lib/index';
import { User_Type } from '@support-onboard/index';
import { HomePage } from '@rebranded_home_page-lib/home-page';
import { PersonalHomeScreen } from '../../lib/personal_homescreen';
import { Promotion } from '../../lib/promotions';
import { HotelInterceptApis } from '@hotel-lib/api-intercept';
import { FlightInterceptApis } from '@flight-lib/api-intercept';

describe('Personal Travel: Personal Travel Homescreen', () => {
  beforeEach(() => {
    LoginPage.createNewCompanyAndLoginWithUserByType({
      users: [User_Type.ADMIN],
      companySuffix: 'holidaypromo'
    });
    HotelInterceptApis.interceptHotelApis();
    FlightInterceptApis.interceptFlightsApis();
    HomePage.verifyMinimizedSearch();
  });

  it(
    'C10517676: Verify user is able to claim rewards promotion and book personal hotel',
    { tags: ['@tier2'] },
    () => {
      PersonalHomeScreen.switchToPersonalTravel();
      Promotion.viewAndClosePromotionModal();
      Promotion.claimRewardsPromotion();
      Promotion.bookHotelCta();
      PersonalHomeScreen.bookPersonalHotel();
    }
  );

  it(
    'C10517677: Verify user is able to claim flight promotion and book personal flight',
    { tags: ['@tier2'] },
    () => {
      PersonalHomeScreen.switchToPersonalTravel();
      Promotion.claimFlightPromotion();
      Promotion.bookFlightCta();
      PersonalHomeScreen.bookPersonalFlight();
    }
  );
});
