Пример #1
0
                public void ReturnsTrueWhenPropertyExists()
                {
                    var props = new ConcreteDynmProp();

                    props.Properties.Key = "value";
                    props.ContainsProperty("Key").ShouldBeTrue();
                }
Пример #2
0
                public void ThrowsExceptionWhenKeyIsEmptyString()
                {
                    var props = new ConcreteDynmProp();

                    Should.Throw <ArgumentException>(() => props.ContainsProperty(string.Empty));
                    Should.Throw <ArgumentException>(() => props.ContainsProperty(""));
                }
Пример #3
0
                public void ThrowsExcecptionWhenCanNotConvert()
                {
                    var props = new ConcreteDynmProp();

                    props.Properties.Key = "value";
                    Should.Throw <InvalidCastException>(() => props.GetPropertyValueAs <FakeType>("Key"));
                }
Пример #4
0
                public void ThrowsExceptionWhenKeyIsNotFound()
                {
                    var props = new ConcreteDynmProp();

                    props.Properties.Key = "value";

                    Should.Throw <DynamicValueNotFoundException>(() => props.GetPropertyValueAs <string>("AnotheKey"));
                }
Пример #5
0
                public void ThrowsExceptionWhenKeyIsNull()
                {
                    var props = new ConcreteDynmProp();

                    props.Properties.Key = "value";

                    Should.Throw <ArgumentNullException>(() => props.GetPropertyValueAs <string>(null));
                }
Пример #6
0
                public void ThrowsExceptionWhenKeyIsEmptyString()
                {
                    var props = new ConcreteDynmProp();

                    props.Properties.Key = "value";

                    Should.Throw <ArgumentException>(() => props.GetPropertyValueAs <string>(string.Empty));
                    Should.Throw <ArgumentException>(() => props.GetPropertyValueAs <string>(""));
                }
Пример #7
0
            public void StoresAndReturnsValue()
            {
                var props = new ConcreteDynmProp();

                props.Properties.Key = "value";
                var val = props.Properties.Key;

                Assert.True(val.Equals("value"));
            }
Пример #8
0
            public void DynamicPropertyNotInitializedUntilFirstAccess()
            {
                var props = new ConcreteDynmProp();

                props.IsInitialized.ShouldBeFalse();

                props.Properties.Key = "value";

                props.IsInitialized.ShouldBeTrue();
            }
Пример #9
0
                public void CovertsBetweenTypes()
                {
                    var props = new ConcreteDynmProp();

                    props.Properties.MyNumber = 50;

                    var val = props.GetPropertyValueAs <string>("MyNumber");

                    val.GetType().ShouldBe(typeof(string));
                    val.Equals("50").ShouldBeTrue();
                }
Пример #10
0
                public void ReturnsValueAsSpecifiedType()
                {
                    var props = new ConcreteDynmProp();

                    props.Properties.Key = "value";

                    var val = props.GetPropertyValueAs <string>("Key");

                    val.Equals("value").ShouldBeTrue();
                    val.GetType().ShouldBe(typeof(string));
                }
Пример #11
0
            public void ThrowsExceptionWhenIndexDoesNotExists()
            {
                var props = new ConcreteDynmProp();

                Should.Throw <RuntimeBinderException>(() => props.Properties.Key);
            }
Пример #12
0
                public void ReturnsFalseWhenPropertyDoesNotExist()
                {
                    var props = new ConcreteDynmProp();

                    props.ContainsProperty("Key1").ShouldBeFalse();
                }
Пример #13
0
                public void ThrowsExceptionWhenKeyIsNull()
                {
                    var props = new ConcreteDynmProp();

                    Should.Throw <ArgumentNullException>(() => props.ContainsProperty(null));
                }