public void CreateDocumentContainingWorkItemsForExistingDocument_OverwriteSwitchedOn_ContentOfDocumentShouldBeReplaced()
        {
            var filename   = GetTempDocumentNameAndCreateTempFolder();
            var newWordApp = new Application();

            //Create a document, save it and close it
            newWordApp.Documents.Add();
            var currentDocument = newWordApp.ActiveDocument;

            currentDocument.SaveAs(filename);
            currentDocument.Close();
            newWordApp.Quit();

            Assert.IsTrue(File.Exists(filename));

            var documentConfiguration = new DocumentConfiguration(Server, Project, filename, TemplateName, true, CloseOnFinish, null, false, null, TraceLevel.Verbose);
            var crm = new ConsoleExtensionHelper(new TestReportingProgressCancellationService(false));

            crm.CreateWorkItemDocument(documentConfiguration, WorkItemToImport, "ByID");

            //Wait for the Importing to finish
            while (crm.IsImporting)
            {
                Thread.CurrentThread.Join(50);
            }

            Assert.IsTrue(SearchActiveWordDocumentForString(WorkItemToImport));

            //The id should also be in the saved file
            Assert.IsTrue(SearchSpecificWordDocumentForString(WorkItemToImport, filename));
            //File should exist anyway
            Assert.IsTrue(File.Exists(filename));
        }
        public void CreateBasicDocumentByQuerydWithStandardOptionsAndWrongQueryName_ShouldFail()
        {
            var fileName = GetTempDocumentNameAndCreateTempFolder();
            //Create Doc conf
            var documentConfiguration = new DocumentConfiguration(Server, Project, fileName, TemplateName, Overwrite, CloseOnFinish, null, false, null, TraceLevel.Verbose);
            var crm = new ConsoleExtensionHelper(new TestReportingProgressCancellationService(false));

            crm.CreateWorkItemDocument(documentConfiguration, WrongWorkItemQuery, "ByQuery");
            Assert.IsFalse(File.Exists(fileName));
        }
Esempio n. 3
0
        /// <summary>
        /// Execution of the console parameter
        /// </summary>
        /// <param name="remainingArguments"></param>
        /// <returns></returns>
        public override int Run(string[] remainingArguments)
        {
            try
            {
                var conf = CreateDocumentConfig();

                if (conf == null || conf.TestSpecSettings == null)
                {
                    throw new ArgumentException(string.Format(Resources.ConfigurationFileMisconfigured, "TestSpecificationConfiguration"));
                }

                // One of the two options has to be chosen
                if (_workitems == null && _query == null)
                {
                    ConsoleExtensionLogging.LogMessage(Resources.OptionsNullError, ConsoleExtensionLogging.LogLevel.Both);
                    ConsoleExtensionLogging.LogMessage(Resources.OptionsNullErrorInstruction, ConsoleExtensionLogging.LogLevel.Console);
                    SyncServiceTrace.D(Resources.OptionsNullError);
                    return(CommandReturnCodeFail);
                }

                // It isn't allowed to choose both options simultaneously
                if (_workitems != null && _query != null)
                {
                    ConsoleExtensionLogging.LogMessage(Resources.OptionsOverloadedError, ConsoleExtensionLogging.LogLevel.Both);
                    SyncServiceTrace.D(Resources.OptionsOverloadedError);
                    return(CommandReturnCodeFail);
                }

                if (_workitems != null)
                {
                    var crm = new ConsoleExtensionHelper(new TestReportingProgressCancellationService(false));
                    crm.CreateTestSpecDocumentByQuery(conf, _workitems, "ByID");
                }
                // Get work items by query
                else
                {
                    var crm = new ConsoleExtensionHelper(new TestReportingProgressCancellationService(false));
                    crm.CreateTestSpecDocumentByQuery(conf, _query, "ByQuery");
                }
            }
            catch (Exception e)
            {
                ConsoleExtensionLogging.LogMessage(e.Message, ConsoleExtensionLogging.LogLevel.Both);
                SyncServiceTrace.D(e.Message);
                return(CommandReturnCodeFail);
            }

            return(CommandReturnCodeSuccess);
        }
        public void CreateBasicDocumentByIdWithValidSettingsAndMissingTemplate_ShouldNotCreateDocumentAndShoudlRaiseException()
        {
            Assert.IsTrue(File.Exists("Configuration\\WordTemplate.dotx"));
            Assert.IsTrue(File.Exists("Configuration\\ConfigurationNew1.xml"));
            var fileName = GetTempDocumentNameAndCreateTempFolder();

            //Create Doc conf with wrong reference
            var documentConfiguration = new DocumentConfiguration(Server, Project, fileName, TemplateName, true, CloseOnFinish, null, false, "Configuration/NONExistingWordTemplate.dotx", TraceLevel.Verbose);

            documentConfiguration.Settings.Filename = fileName;
            var crm = new ConsoleExtensionHelper(new TestReportingProgressCancellationService(false));

            crm.CreateWorkItemDocument(documentConfiguration, WorkItemToImport, "ByID");

            Assert.IsFalse(File.Exists(fileName));
        }
        public void CreateBasicDocumentByIdWithStandardOptions_ShouldCreateDocument()
        {
            var fileName = GetTempDocumentNameAndCreateTempFolder();
            //Create Doc conf
            var documentConfiguration = new DocumentConfiguration(Server, Project, fileName, TemplateName, Overwrite, CloseOnFinish, null, false, null, TraceLevel.Verbose);
            var crm = new ConsoleExtensionHelper(new TestReportingProgressCancellationService(false));

            crm.CreateWorkItemDocument(documentConfiguration, WorkItemToImport, "ByID");

            //Wait for the import to finish
            while (crm.IsImporting)
            {
                Thread.CurrentThread.Join(50);
            }

            Assert.IsTrue(File.Exists(fileName));
            Assert.IsTrue(SearchActiveWordDocumentForString(WorkItemToImport));
        }
        public void CreateBasicDocumentByIdWithValidConfigFile_EnsureThatConnectionInformationisSavedInDocumentMode_ShouldCreateDocumentWithValidConnectionInfo()
        {
            Assert.IsTrue(File.Exists("Config\\ConfigurationNew1.xml"));
            CommonConfiguration.ReplaceConfigFileTokens(_testContext);
            var fileName = GetTempDocumentNameAndCreateTempFolder();

            //Create Doc conf
            var documentConfiguration = new DocumentConfiguration(null, null, null, null, false, false, "Config\\ConfigurationNew1.xml", false, null, TraceLevel.Verbose);

            documentConfiguration.Settings.Filename = fileName;

            var crm = new ConsoleExtensionHelper(new TestReportingProgressCancellationService(false));

            crm.CreateWorkItemDocument(documentConfiguration, WorkItemToImport, "ByID");

            //Wait for the import to finish
            Assert.IsTrue(File.Exists(fileName));
        }
