protected async Task PopulateBookingFlowRadioAsync(By by)
        {
            await _session.InvokeOnElementAsync(by, x => x.Click());

            await _session.WaitForElementToDisappearAsync(LoadingSpinner);

            await _session.WaitForInteractiveReadyStateAsync();
        }
        protected async Task PopulateDepartureAsync(DateTime outbound, DateTime @return)
        {
            await _session.WaitForElementToAppearAsync(DepartureTable, minCount : 1);

            if (!await _session.TryInvokeOnElementAsync(OutboundDepartureRadio(outbound), x => x.Click()))
            {
                throw new ApiException(ApiStatus.OutboundDepartureNotFound);
            }

            await _session.WaitForElementToDisappearAsync(LoadingSpinner);

            await _session.WaitForElementToAppearAsync(DepartureTable, minCount : 2);

            if (!await _session.TryInvokeOnElementAsync(ReturnDepartureRadio(@return), x => x.Click()))
            {
                throw new ApiException(ApiStatus.ReturnDepartureNotFound);
            }
        }