public async Task ClickLoginOnLoginPage()
        {
            // legitimize action
            if (ModalState != ModalState.Login)
            {
                throw new Exception("Can't ClickLogin if not on Login page");
            }

            ModalState = ModalState.Empty;
            ModalCount--;
            switch (NavState)
            {
            case NavState.OnMainPage:
                await ExpectedMainPage.OnAppearingAsync();

                break;

            case NavState.OnUomsPage:
                await ExpectedUomsCollectionPage.OnReappearingAsync();

                break;

            case NavState.OnUomItemPage:
                await ExpectedUomItemPage.OnAppearingAsync();

                break;

            case NavState.Empty:
                break;

            default:
                break;
            }
        }
        public async Task ClickSaveOnUomItemPage()
        {
            // legitimize action
            if (NavState != NavState.OnUomItemPage)
            {
                throw new Exception("Can't ClickSaveOnUomItemPage() if not on Uom Item page");
            }

            await ExpectedUomItemPage.Save();

            NavState = NavState.OnUomsPage;
            NavCount--;
            if (!CheckForRelogin())
            {
                await ExpectedUomsCollectionPage.OnReappearingAsync();
            }
        }