Esempio n. 7
0
        /// <summary>
        /// Execution of the console parameter
        /// </summary>
        /// <param name="remainingArguments"></param>
        /// <returns></returns>
        public override int Run(string[] remainingArguments)
        {
            try
            {
                var conf = CreateDocumentConfig();
                // One of the two options has to be chosen
                if (_workitems == null && _query == null)
                {
                    ConsoleExtensionLogging.LogMessage(Resources.OptionsNullError, ConsoleExtensionLogging.LogLevel.Both);
                    ConsoleExtensionLogging.LogMessage(Resources.OptionsNullErrorInstruction, ConsoleExtensionLogging.LogLevel.Console);
                    SyncServiceTrace.D(Resources.OptionsNullError);
                    return(CommandReturnCodeFail);
                }
                // It isn't allowed to choose both options simultaneously
                if (_workitems != null && _query != null)
                {
                    ConsoleExtensionLogging.LogMessage(Resources.OptionsOverloadedError, ConsoleExtensionLogging.LogLevel.Both);
                    SyncServiceTrace.D(Resources.OptionsOverloadedError);
                    return(CommandReturnCodeFail);
                }

                var createDocumentModel = new ConsoleExtensionHelper(new TestReportingProgressCancellationService(false));
                if (_workitems != null)
                {
                    createDocumentModel.CreateWorkItemDocument(conf, _workitems, "ByID");
                }
                else
                {
                    createDocumentModel.CreateWorkItemDocument(conf, _query, "ByQuery");
                }
            }
            catch (Exception e)
            {
                ConsoleExtensionLogging.LogMessage(e.Message, ConsoleExtensionLogging.LogLevel.Both);
                SyncServiceTrace.D(e.Message);
                return(CommandReturnCodeFail);
            }

            return(CommandReturnCodeSuccess);
        }
        public void CreateBasicDocumentByIdWithValidConfigFileWithoutTestConfiguratioNsettings_ShouldCreateDocument()
        {
            Assert.IsTrue(File.Exists("Config/ConfigurationWithoutTestConfiguration.xml"));
            CommonConfiguration.ReplaceConfigFileTokens(_testContext);
            var fileName = GetTempDocumentNameAndCreateTempFolder();

            //Create Doc conf
            var documentConfiguration = new DocumentConfiguration(null, null, null, null, false, false, "Config/ConfigurationWithoutTestConfiguration.xml", false, null, TraceLevel.Verbose);

            documentConfiguration.Settings.Filename = fileName;

            var crm = new ConsoleExtensionHelper(new TestReportingProgressCancellationService(false));

            crm.CreateWorkItemDocument(documentConfiguration, WorkItemToImport, "ByID");

            //Wait for the import to finish
            while (crm.IsImporting)
            {
                Thread.CurrentThread.Join(50);
            }
            Assert.IsTrue(File.Exists(fileName));
        }
        public void CreateBasicDocumentByIdWithValidSettingsAndTemplate_ShouldCreateDocumentThatContainsWorkItemAndTextFromWordTempalte()
        {
            Assert.IsTrue(File.Exists("Configuration/WordTemplate.dotx"));
            Assert.IsTrue(File.Exists("Configuration/ConfigurationNew1.xml"));
            var fileName = GetTempDocumentNameAndCreateTempFolder();
            //Create Doc conf
            var documentConfiguration = new DocumentConfiguration(Server, Project, fileName, TemplateName, true, CloseOnFinish, null, false, "Configuration/WordTemplate.dotx", TraceLevel.Verbose);

            documentConfiguration.Settings.Filename = fileName;
            var crm = new ConsoleExtensionHelper(new TestReportingProgressCancellationService(false));

            crm.CreateWorkItemDocument(documentConfiguration, WorkItemToImport, "ByID");

            //Wait for the Importing to finish
            while (crm.IsImporting)
            {
                Thread.CurrentThread.Join(50);
            }

            Assert.IsTrue(File.Exists(fileName));
            Assert.IsTrue(SearchSpecificWordDocumentForString(WorkItemToImport, fileName));
            Assert.IsTrue(SearchSpecificWordDocumentForString("This is a word template file.", fileName));
        }
