public void ReturnsTrueWhenPropertyExists() { var props = new ConcreteDynmProp(); props.Properties.Key = "value"; props.ContainsProperty("Key").ShouldBeTrue(); }
public void ThrowsExceptionWhenKeyIsEmptyString() { var props = new ConcreteDynmProp(); Should.Throw <ArgumentException>(() => props.ContainsProperty(string.Empty)); Should.Throw <ArgumentException>(() => props.ContainsProperty("")); }
public void ThrowsExcecptionWhenCanNotConvert() { var props = new ConcreteDynmProp(); props.Properties.Key = "value"; Should.Throw <InvalidCastException>(() => props.GetPropertyValueAs <FakeType>("Key")); }
public void ThrowsExceptionWhenKeyIsNotFound() { var props = new ConcreteDynmProp(); props.Properties.Key = "value"; Should.Throw <DynamicValueNotFoundException>(() => props.GetPropertyValueAs <string>("AnotheKey")); }
public void ThrowsExceptionWhenKeyIsNull() { var props = new ConcreteDynmProp(); props.Properties.Key = "value"; Should.Throw <ArgumentNullException>(() => props.GetPropertyValueAs <string>(null)); }
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>("")); }
public void StoresAndReturnsValue() { var props = new ConcreteDynmProp(); props.Properties.Key = "value"; var val = props.Properties.Key; Assert.True(val.Equals("value")); }
public void DynamicPropertyNotInitializedUntilFirstAccess() { var props = new ConcreteDynmProp(); props.IsInitialized.ShouldBeFalse(); props.Properties.Key = "value"; props.IsInitialized.ShouldBeTrue(); }
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(); }
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)); }
public void ThrowsExceptionWhenIndexDoesNotExists() { var props = new ConcreteDynmProp(); Should.Throw <RuntimeBinderException>(() => props.Properties.Key); }
public void ReturnsFalseWhenPropertyDoesNotExist() { var props = new ConcreteDynmProp(); props.ContainsProperty("Key1").ShouldBeFalse(); }
public void ThrowsExceptionWhenKeyIsNull() { var props = new ConcreteDynmProp(); Should.Throw <ArgumentNullException>(() => props.ContainsProperty(null)); }