public void Type_WhenSetToVoid_ThrowsException()
        {
            // ReSharper disable once ObjectCreationAsStatement
            var sut = new ProxyToParameterAttribute(_name);

            Action action = () => sut.Type = typeof(void);

            action.Should().Throw <ArgumentException>().And.ParamName.Should().Be("value");
        }
        public void IsRequired_WhenSetToFalse_ReturnsFalse()
        {
            var sut = new ProxyToParameterAttribute(_name)
            {
                IsRequired = false
            };

            sut.IsRequired.Should().BeFalse();
        }
        public void Type_WhenSetToInt_ReturnsInt()
        {
            var type = typeof(int);
            var sut  = new ProxyToParameterAttribute(_name)
            {
                Type = type
            };

            sut.Type.Should().Be(type);
        }
        public void Description_WhenSet_ReturnsValue()
        {
            const string description = "A nice description.";

            var sut = new ProxyToParameterAttribute(_name)
            {
                Description = description
            };

            sut.Description.Should().Be(description);
        }
        public void Constructor_SetsTypeToString()
        {
            var sut = new ProxyToParameterAttribute(_name);

            sut.Type.Should().Be(typeof(string));
        }
        public void Constructor_SetsIsRequiredToTrue()
        {
            var sut = new ProxyToParameterAttribute(_name);

            sut.IsRequired.Should().BeTrue();
        }
        public void Constructor_SetsName()
        {
            var sut = new ProxyToParameterAttribute(_name);

            sut.Name.Should().Be(_name);
        }