Beispiel #1
0
        /// <summary>
        /// Prints the order details.
        /// </summary>
        public virtual void Print()
        {
            var tabHelper   = WrappedDriver.TabHelper();
            var initialTabs = tabHelper.GetTabHandles().ToList();
            var initialTab  = WrappedDriver.CurrentWindowHandle;

            WrappedDriver
            .Wait(TimeSpan.FromSeconds(30))
            .Until(
                d => tabHelper.GetTabHandles().Count() > initialTabs.Count);

            WrappedDriver
            .SwitchTo()
            .Window(tabHelper
                    .GetTabHandles()
                    .Except(initialTabs)
                    .First());

            var printWindowHandle = WrappedDriver.CurrentWindowHandle;

            WrappedDriver.WaitForUserSignal(TimeSpan.FromMinutes(5));

            // Close the tab if it's still open.
            if (WrappedDriver.CurrentWindowHandle == printWindowHandle)
            {
                WrappedDriver.Close();
            }

            // Switch back to the initial window handle.
            WrappedDriver.SwitchTo().Window(initialTab);
        }