示例#1
0
        public void Execute_UserCancelsInteraction_NoProfileGetsAdded()
        {
            _interactionRequest.RegisterInteractionHandler <InputInteraction>(i => i.Success = false);

            _profileAddCommand.Execute(null);

            Assert.AreEqual(1, _settings.ConversionProfiles.Count);
        }
        public void Execute_UserCancelsInteraction_ProfileGetsNotRemoved()
        {
            _interactionRequest.RegisterInteractionHandler <MessageInteraction>(i => i.Response = MessageResponse.Cancel);

            _profileRemoveCommand.Execute(null);

            Assert.AreEqual(2, _currentSettingsProvider.Profiles.Count);
            Assert.Contains(_currentProfile, _currentSettingsProvider.Profiles);
        }
        public void AddAccount_UserCancelsInteraction_NoAccountGetsAdded()
        {
            _interactionRequest.RegisterInteractionHandler <SmtpAccountInteraction>(i =>
            {
                i.Success = false; // User cancels
            });

            _smtpAccountAddCommand.Execute(null);

            Assert.IsEmpty(_smtpAccounts);
        }
        public void Execute_UserCancelsDeletion_IsDoneIsCalledWithCancel()
        {
            _unitTestInteractionRequest.RegisterInteractionHandler <MessageInteraction>(i => i.Response = MessageResponse.Cancel);

            MacroCommandIsDoneEventArgs calledArgs = null;

            _deleteHistoricFilesCommand.IsDone += (sender, args) => calledArgs = args;

            _deleteHistoricFilesCommand.Execute(_historicFiles);

            Assert.AreEqual(ResponseStatus.Cancel, calledArgs.ResponseStatus);
        }
示例#5
0
        public void Execute_UserCancelsInteraction_CurrentNameRemains()
        {
            _interactionRequest.RegisterInteractionHandler <InputInteraction>(i =>
            {
                i.Success   = false; //User cancels
                i.InputText = "Unwanted new name";
            });

            _profileRenameCommand.Execute(null);

            Assert.AreEqual(_currentName, _currentSettingsProvider.SelectedProfile.Name);
        }
示例#6
0
        public void Execute_VerifyUserResponse_Yes_CallsIsDoneWithSuccess()
        {
            _tabSwitchSettingsCheck.CheckAffectedSettings().Returns(_resultWithChangesWithErrors);
            _interactionRequest.RegisterInteractionHandler <MessageInteraction>(i =>
            {
                i.Response = MessageResponse.Yes;
            });

            _evaluateSavingCommand.Execute(null);

            Assert.IsTrue(_commandTester.IsDoneWasRaised);
            Assert.AreEqual(ResponseStatus.Success, _commandTester.LastResponseStatus);
        }
        public void Execute_VerifyUserResponse_Yes_CallsIsDoneWithSuccess_CurrentSettingsDoesNotCallReset()
        {
            _tabSwitchSettingsCheck.CheckAffectedSettings().Returns(_resultWithChangesWithErrors);
            _interactionRequest.RegisterInteractionHandler <MessageInteraction>(i =>
            {
                i.Response = MessageResponse.Yes;
            });

            _beforeEvaluateTabSwitchCommand.Execute(null);

            Assert.IsTrue(_commandTester.IsDoneWasRaised);
            Assert.AreEqual(ResponseStatus.Success, _commandTester.LastResponseStatus);
            _currentSettingsProvider.DidNotReceive().Reset();
        }
        public void EditAccount_UserApplies_IsDoneCalledWithSuccess()
        {
            var wasCalled = false;

            _ftpAccountEditCommand.IsDone += (sender, args) => wasCalled = args.ResponseStatus == ResponseStatus.Success;
            _interactionRequest.RegisterInteractionHandler <FtpAccountInteraction>(i =>
            {
                i.Success = true; //User applies
            });

            _ftpAccountEditCommand.Execute(_currentFtpAccount);

            Assert.IsTrue(wasCalled);
        }
