public virtual void DoStuff3() { Assert.IsNotNull(this._foo, this._foo.Value, "Attribute has been injected"); ListQuery <Attribute> attrs = this._attributeHolder.AllAttributes[typeof(FooAttribute)]; Assert.IsTrue(attrs.Cast <FooAttribute>().Any(attr => attr.Value.Equals(THIRD_TEST_STRING)), "Attribute holder must contain attribute declared in composite type."); Assert.IsTrue(attrs.Cast <FooAttribute>().Any(attr => attr.Value.Equals(THIRD_TEST_STRING_MIXIN)), "Attribute holder must contain attribute declared in mixin type."); Assert.AreEqual(DO_STUFF_3_METHOD, this._method, "Correct Method has been injected."); this.next.DoStuff3(); }