Beispiel #1
0
        public UserAction clickOK([PexAssumeUnderTest] UserActionHandler target, int playerID)
        {
            UserAction result = target.clickOK(playerID);

            return(result);
            // TODO: add assertions to method UserActionHandlerTest.clickOK(UserActionHandler, Int32)
        }
 public void testClickButton(int abili, int userID, int cardID, Type expected)
 {
     try
     {
         UserActionHandler handler = new UserActionHandler(game);
         handler.ClickUser    = userID;
         handler.SelectCardId = cardID;
         handler.Ifabi        = abili;
         UserAction action = handler.clickOK(1);
         if (expected == null)
         {
             Assert.Fail("Should throw an exception");
         }
         Assert.AreEqual(expected, action.GetType());
     }
     catch (InvalidOperationException e) {
         if (expected != null)
         {
             Assert.Fail("Should not throw an exception");
         }
     }
 }
Beispiel #3
0
        protected override async void OnStartup(StartupEventArgs e)
        {
            base.OnStartup(e);

            InitializeDIContainer();

            // Init settings
            ApplicationSettings settings = null;
            ISettingsManager <ApplicationSettings> appSettingsManager = Container.Resolve <ISettingsManager <ApplicationSettings> >();

            try
            {
                var appSettingsDirectory = Path.GetDirectoryName(appSettingsManager.SettingsFilePath);
                if (!Directory.Exists(appSettingsDirectory))
                {
                    Directory.CreateDirectory(appSettingsDirectory);
                }

                settings = await appSettingsManager.LoadSettingsAsync().ConfigureAwait(true);

                // Init localization
                var culture = new CultureInfo(settings.SelectedUiLanguage);
                TranslationSource.Instance.CurrentCulture = culture;
                Thread.CurrentThread.CurrentCulture       = culture;
                Thread.CurrentThread.CurrentUICulture     = culture;
            }
            catch (Exception exp)
            {
                var sb = new StringBuilder();
                sb.AppendLine();
                sb.AppendLine("Unexpected Error 1 in App.Application_Startup()");
                sb.AppendLine($"   Message:{exp.Message}");
                sb.AppendLine($"StackTrace:{exp.StackTrace}");
                sb.AppendLine();
                _log.WriteLine(sb.ToString(), LogErrorSeverity.Error);
            }

            // Due to implementation constraints, taskbar icon must be instantiated as late as possible
            Container.RegisterInstance(FindResource("TaskbarIcon") as TaskbarIcon, new ContainerControlledLifetimeManager());
            Container.Resolve <ITaskbarIconManager>();
            _log.WriteLine("Resolve DI container");
            _startupHelper      = Container.Resolve <IStartupHelper>();
            _workstationManager = Container.Resolve <IWorkstationManager>();

            _metaMessenger = Container.Resolve <IMetaPubSub>();

            _metaMessenger.Subscribe <ConnectedToServerEvent>(OnConnectedToServer);

            _serviceWatchdog = Container.Resolve <IServiceWatchdog>();
            _serviceWatchdog.Start();
            _deviceManager         = Container.Resolve <IDeviceManager>();
            _userActionHandler     = Container.Resolve <UserActionHandler>();
            _hotkeyManager         = Container.Resolve <IHotkeyManager>();
            _hotkeyManager.Enabled = true;
            _buttonManager         = Container.Resolve <IButtonManager>();
            _buttonManager.Enabled = true;
            _messageWindow         = Container.Resolve <MessageWindow>();
            Container.Resolve <IProximityLockManager>();
            Container.Resolve <IVaultLowBatteryMonitor>();

            SystemEvents.SessionSwitch += SystemEvents_SessionSwitch;


            // This will create an instance of password manager view model and allow handling of "Add new account" user action
            // It is required for subscribtion of PasswordManagerViewModel to the "AddAccountForApp" message
            // Note: PasswordManagerViewModel is not required for simplified UI
            Container.Resolve <PasswordManagerViewModel>();

            // Public Suffix list loading and updating may take some time (more than 8000 entries)
            // Better to load it before its required (for main domain extraction)
            await Task.Run(URLHelper.PreloadPublicSuffixAsync);

            // Handle first launch
            if (settings.IsFirstLaunch)
            {
                OnFirstLaunch();

                settings.IsFirstLaunch = false;
                appSettingsManager.SaveSettings(settings);
            }

            _windowsManager = Container.Resolve <IWindowsManager>();
            await _windowsManager.InitializeMainWindowAsync();

            await _metaMessenger.TryConnectToServer("HideezServicePipe");
        }