public void CreateCommandParameter_PropertyWithAlias_Set() { var factory = new CommandParameterMapper(CommandParameterMapper.DefaultConverter); var testParameter = factory.CreateCommandParameter <TestParameterWithAlias>(new CommandLine { { "bar", "abc" }, }); Assert.IsNotNull(testParameter); Assert.AreEqual("abc", testParameter.Foo); }
public void CreateCommandParameter_BasicTypes_AllSet() { var factory = new CommandParameterMapper(CommandParameterMapper.DefaultConverter); var testParameter = factory.CreateCommandParameter <TestParameter>(new CommandLine { { nameof(TestParameter.StringProperty), "abc" }, { nameof(TestParameter.Int32Property), "123" }, { nameof(TestParameter.BooleanPropertey), "true" }, { nameof(TestParameter.Int32ArrayProperty), "4" }, { nameof(TestParameter.Int32ArrayProperty), "5" }, { nameof(TestParameter.Int32ArrayProperty), "6" }, { nameof(TestParameter.DateTimeProperty), "2017/5/1" }, }); Assert.IsNotNull(testParameter); Assert.AreEqual("abc", testParameter.StringProperty); Assert.AreEqual(123, testParameter.Int32Property); Assert.AreEqual(true, testParameter.BooleanPropertey); CollectionAssert.AreEqual(new[] { 4, 5, 6 }, testParameter.Int32ArrayProperty); Assert.AreEqual(new DateTime(2017, 5, 1), testParameter.DateTimeProperty); }
public void CreateCommandParameter_DuplicateNames_Throws() { var factory = new CommandParameterMapper(CommandParameterMapper.DefaultConverter); var ex = Assert.That.ThrowsExceptionFiltered <DynamicException>(() => factory.CreateCommandParameter <TestParameterWithDuplicateNames>(new CommandLine())); }