public void CapabilitiesShouldHaveHigherPriorityThanPortCapabilities()
        {
            var parentProcessIdCapabilities = new ParentProcessIdArgumentProcessorCapabilities();
            var portCapabilities            = new PortArgumentProcessorCapabilities();

            // Less the number, high the priority
            Assert.IsTrue(parentProcessIdCapabilities.Priority == portCapabilities.Priority, "ParentProcessId must have higher priority than Port.");
        }
        public void CapabilitiesShouldReturnAppropriateProperties()
        {
            var capabilities = new ParentProcessIdArgumentProcessorCapabilities();

            Assert.AreEqual("/ParentProcessId", capabilities.CommandName);
            Assert.AreEqual("--ParentProcessId|/ParentProcessId:<ParentProcessId>\n      Process Id of the Parent Process responsible for launching current process.", capabilities.HelpContentResourceName);

            Assert.AreEqual(HelpContentPriority.ParentProcessIdArgumentProcessorHelpPriority, capabilities.HelpPriority);
            Assert.AreEqual(false, capabilities.IsAction);
            Assert.AreEqual(ArgumentProcessorPriority.DesignMode, capabilities.Priority);

            Assert.AreEqual(false, capabilities.AllowMultiple);
            Assert.AreEqual(false, capabilities.AlwaysExecute);
            Assert.AreEqual(false, capabilities.IsSpecialCommand);
        }
        public void CapabilitiesShouldReturnAppropriateProperties()
        {
            var capabilities = new ParentProcessIdArgumentProcessorCapabilities();

            Assert.AreEqual("/ParentProcessId", capabilities.CommandName);
            var expected = "--ParentProcessId|/ParentProcessId:<ParentProcessId>\r\n      Process Id of the Parent Process responsible for launching current process.";

            Assert.AreEqual(expected.NormalizeLineEndings().ShowWhiteSpace(), capabilities.HelpContentResourceName.NormalizeLineEndings().ShowWhiteSpace());

            Assert.AreEqual(HelpContentPriority.ParentProcessIdArgumentProcessorHelpPriority, capabilities.HelpPriority);
            Assert.IsFalse(capabilities.IsAction);
            Assert.AreEqual(ArgumentProcessorPriority.DesignMode, capabilities.Priority);

            Assert.IsFalse(capabilities.AllowMultiple);
            Assert.IsFalse(capabilities.AlwaysExecute);
            Assert.IsFalse(capabilities.IsSpecialCommand);
        }