Esempio n. 10
0
        /// <summary>
        /// Execution of the console parameter
        /// </summary>
        /// <param name="remainingArguments"></param>
        /// <returns></returns>
        public override int Run(string[] remainingArguments)
        {
            try
            {
                var conf = CreateDocumentConfig();
                // Check if all required test specification settings are given and valid

                if (conf == null || conf.TestResultSettings == null)
                {
                    throw new ArgumentException(string.Format(Resources.ConfigurationFileMisconfigured, "TestResultConfiguration"));
                }

                var testResultSettings = conf.TestResultSettings;
                if (testResultSettings.TestPlan == null)
                {
                    ConsoleExtensionLogging.LogMessage(Resources.TestSettingsTestPlanError, ConsoleExtensionLogging.LogLevel.Both);
                    ConsoleExtensionLogging.LogMessage(Resources.TestSettingsErrorInstruction, ConsoleExtensionLogging.LogLevel.Console);
                    SyncServiceTrace.D(Resources.TestSettingsTestPlanError);
                    return(CommandReturnCodeFail);
                }

                if (testResultSettings.CreateDocumentStructure && testResultSettings.DocumentStructure == null)
                {
                    ConsoleExtensionLogging.LogMessage(Resources.TestSettingsDocumentStructureError, ConsoleExtensionLogging.LogLevel.Both);
                    SyncServiceTrace.D(Resources.TestSettingsDocumentStructureError);
                    return(CommandReturnCodeFail);
                }

                DocumentStructureType structure;
                if (testResultSettings.CreateDocumentStructure && !Enum.TryParse(testResultSettings.DocumentStructure, out structure))
                {
                    ConsoleExtensionLogging.LogMessage(Resources.TestSettingsInvalidDocumentStructureError, ConsoleExtensionLogging.LogLevel.Both);
                    SyncServiceTrace.D(Resources.TestSettingsInvalidDocumentStructureError);
                    return(CommandReturnCodeFail);
                }

                if (testResultSettings.IncludeTestConfigurations && testResultSettings.TestConfigurationsPosition == null)
                {
                    ConsoleExtensionLogging.LogMessage(Resources.TestSettingsConfigurationPositionError, ConsoleExtensionLogging.LogLevel.Both);
                    SyncServiceTrace.D(Resources.TestSettingsConfigurationPositionError);
                    return(CommandReturnCodeFail);
                }

                TestConfigurationPosition position;
                if (testResultSettings.IncludeTestConfigurations && !Enum.TryParse(testResultSettings.TestConfigurationsPosition, out position))
                {
                    ConsoleExtensionLogging.LogMessage(Resources.TestSettingsInvalidConfigurationPositionError, ConsoleExtensionLogging.LogLevel.Both);
                    SyncServiceTrace.D(Resources.TestSettingsConfigurationPositionError);
                    return(CommandReturnCodeFail);
                }

                if (testResultSettings.SortTestCasesBy == null)
                {
                    ConsoleExtensionLogging.LogMessage(Resources.TestSettingsTestCasesSortError, ConsoleExtensionLogging.LogLevel.Both);
                    SyncServiceTrace.D(Resources.TestSettingsConfigurationPositionError);
                    return(CommandReturnCodeFail);
                }

                TestCaseSortType sort;
                if (testResultSettings.SortTestCasesBy == null && Enum.TryParse(testResultSettings.SortTestCasesBy, out sort))
                {
                    ConsoleExtensionLogging.LogMessage(Resources.TestSettingsInvalidTestCasesSortError, ConsoleExtensionLogging.LogLevel.Both);
                    SyncServiceTrace.D(Resources.TestSettingsConfigurationPositionError);
                    return(CommandReturnCodeFail);
                }

                var crm = new ConsoleExtensionHelper(new TestReportingProgressCancellationService(false));
                crm.CreateTestResultDocument(conf);
            }
            catch (Exception e)
            {
                ConsoleExtensionLogging.LogMessage(e.Message, ConsoleExtensionLogging.LogLevel.Both);
                SyncServiceTrace.D(e.Message);
                return(CommandReturnCodeFail);
            }

            return(0);
        }