示例#9
0
        public void EditAccount_UserCancelsInteraction_CurrentAccountRemainsUnchanged()
        {
            var currentAccountCopy = _currentSmtpAccount.Copy();

            _interactionRequest.RegisterInteractionHandler <SmtpAccountInteraction>(i =>
            {
                i.SmtpAccount.UserName = "******"; // User makes changes
                i.Success = false;                           // User cancels
            });

            _smtpAccountEditCommand.Execute(_currentSmtpAccount);

            Assert.AreEqual(_currentSmtpAccount, currentAccountCopy);
        }
 private void CreateLicenseKeyEnteredInteraction(string licenseKey)
 {
     _interactionRequest.RegisterInteractionHandler <InputInteraction>(inputInteraction =>
     {
         inputInteraction.Success   = true;
         inputInteraction.InputText = licenseKey;
     });
 }
        public void Execute_WithErrors_UserChoosesToSave_CallsIsDoneWithSuccess()
        {
            var command       = BuildCommand();
            var commandTester = new WaitableCommandTester <CheckProfileCommand>(command);
            var actionResult  = new ActionResultDict();

            actionResult.Add("a", new ActionResult(ErrorCode.Processing_GenericError));
            _profileChecker.ProfileCheckDict(null, null).ReturnsForAnyArgs(actionResult);
            _interactionRequest.RegisterInteractionHandler <ProfileProblemsInteraction>(i => i.IgnoreProblems = true);

            command.Execute(null);

            Assert.IsTrue(commandTester.IsDoneWasRaised);
            Assert.AreEqual(ResponseStatus.Success, commandTester.LastResponseStatus);
        }
        public void Execute_RunSuccessfulInteractionWithTitleReplacement()
        {
            _interactionRequest.RegisterInteractionHandler <TitleReplacementEditInteraction>(i =>
            {
                i.Success = true; //User cancels
            });

            _command.Execute(null);

            var titleReplacementEditInteraction = _interactionRequest.AssertWasRaised <TitleReplacementEditInteraction>();

            Assert.IsTrue(string.IsNullOrEmpty(titleReplacementEditInteraction.Replacement.Search));
            Assert.IsTrue(string.IsNullOrEmpty(titleReplacementEditInteraction.Replacement.Replace));
            Assert.AreEqual(ReplacementType.Replace, titleReplacementEditInteraction.Replacement.ReplacementType);
            Assert.Greater(_settingsProvider.Settings.ApplicationSettings.TitleReplacement.Count, 0);
        }
        public void Setup()
        {
            _smtpTestAccount           = new SmtpAccount();
            _smtpTestAccount.AccountId = "SmtpTestAccountId";

            _profile = new ConversionProfile();
            //Attention
            _profile.EmailSmtpSettings.AccountId = _smtpTestAccount.AccountId;
            //The AccountAssosiation is mocked below. The _smtpTestAccount is always used.

            _accounts = new Accounts();
            _accounts.SmtpAccounts.Add(_smtpTestAccount);

            _interactionRequest = new UnitTestInteractionRequest();
            _interactionInvoker = Substitute.For <IInteractionInvoker>();
            _interactionInvoker.Invoke(Arg.Do <PasswordOverlayInteraction>(i => i.Result = PasswordResult.StorePassword));

            _interactionRequest.RegisterInteractionHandler <PasswordOverlayInteraction>(interaction => interaction.Result = PasswordResult.StorePassword);

            _file       = Substitute.For <IFile>();
            _path       = Substitute.For <IPath>();
            _smtpAction = Substitute.For <ISmtpMailAction>();
            _smtpAction.Check(Arg.Any <ConversionProfile>(), _accounts, Arg.Any <CheckLevel>()).Returns(x => new ActionResult());
            _smtpAction.ProcessJob(Arg.Any <Job>()).Returns(x => new ActionResult());
            //_smtpAction.GetSmtpAccount(_profile, _accounts).Returns(_smtpTestAccount);

            _mailSignatureHelper = Substitute.For <IMailSignatureHelper>();
            _mailSignatureHelper.ComposeMailSignature().Returns(_mailSignature);

            _tokenReplacer        = new TokenReplacer();
            _tokenReplacerFactory = Substitute.For <ITokenReplacerFactory>();
            _tokenReplacerFactory.BuildTokenReplacerWithOutputfiles(Arg.Any <Job>()).Returns(_tokenReplacer);

            _translation = new SmtpTranslation();
        }
        public void Execute_WithUnusedDropboxAccount_UserCancelsInteraction_AccountRemainsInAccountsList()
        {
            _interactionRequest.RegisterInteractionHandler <MessageInteraction>(i => i.Response = MessageResponse.Cancel);

            _dropboxAccountRemoveCommand.Execute(_unusedAccount);

            Assert.AreEqual(2, _dropboxAccounts.Count);
            Assert.Contains(_unusedAccount, _dropboxAccounts);
        }
        public void AddAccount_UserCancelsInteraction_NoAccountGetsAdded_IsDoneCalledWithCancel()
        {
            var wasCalled = false;

            _ftpAccountAddCommand.IsDone += (sender, args) => wasCalled = args.ResponseStatus == ResponseStatus.Cancel;

            _interactionRequest.RegisterInteractionHandler <FtpAccountInteraction>(i =>
            {
                i.Success = false; //User cancels
            });

            _ftpAccountAddCommand.Execute(null);

            Assert.IsEmpty(_ftpAccounts);

            Assert.IsTrue(wasCalled, "ResponseStatus not Cancel");
        }
        public void VerifyUserResponse_Yes__CallsIsDoneWithSuccess()
        {
            //force user interaction
            SetCurrentRegion(MainRegionViewNames.ProfilesView);
            SetErrorsInProfiles();
            //

            _interactionRequest.RegisterInteractionHandler <MessageInteraction>(i =>
            {
                i.Response = MessageResponse.Yes;
            });

            _command.Execute(null);

            _currentSettingsProvider.DidNotReceive().Reset();
            Assert.AreEqual(ResponseStatus.Success, _commandTester.LastResponseStatus);
        }
        public void Execute_RunSuccessfulInteractionWithTitleReplacement()
        {
            _interactionRequest.RegisterInteractionHandler <TitleReplacementEditInteraction>(i =>
            {
                i.Success = true; //User cancels
            });

            var titleReplacement       = new TitleReplacement();
            var titleReplacementSearch = "searchText";

            titleReplacement.Search = titleReplacementSearch;
            var titleReplacementReplace = "replaceText";

            titleReplacement.Replace         = titleReplacementReplace;
            titleReplacement.ReplacementType = ReplacementType.RegEx;
            _command.Execute(titleReplacement);

            var titleReplacementEditInteraction = _interactionRequest.AssertWasRaised <TitleReplacementEditInteraction>();

            Assert.AreEqual(titleReplacementSearch, titleReplacementEditInteraction.Replacement.Search);
            Assert.AreEqual(titleReplacementReplace, titleReplacementEditInteraction.Replacement.Replace);
            Assert.AreEqual(ReplacementType.RegEx, titleReplacementEditInteraction.Replacement.ReplacementType);
        }
        public void Execute_WithUnusedTimeServerAccount_UserCancelsInteraction_AccountRemainsInAccounts()
        {
            _interactionRequest.RegisterInteractionHandler <MessageInteraction>(i =>
            {
                i.Response = MessageResponse.Cancel;
            });

            _timeServerAccountRemoveCommand.Execute(_unusedAccount);

            Assert.AreEqual(2, _timeServerAccounts.Count);
            Assert.Contains(_unusedAccount, _timeServerAccounts);
        }