public void ShouldSetAndGetSpecialProperty(Type type)
		{
			var descriptor = new ParticularyNamedPropertyOrPubilcFieldSpecialMember(type, "Name");
			var instance = Activator.CreateInstance(type);
			descriptor.SetValue(instance, "John");
			Assert.Equal("John", descriptor.GetValue(instance));
		}
		public void ShouldIgnorePropertiesWithoutGetter()
		{
			var descriptor = new ParticularyNamedPropertyOrPubilcFieldSpecialMember(typeof(PropertyWithoutGetterEntity), "Name");
			Assert.False(descriptor.IsDefined);
		}
		public void ShouldIgnoreNonePropertiesOrFields()
		{
			var descriptor = new ParticularyNamedPropertyOrPubilcFieldSpecialMember(typeof(MethodEntity), "Name");
			Assert.False(descriptor.IsDefined);
		}
		public void ShouldReturnNullIfNotDetected(Type type)
		{
			var descriptor = new ParticularyNamedPropertyOrPubilcFieldSpecialMember(type, "Name");
			Assert.Null(descriptor.RawMemberInfo);
		}
		public void ShouldDetectIfMemberPresent(Type type)
		{
			var descriptor = new ParticularyNamedPropertyOrPubilcFieldSpecialMember(type, "Name");
			Assert.True(descriptor.IsDefined);
		}
		public void ShouldDetectIfNoPropertyOrPubilcFieldDetected()
		{
			var descriptor = new ParticularyNamedPropertyOrPubilcFieldSpecialMember(typeof(EmptyEntity), "Name");
			Assert.False(descriptor.IsDefined);
		}
		public void ShouldIgnoreFieldIfItIsPrivate()
		{
			var descriptor = new ParticularyNamedPropertyOrPubilcFieldSpecialMember(typeof(PrivateFieldEntity), "Name");
			Assert.False(descriptor.IsDefined);
		}