public void GetUsage_LongDescription()
        {
            var sut      = new StringArgument(NAME, LONG_DESCRIPTION);
            var usage    = sut.GetUsage();
            var expected = "  /name      Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam\n             nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam\n             erat, sed diam voluptua.";

            Assert.AreEqual(expected, sut.GetUsage());
        }
        public void Constructor_RequiredTrue()
        {
            var sut = new StringArgument(NAME, DESCRIPTION, true);

            Assert.AreEqual(NAME, sut.Name);
            Assert.AreEqual(DESCRIPTION, sut.Description);
            Assert.IsTrue(sut.IsRequired);
            Assert.IsNull(sut.DefaultValue);
            Assert.AreEqual("/name <String>", sut.Syntax);
            Assert.AreEqual("  /name      description", sut.GetUsage());
        }
        public void Constructor_WithDefault()
        {
            var sut = new StringArgument(NAME, DESCRIPTION, true, DEFAULT_VALUE);

            Assert.AreEqual(NAME, sut.Name);
            Assert.AreEqual(DESCRIPTION, sut.Description);
            Assert.IsFalse(sut.IsRequired);
            Assert.AreEqual(DEFAULT_VALUE, sut.DefaultValue);
            Assert.AreEqual("[/name <String>]", sut.Syntax);
            Assert.AreEqual("  /name      description (default: default_value)", sut.GetUsage());
            Assert.AreEqual(DEFAULT_VALUE, sut.Value);
        }