AspectSharp.Tests.AspectEngineTestCase.ClassWithConstructorArguments C# (CSharp) Method

ClassWithConstructorArguments() private method

private ClassWithConstructorArguments ( ) : void
return void
		public void ClassWithConstructorArguments()
		{
			String contents = "import AspectSharp.Tests.Classes in AspectSharp.Tests " + 
				" " + 
				" aspect MyAspect for ComplexClass " + 
				"   " + 
				"   pointcut method|property(*)" + 
				"     advice(AspectSharp.Tests.Classes.LogInvocationInterceptor)" + 
				"   end" + 
				"   " + 
				" end ";

			AspectEngineBuilder builder = new AspectLanguageEngineBuilder(contents);
			AspectEngine engine = builder.Build();

			ComplexClass instance = null;

			instance = engine.WrapClass(typeof(ComplexClass), "Eric Cartman") as ComplexClass;
			Assert.AreEqual("Eric Cartman", instance.Name);
			Assert.IsFalse(instance.Started);
			InvokeAndAssert(instance);

			instance = engine.WrapClass(typeof(ComplexClass), "Kenny McKormick", true) as ComplexClass;
			Assert.AreEqual("Kenny McKormick", instance.Name);
			Assert.IsTrue(instance.Started);
			InvokeAndAssert(instance);

			String[] messages = LogInvocationInterceptor.Messages;
			Assert.AreEqual( 20, messages.Length );
		}