public void Equals_False_MixinType() { var attribute1 = new MixAttribute(typeof(string), typeof(object)); var attribute2 = new MixAttribute(typeof(string), typeof(int)); Assert.That(attribute1, Is.Not.EqualTo(attribute2)); }
public void Equals_False_SuppressedMixins() { var attribute1 = new MixAttribute(typeof(string), typeof(object)) { SuppressedMixins = new[] { typeof(int) } }; var attribute2 = new MixAttribute(typeof(string), typeof(object)); Assert.That(attribute1, Is.Not.EqualTo(attribute2)); }
public void Equals_False_AdditionalDependencies() { var attribute1 = new MixAttribute(typeof(string), typeof(object)) { AdditionalDependencies = new[] { typeof(int) } }; var attribute2 = new MixAttribute(typeof(string), typeof(object)); Assert.That(attribute1, Is.Not.EqualTo(attribute2)); }
public void MixAttribute_Defaults() { MixAttribute attribute = new MixAttribute(typeof(string), typeof(int)); Assert.That(attribute.AdditionalDependencies, Is.Empty); Assert.That(attribute.SuppressedMixins, Is.Empty); Assert.That(attribute.IntroducedMemberVisibility, Is.EqualTo(MemberVisibility.Private)); Assert.That(attribute.MixinKind, Is.EqualTo(MixinKind.Extending)); Assert.That(attribute.TargetType, Is.EqualTo(typeof(string))); Assert.That(attribute.MixinType, Is.EqualTo(typeof(int))); }
public void Equals_False_IntroducedMemberVisibility() { var attribute1 = new MixAttribute(typeof(string), typeof(object)) { IntroducedMemberVisibility = MemberVisibility.Private }; var attribute2 = new MixAttribute(typeof(string), typeof(object)) { IntroducedMemberVisibility = MemberVisibility.Public }; Assert.That(attribute1, Is.Not.EqualTo(attribute2)); }
public void Equals_False_MixinKind() { var attribute1 = new MixAttribute(typeof(string), typeof(object)) { MixinKind = MixinKind.Extending }; var attribute2 = new MixAttribute(typeof(string), typeof(object)) { MixinKind = MixinKind.Used }; Assert.That(attribute1, Is.Not.EqualTo(attribute2)); }
public void Apply() { MixAttribute attribute = new MixAttribute(typeof(object), typeof(float)); _configurationBuilderMock .Expect( mock => mock.AddMixinToClass( MixinKind.Extending, typeof(object), typeof(float), MemberVisibility.Private, attribute.AdditionalDependencies, attribute.SuppressedMixins, CreateExpectedOrigin(attribute))) .Return(null); _mockRepository.ReplayAll(); attribute.Apply(_configurationBuilderMock, _assembly); _mockRepository.VerifyAll(); }
public void GetHashCode_Equal() { var attribute1 = new MixAttribute(typeof(string), typeof(object)) { MixinKind = MixinKind.Used, AdditionalDependencies = new[] { typeof(int), typeof(double) }, IntroducedMemberVisibility = MemberVisibility.Public, SuppressedMixins = new[] { typeof(float), typeof(DateTime) } }; var attribute2 = new MixAttribute(typeof(string), typeof(object)) { MixinKind = MixinKind.Used, AdditionalDependencies = new[] { typeof(int), typeof(double) }, IntroducedMemberVisibility = MemberVisibility.Public, SuppressedMixins = new[] { typeof(float), typeof(DateTime) } }; Assert.That(attribute1.GetHashCode(), Is.EqualTo(attribute2.GetHashCode())); }
public void Apply_InvalidOperation() { MixAttribute attribute = new MixAttribute(typeof(object), typeof(float)); attribute.SuppressedMixins = new[] { typeof(int) }; attribute.AdditionalDependencies = new[] { typeof(string) }; _configurationBuilderMock .Expect( mock => mock.AddMixinToClass( MixinKind.Extending, typeof(object), typeof(float), MemberVisibility.Private, attribute.AdditionalDependencies, attribute.SuppressedMixins, CreateExpectedOrigin(attribute))) .Throw(new InvalidOperationException("Supper?")); _mockRepository.ReplayAll(); attribute.Apply(_configurationBuilderMock, _assembly); }
public void IgnoresDuplicates() { var attribute = new MixAttribute(typeof(string), typeof(int)); Assert.That(attribute.IgnoresDuplicates, Is.True); }
private MixinContextOrigin CreateExpectedOrigin(MixAttribute attribute) { return(MixinContextOrigin.CreateForCustomAttribute(attribute, _assembly)); }