public IAssemblyTransformation CreateTransformation () { if (_remotionInterfaces == null) throw new InvalidOperationException ("Please initialize options first! (ConstructorGenerator) : Remotion interfaces must be specified"); if (_workingDir == null) throw new InvalidOperationException ("Please initialize options first! (ConstructorGenerator) : Working directory must be specified"); #if PERFORMANCE_OUTPUT Stopwatch s = new Stopwatch (); s.Start (); #endif try { var checker = new StringAndReflectionBasedMixinChecker (_workingDir, _remotionInterfaces); return new ConstructorGenerator ( checker, new ILCodeGenerator ( new MethodReferenceGenerator (_remotionInterfaces, _objectFactory, _paramList), checker) ); } finally { #if PERFORMANCE_OUTPUT s.Stop (); Console.WriteLine ("time for mixinconfiguration initialization : " + s.Elapsed); s.Restart (); #endif } }
public void MixinChecker_Exception() { _checker = new StringAndReflectionBasedMixinChecker ("workingDirectory", "assemblyNameRemotionInterfaces"); var result = _checker.CanBeMixed (_assemblyDefinition.Name.BuildAssemblyQualifiedName(_assemblyDefinition.MainModule.Types[0])); Assert.That (result, Is.False); }