public void GetTraitOptions_ViaAttributeUsage() { var source = new FakeAttribute(); var expected = new TraitOptions { ValidOn = AttributeTargets.Property, AllowMultiple = true, Inherited = false }; AssertTraitOptions(source, expected); }
public void DisposeTest() { var attr = new FakeAttribute { ContextKey = "A" }; var contextStack = new Stack <AbstractContext <FakeAttribute> >(); var mockContext = new Mock <FakeContext>(attr, contextStack); #pragma warning disable CC0022 // Should dispose object var disposableAnalyser = new DisposableDecorator(mockContext.Object); #pragma warning restore CC0022 // Should dispose object GC.Collect(); mockContext.Verify(it => it.Dispose(), Times.Never()); }
private static CommonAttribute CreateCommonAttribute(FakeAttribute fakeAttribute) { if (fakeAttribute == null) { return(null); } var monoCecilAttribute = new Mock <MonoCecilAttribute>(null); monoCecilAttribute.Setup(attribute => attribute.Name).Returns(() => fakeAttribute.Name); monoCecilAttribute.Setup(attribute => attribute.FullName).Returns(() => CreateFullName(fakeAttribute.Name)); monoCecilAttribute.Setup(attribute => attribute.AttributeType).Returns(() => CreateMonoCecilTypeReference(new FakeType(fakeAttribute.AttributeType))); var reflectionAttribute = new ReflectionAttribute(fakeAttribute.AttributeInstance); return(new Mock <CommonAttribute>(monoCecilAttribute.Object, reflectionAttribute).Object); }
private static ICommonAttribute CreateCommonAttribute(FakeAttribute fakeAttribute) { var monoCecilAttribute = CreateMockFor <CustomAttribute>(); var typeReference = CreateTypeReference(new FakeType(fakeAttribute.AttributeType)); monoCecilAttribute.Setup(attribute => attribute.AttributeType).Returns(() => typeReference); var commonAttribute = CreateMockFor <ICommonAttribute>(); commonAttribute.Setup(attribute => attribute.Name).Returns(() => typeReference.Name); commonAttribute.Setup(attribute => attribute.FullName).Returns(() => typeReference.FullName); commonAttribute.Setup(attribute => attribute.MonoCecil).Returns(() => monoCecilAttribute.Object); commonAttribute.Setup(attribute => attribute.Reflection).Returns(() => fakeAttribute.AttributeInstance); commonAttribute.Setup(attribute => attribute.Type).Returns(() => fakeAttribute.AttributeType); commonAttribute.Setup(attribute => attribute.Load(It.IsAny <int>())).Returns(() => commonAttribute.Object); return(commonAttribute.Object); }
private T FillProperties <T>(T instance) { PropertyInfo[] props = instance.GetType().GetProperties(); foreach (PropertyInfo prop in props) { Attribute[] attributes = Attribute.GetCustomAttributes(prop); FakeAttribute fakeAttribute = (FakeAttribute)attributes.Where( x => x.GetType().Equals(typeof(FakeAttribute)) || x.GetType().Equals(typeof(CustomFakeAttribute)) ).FirstOrDefault(); if (fakeAttribute != null) { AddFakeValue(instance, fakeAttribute, prop, fakeAttribute.Minimum, fakeAttribute.Maximum); } } return(instance); }
public FakeCommonTypeBuilder AddAttribute(FakeAttribute typeFakeAttribute) { attributes.Add(typeFakeAttribute); return(this); }
public void GetTraitOptions_ViaAttributeUsage_Cached() { var source = new FakeAttribute(); Assert.AreSame(source.GetTraitOptions(), source.GetTraitOptions()); }