Exemple #1
0
        private void OfflineActivationCommandExecute(object obj)
        {
            var interaction = new OfflineActivationInteraction(_lastActivationKey);

            _interactionInvoker.Invoke(interaction);

            if (interaction.Success)
            {
                _lastActivationKey = interaction.LicenseKey;
                Activation activation;

                try
                {
                    activation = _activationHelper.ActivateOfflineActivationStringFromLicenseServer(interaction.LicenseServerAnswer);
                }
                catch (FormatException)
                {
                    activation     = new Activation();
                    activation.Key = interaction.LicenseKey;
                }

                UpdateActivation(activation);
                IsCheckingLicense = false;
                LicenseCheckFinishedEvent.Set();
            }
        }
        public void OfflineActivationCommandExecute_LicenseCheckerThrowsFormatException_ActivationKeyIsInteractionKey()
        {
            _activationHelper.ActivateOfflineActivationStringFromLicenseServer(Arg.Any <string>()).Throws(new FormatException());
            const string interactionKey = "interactionKey";

            _interactionInvoker.When(x => x.Invoke(Arg.Any <OfflineActivationInteraction>())).Do(
                x =>
            {
                var offlineActivationInteraction        = x.Arg <OfflineActivationInteraction>();
                offlineActivationInteraction.Success    = true;
                offlineActivationInteraction.LicenseKey = interactionKey;
            });
            var viewModel = BuildViewModel();

            viewModel.OfflineActivationCommand.Execute(null);

            Assert.AreEqual(interactionKey, viewModel.Activation.Key);
        }