public BehaviorFactory(MSpecUnitTestProvider provider, IProject project, ProjectModelElementEnvoy projectEnvoy, ContextCache cache)
 {
   _provider = provider;
   _cache = cache;
   _project = project;
   _projectEnvoy = projectEnvoy;
 }
    public static IUnitTestElement ReadFromXml(XmlElement parent, IUnitTestElement parentElement, MSpecUnitTestProvider provider, ISolution solution
#if RESHARPER_61
      , IUnitTestElementManager manager, PsiModuleManager psiModuleManager, CacheManager cacheManager
#endif
      )
    {
      var projectId = parent.GetAttribute("projectId");
      var project = ProjectUtil.FindProjectElementByPersistentID(solution, projectId) as IProject;
      if (project == null)
      {
        return null;
      }

      var behavior = parentElement as BehaviorElement;
      if (behavior == null)
      {
        return null;
      }

      var typeName = parent.GetAttribute("typeName");
      var methodName = parent.GetAttribute("methodName");
      var isIgnored = bool.Parse(parent.GetAttribute("isIgnored"));

      return BehaviorSpecificationFactory.GetOrCreateBehaviorSpecification(provider,
#if RESHARPER_61
        manager, psiModuleManager, cacheManager,
#endif
        project, behavior, ProjectModelElementEnvoy.Create(project), typeName, methodName, isIgnored);
    }
        public BehaviorSpecificationFactory(MSpecUnitTestProvider provider, IProject project, ProjectModelElementEnvoy projectEnvoy)
        {
#endif
            _provider     = provider;
            _project      = project;
            _projectEnvoy = projectEnvoy;
        }
    protected Element(MSpecUnitTestProvider provider,
                      Element parent,
                      ProjectModelElementEnvoy projectEnvoy,
                      string declaringTypeName,
                      bool isIgnored)
    {
      if (projectEnvoy == null && !Shell.Instance.IsTestShell)
      {
        throw new ArgumentNullException("project");
      }

      if (declaringTypeName == null)
      {
        throw new ArgumentNullException("declaringTypeName");
      }

      if (projectEnvoy != null)
      {
        _projectEnvoy = projectEnvoy;
      }

      _provider = provider;
      _declaringTypeName = declaringTypeName;

      if (isIgnored)
      {
        ExplicitReason = "Ignored";
      }

      TypeName = declaringTypeName;
      Parent = parent;

      Children = new List<IUnitTestElement>();
      State = UnitTestElementState.Valid;
    }
        public static UnitTestElementId CreateId(MSpecUnitTestProvider provider, ContextElement contextElement, string fieldType, string fieldName)
        {
            var result = new[] { contextElement.Id, fieldType, fieldName };
            var id     = result.Where(s => !string.IsNullOrEmpty(s)).AggregateString(".");

            return(new UnitTestElementId(provider, new PersistentProjectId(contextElement.GetProject()), id));
        }
    public static BehaviorElement GetOrCreateBehavior(MSpecUnitTestProvider provider,
                                                      IProject project,
                                                      ProjectModelElementEnvoy projectEnvoy,
                                                      ContextElement context,
                                                      string declaringTypeName,
                                                      string fieldName,
                                                      bool isIgnored,
                                                      string fullyQualifiedTypeName)
    {
#if RESHARPER_6
      var id = BehaviorElement.CreateId(context, fieldName);
      var behavior = provider.UnitTestManager.GetElementById(project, id) as BehaviorElement;
      if (behavior != null)
      {
        behavior.Parent = context;
        behavior.State = UnitTestElementState.Valid;
        return behavior;
      }
#endif

      return new BehaviorElement(provider,
                                 context,
                                 projectEnvoy,
                                 declaringTypeName,
                                 fieldName,
                                 isIgnored,
                                 fullyQualifiedTypeName);
    }
    public static ContextElement GetOrCreateContextElement(MSpecUnitTestProvider provider,
                                                           IProject project,
                                                           ProjectModelElementEnvoy projectEnvoy,
                                                           string typeName,
                                                           string assemblyLocation,
                                                           string subject,
                                                           ICollection<string> tags,
                                                           bool isIgnored)
    {
#if RESHARPER_6
      var id = ContextElement.CreateId(subject, typeName);
      var contextElement = provider.UnitTestManager.GetElementById(project, id) as ContextElement;
      if (contextElement != null)
      {
        contextElement.State = UnitTestElementState.Valid;
        return contextElement;
      }
#endif

      return new ContextElement(provider,
                                projectEnvoy,
                                typeName,
                                assemblyLocation,
                                subject,
                                tags,
                                isIgnored);
    }
    public static ContextSpecificationElement GetOrCreateContextSpecification(MSpecUnitTestProvider provider,
                                                                              IProject project,
                                                                              ContextElement context,
                                                                              ProjectModelElementEnvoy projectEnvoy,
                                                                              string declaringTypeName,
                                                                              string fieldName,
                                                                              ICollection<string> tags,
                                                                              bool isIgnored)
    {
#if RESHARPER_6
      var id = ContextSpecificationElement.CreateId(context, fieldName);
      var contextSpecification = provider.UnitTestManager.GetElementById(project, id) as ContextSpecificationElement;
      if (contextSpecification != null)
      {
        contextSpecification.Parent = context;
        contextSpecification.State = UnitTestElementState.Valid;
        return contextSpecification;
      }
#endif

      return new ContextSpecificationElement(provider,
                                             context,
                                             projectEnvoy,
                                             declaringTypeName,
                                             fieldName,
                                             tags,
                                             isIgnored);
    }
        public FileExplorer(MSpecUnitTestProvider provider,
                            ElementFactories factories,
                            IFile file,
                            UnitTestElementLocationConsumer consumer,
                            Func <bool> interrupted)
        {
            if (file == null)
            {
                throw new ArgumentNullException("file");
            }

            if (provider == null)
            {
                throw new ArgumentNullException("provider");
            }

            _consumer    = consumer;
            _file        = file;
            _interrupted = interrupted;

            var project = file.GetSourceFile().ToProjectFile().GetProject();

            _assemblyPath = project.GetOutputFilePath().FullPath;

            _elementHandlers = new List <IElementHandler>
            {
                new ContextElementHandler(factories),
                new ContextSpecificationElementHandler(factories),
                new BehaviorElementHandler(factories)
            };
        }
    public static IUnitTestElement ReadFromXml(XmlElement parent, IUnitTestElement parentElement, MSpecUnitTestProvider provider, ISolution solution
#if RESHARPER_61
      , IUnitTestElementManager manager, PsiModuleManager psiModuleManager, CacheManager cacheManager
#endif
      )
    {
      var projectId = parent.GetAttribute("projectId");
      var project = ProjectUtil.FindProjectElementByPersistentID(solution, projectId) as IProject;
      if (project == null)
      {
        return null;
      }

      var context = parentElement as ContextElement;
      if (context == null)
      {
        return null;
      }

      var typeName = parent.GetAttribute("typeName");
      var methodName = parent.GetAttribute("methodName");
      var isIgnored = bool.Parse(parent.GetAttribute("isIgnored"));

      return ContextSpecificationFactory.GetOrCreateContextSpecification(provider,
#if RESHARPER_61
                manager, psiModuleManager, cacheManager,
#endif
                project, context, ProjectModelElementEnvoy.Create(project), new ClrTypeName(typeName), methodName, EmptyArray<string>.Instance, isIgnored);
    }
        public AssemblyExplorer(MSpecUnitTestProvider provider,
#if RESHARPER_61
                                IUnitTestElementManager manager,
                                PsiModuleManager psiModuleManager,
                                CacheManager cacheManager,
#endif
                                IMetadataAssembly assembly,
                                IProject project,
                                UnitTestElementConsumer consumer)
        {
            _assembly = assembly;
            _consumer = consumer;

            using (ReadLockCookie.Create())
            {
                var projectEnvoy = new ProjectModelElementEnvoy(project);

                var cache = new ContextCache();
#if RESHARPER_61
                _contextFactory = new ContextFactory(provider, manager, psiModuleManager, cacheManager, project, projectEnvoy, _assembly.Location.FullPath, cache);
                _contextSpecificationFactory  = new ContextSpecificationFactory(provider, manager, psiModuleManager, cacheManager, project, projectEnvoy, cache);
                _behaviorFactory              = new BehaviorFactory(provider, manager, psiModuleManager, cacheManager, project, projectEnvoy, cache);
                _behaviorSpecificationFactory = new BehaviorSpecificationFactory(provider, manager, psiModuleManager, cacheManager, project, projectEnvoy);
#else
#if RESHARPER_6
                _contextFactory = new ContextFactory(provider, project, projectEnvoy, _assembly.Location.FullPath, cache);
#else
                _contextFactory = new ContextFactory(provider, project, projectEnvoy, _assembly.Location, cache);
#endif
                _contextSpecificationFactory  = new ContextSpecificationFactory(provider, project, projectEnvoy, cache);
                _behaviorFactory              = new BehaviorFactory(provider, project, projectEnvoy, cache);
                _behaviorSpecificationFactory = new BehaviorSpecificationFactory(provider, project, projectEnvoy);
#endif
            }
        }
    public static BehaviorSpecificationElement GetOrCreateBehaviorSpecification(MSpecUnitTestProvider provider,
                                                                                IUnitTestElementManager manager,
                                                                                PsiModuleManager psiModuleManager,
                                                                                CacheManager cacheManager,
                                                                                IProject project,
                                                                                BehaviorElement behavior,
                                                                                ProjectModelElementEnvoy projectEnvoy,
                                                                                IClrTypeName declaringTypeName,
                                                                                string fieldName,
                                                                                bool isIgnored)
    {
      var id = BehaviorSpecificationElement.CreateId(behavior, fieldName);
      var behaviorSpecification = manager.GetElementById(project, id) as BehaviorSpecificationElement;
      if (behaviorSpecification != null)
      {
        behaviorSpecification.Parent = behavior;
        behaviorSpecification.State = UnitTestElementState.Valid;
        return behaviorSpecification;
      }

      return new BehaviorSpecificationElement(provider,
                                              psiModuleManager,
                                              cacheManager,
                                              behavior,
                                              projectEnvoy,
                                              declaringTypeName,
                                              fieldName,
                                              isIgnored);
    }
    public static ContextSpecificationElement GetOrCreateContextSpecification(MSpecUnitTestProvider provider,
                                                                              IUnitTestElementManager manager,
                                                                              PsiModuleManager psiModuleManager,
                                                                              CacheManager cacheManager,
                                                                              IProject project,
                                                                              ContextElement context,
                                                                              ProjectModelElementEnvoy projectEnvoy,
                                                                              IClrTypeName declaringTypeName,
                                                                              string fieldName,
                                                                              bool isIgnored)
    {
      var id = ContextSpecificationElement.CreateId(context, fieldName);
      var contextSpecification = manager.GetElementById(project, id) as ContextSpecificationElement;
      if (contextSpecification != null)
      {
        contextSpecification.Parent = context;
        contextSpecification.State = UnitTestElementState.Valid;
        return contextSpecification;
      }

      return new ContextSpecificationElement(provider,
                                             psiModuleManager,
                                             cacheManager,
                                             context,
                                             projectEnvoy,
                                             declaringTypeName,
                                             fieldName,
                                             isIgnored);
    }
    public static ContextElement GetOrCreateContext(MSpecUnitTestProvider provider,
                                                    IUnitTestElementManager manager,
                                                    PsiModuleManager psiModuleManager,
                                                    CacheManager cacheManager,
                                                    IProject project,
                                                    ProjectModelElementEnvoy projectEnvoy,
                                                    IClrTypeName typeName,
                                                    string assemblyLocation,
                                                    string subject,
                                                    ICollection<string> tags,
                                                    bool isIgnored)
    {
      var id = ContextElement.CreateId(subject, typeName.FullName, tags);
      var contextElement = manager.GetElementById(project, id) as ContextElement;
      if (contextElement != null)
      {
        contextElement.State = UnitTestElementState.Valid;
        return contextElement;
      }

      return new ContextElement(provider,
                                psiModuleManager,
                                cacheManager,
                                projectEnvoy,
                                typeName,
                                assemblyLocation,
                                subject,
                                tags,
                                isIgnored);
    }
    public BehaviorSpecificationFactory(MSpecUnitTestProvider provider, IProject project, ProjectModelElementEnvoy projectEnvoy)
    {
#endif
      _provider = provider;
      _project = project;
      _projectEnvoy = projectEnvoy;
    }
    public static IUnitTestElement ReadFromXml(XmlElement parent, IUnitTestElement parentElement, MSpecUnitTestProvider provider)
    {
      var projectId = parent.GetAttribute("projectId");
      var project = ProjectUtil.FindProjectElementByPersistentID(provider.Solution, projectId) as IProject;
      if (project == null)
      {
        return null;
      }

      var context = parentElement as ContextElement;
      if (context == null)
      {
        return null;
      }

      var typeName = parent.GetAttribute("typeName");
      var methodName = parent.GetAttribute("methodName");
      var isIgnored = bool.Parse(parent.GetAttribute("isIgnored"));
      var fullyQualifiedTypeName = parent.GetAttribute("typeFQN");

      return Factories.BehaviorFactory.GetOrCreateBehavior(provider,
                                                           project,
                                                           ProjectModelElementEnvoy.Create(project),
                                                           context,
                                                           typeName,
                                                           methodName,
                                                           isIgnored,
                                                           fullyQualifiedTypeName);
    }
        public static IUnitTestElement ReadFromXml(XmlElement parent,
                                                   IUnitTestElement parentElement,
                                                   MSpecUnitTestProvider provider,
                                                   ISolution solution,
                                                   IUnitTestElementManager manager,
                                                   PsiModuleManager psiModuleManager,
                                                   CacheManager cacheManager
                                                   )
        {
            var projectId = parent.GetAttribute("projectId");
            var project   = ProjectUtil.FindProjectElementByPersistentID(solution, projectId) as IProject;

            if (project == null)
            {
                return(null);
            }

            var typeName         = parent.GetAttribute("typeName");
            var assemblyLocation = parent.GetAttribute("assemblyLocation");
            var isIgnored        = bool.Parse(parent.GetAttribute("isIgnored"));
            var subject          = parent.GetAttribute("subject");

            return(ContextFactory.GetOrCreateContext(provider,
                                                     manager,
                                                     psiModuleManager,
                                                     cacheManager,
                                                     project,
                                                     ProjectModelElementEnvoy.Create(project),
                                                     new ClrTypeName(typeName),
                                                     assemblyLocation,
                                                     subject,
                                                     EmptyArray <string> .Instance,
                                                     isIgnored));
        }
        public FileExplorer(MSpecUnitTestProvider provider,
                            ElementFactories factories,
                            IFile file,
                            IUnitTestElementsObserver consumer,
                            Func<bool> interrupted)
        {
            if (file == null)
            {
                throw new ArgumentNullException("file");
            }

            if (provider == null)
            {
                throw new ArgumentNullException("provider");
            }

            this._consumer = consumer;
            this._file = file;
            this._interrupted = interrupted;

            var project = file.GetSourceFile().ToProjectFile().GetProject();

            this._assemblyPath = project.GetOutputFilePath().FullPath;

            this._elementHandlers = new List<IElementHandler>
                         {
                           new ContextElementHandler(factories),
                           new ContextSpecificationElementHandler(factories),
                           new BehaviorElementHandler(factories)
                         };
        }
    protected Element(MSpecUnitTestProvider provider,
                      IPsi psiModuleManager,
                      ICache cacheManager,
                      Element parent,
                      ProjectModelElementEnvoy projectEnvoy,
                      IClrTypeName declaringTypeName,
                      bool isIgnored)
    {
      if (declaringTypeName == null)
      {
        throw new ArgumentNullException("declaringTypeName");
      }

      if (projectEnvoy != null)
      {
        _projectEnvoy = projectEnvoy;
      }

      _provider = provider;
      _declaringTypeName = declaringTypeName;
      _psiModuleManager = psiModuleManager;
      _cacheManager = cacheManager;

      if (isIgnored)
      {
        ExplicitReason = "Ignored";
      }

      TypeName = declaringTypeName;
      Parent = parent;

      Children = new List<IUnitTestElement>();
      State = UnitTestElementState.Valid;
      _taskFactory = new UnitTestTaskFactory(_provider.ID);
    }
        protected Element(MSpecUnitTestProvider provider,
                          Element parent,
                          IClrTypeName declaringTypeName,
                          UnitTestingCachingService cachingService,
                          IUnitTestElementManager elementManager,
                          bool isIgnored)
        {
            if (declaringTypeName == null)
            {
                throw new ArgumentNullException("declaringTypeName");
            }

            this._provider          = provider;
            this._declaringTypeName = declaringTypeName;
            this._cachingService    = cachingService;
            this._elementManager    = elementManager;

            if (isIgnored)
            {
                this.ExplicitReason = "Ignored";
            }

            this.Parent = parent;

            this.Children     = new BindableCollection <IUnitTestElement>(UT.Locks.ReadLock);
            this._taskFactory = new UnitTestTaskFactory(this._provider.ID);
        }
 public ContextFactory(MSpecUnitTestProvider provider, ProjectModelElementEnvoy projectEnvoy, string assemblyPath, ContextCache cache)
 {
   _provider = provider;
   _cache = cache;
   _projectEnvoy = projectEnvoy;
   _assemblyPath = assemblyPath;
 }
Beispiel #22
0
        protected Element(MSpecUnitTestProvider provider,
                          IPsi psiModuleManager,
                          ICache cacheManager,
                          Element parent,
                          ProjectModelElementEnvoy projectEnvoy,
                          IClrTypeName declaringTypeName,
                          bool isIgnored)
        {
            if (declaringTypeName == null)
            {
                throw new ArgumentNullException("declaringTypeName");
            }

            if (projectEnvoy != null)
            {
                this._projectEnvoy = projectEnvoy;
            }

            this._provider          = provider;
            this._declaringTypeName = declaringTypeName;
            this._psiModuleManager  = psiModuleManager;
            this._cacheManager      = cacheManager;

            if (isIgnored)
            {
                this.ExplicitReason = "Ignored";
            }

            this.TypeName = declaringTypeName;
            this.Parent   = parent;

            this.Children     = new List <IUnitTestElement>();
            this.State        = UnitTestElementState.Valid;
            this._taskFactory = new UnitTestTaskFactory(this._provider.ID);
        }
Beispiel #23
0
        public static BehaviorElement GetOrCreateBehavior(MSpecUnitTestProvider provider,
                                                          IUnitTestElementManager manager,
                                                          PsiModuleManager psiModuleManager,
                                                          CacheManager cacheManager,
                                                          IProject project,
                                                          ProjectModelElementEnvoy projectEnvoy,
                                                          ContextElement context,
                                                          IClrTypeName declaringTypeName,
                                                          string fieldName,
                                                          bool isIgnored,
                                                          string fieldType)
        {
            var id       = BehaviorElement.CreateId(context, fieldType, fieldName);
            var behavior = manager.GetElementById(project, id) as BehaviorElement;

            if (behavior != null)
            {
                behavior.Parent = context;
                behavior.State  = UnitTestElementState.Valid;
                return(behavior);
            }

            return(new BehaviorElement(provider,
                                       psiModuleManager,
                                       cacheManager,
                                       context,
                                       projectEnvoy,
                                       declaringTypeName,
                                       fieldName,
                                       isIgnored,
                                       fieldType));
        }
    public AssemblyExplorer(MSpecUnitTestProvider provider,
#if RESHARPER_61
                            IUnitTestElementManager manager,
                            PsiModuleManager psiModuleManager,
                            CacheManager cacheManager,
#endif
                            IMetadataAssembly assembly,
                            IProject project,
                            UnitTestElementConsumer consumer)
    {
      _assembly = assembly;
      _consumer = consumer;

      using (ReadLockCookie.Create())
      {
        var projectEnvoy = new ProjectModelElementEnvoy(project);

        var cache = new ContextCache();
#if RESHARPER_61
        _contextFactory = new ContextFactory(provider, manager, psiModuleManager, cacheManager, project, projectEnvoy, _assembly.Location.FullPath, cache);
        _contextSpecificationFactory = new ContextSpecificationFactory(provider, manager, psiModuleManager, cacheManager, project, projectEnvoy, cache);
        _behaviorFactory = new BehaviorFactory(provider, manager, psiModuleManager, cacheManager, project, projectEnvoy, cache);
        _behaviorSpecificationFactory = new BehaviorSpecificationFactory(provider, manager, psiModuleManager, cacheManager, project, projectEnvoy);
#else
#if RESHARPER_6
        _contextFactory = new ContextFactory(provider, project, projectEnvoy, _assembly.Location.FullPath, cache);
#else
        _contextFactory = new ContextFactory(provider, project, projectEnvoy, _assembly.Location, cache);
#endif
        _contextSpecificationFactory = new ContextSpecificationFactory(provider, project, projectEnvoy, cache);
        _behaviorFactory = new BehaviorFactory(provider, project, projectEnvoy, cache);
        _behaviorSpecificationFactory = new BehaviorSpecificationFactory(provider, project, projectEnvoy);
#endif
      }
    }
        public static ContextElement GetOrCreateContext(MSpecUnitTestProvider provider,
                                                        IUnitTestElementManager manager,
                                                        PsiModuleManager psiModuleManager,
                                                        CacheManager cacheManager,
                                                        IProject project,
                                                        ProjectModelElementEnvoy projectEnvoy,
                                                        IClrTypeName typeName,
                                                        string assemblyLocation,
                                                        string subject,
                                                        ICollection <string> tags,
                                                        bool isIgnored)
        {
            var id             = ContextElement.CreateId(subject, typeName.FullName, tags);
            var contextElement = manager.GetElementById(project, id) as ContextElement;

            if (contextElement != null)
            {
                contextElement.State = UnitTestElementState.Valid;
                return(contextElement);
            }

            return(new ContextElement(provider,
                                      psiModuleManager,
                                      cacheManager,
                                      projectEnvoy,
                                      typeName,
                                      assemblyLocation,
                                      subject,
                                      tags,
                                      isIgnored));
        }
Beispiel #26
0
        public static BehaviorSpecificationElement GetOrCreateBehaviorSpecification(MSpecUnitTestProvider provider,
                                                                                    IUnitTestElementManager manager,
                                                                                    PsiModuleManager psiModuleManager,
                                                                                    CacheManager cacheManager,
                                                                                    IProject project,
                                                                                    BehaviorElement behavior,
                                                                                    ProjectModelElementEnvoy projectEnvoy,
                                                                                    IClrTypeName declaringTypeName,
                                                                                    string fieldName,
                                                                                    bool isIgnored)
        {
            var id = BehaviorSpecificationElement.CreateId(behavior, fieldName);
            var behaviorSpecification = manager.GetElementById(project, id) as BehaviorSpecificationElement;

            if (behaviorSpecification != null)
            {
                behaviorSpecification.Parent = behavior;
                behaviorSpecification.State  = UnitTestElementState.Valid;
                return(behaviorSpecification);
            }

            return(new BehaviorSpecificationElement(provider,
                                                    psiModuleManager,
                                                    cacheManager,
                                                    behavior,
                                                    projectEnvoy,
                                                    declaringTypeName,
                                                    fieldName,
                                                    isIgnored));
        }
    public FileExplorer(MSpecUnitTestProvider provider,
                        ElementFactories factories,
                        IFile file,
                        UnitTestElementLocationConsumer consumer,
                        Func<bool> interrupted)
    {
      if (file == null)
      {
        throw new ArgumentNullException("file");
      }

      if (provider == null)
      {
        throw new ArgumentNullException("provider");
      }

      _consumer = consumer;
      _file = file;
      _interrupted = interrupted;

      var project = file.GetSourceFile().ToProjectFile().GetProject();
        
#if !RESHARPER_8
      _assemblyPath = UnitTestManager.GetOutputAssemblyPath(project).FullPath;
#else
      _assemblyPath = project.GetOutputFilePath().FullPath;
#endif

      _elementHandlers = new List<IElementHandler>
                         {
                           new ContextElementHandler(factories),
                           new ContextSpecificationElementHandler(factories),
                           new BehaviorElementHandler(factories)
                         };
    }
        public static ContextSpecificationElement GetOrCreateContextSpecification(MSpecUnitTestProvider provider,
                                                                                  IUnitTestElementManager manager,
                                                                                  PsiModuleManager psiModuleManager,
                                                                                  CacheManager cacheManager,
                                                                                  IProject project,
                                                                                  ContextElement context,
                                                                                  ProjectModelElementEnvoy projectEnvoy,
                                                                                  IClrTypeName declaringTypeName,
                                                                                  string fieldName,
                                                                                  bool isIgnored)
        {
            var id = ContextSpecificationElement.CreateId(context, fieldName);
            var contextSpecification = manager.GetElementById(project, id) as ContextSpecificationElement;

            if (contextSpecification != null)
            {
                contextSpecification.Parent = context;
                contextSpecification.State  = UnitTestElementState.Valid;
                return(contextSpecification);
            }

            return(new ContextSpecificationElement(provider,
                                                   psiModuleManager,
                                                   cacheManager,
                                                   context,
                                                   projectEnvoy,
                                                   declaringTypeName,
                                                   fieldName,
                                                   isIgnored));
        }
    public ContextSpecificationFactory(MSpecUnitTestProvider provider, IProject project, ProjectModelElementEnvoy projectEnvoy, ContextCache cache)
    {
#endif
      _provider = provider;
      _cache = cache;
      _project = project;
      _projectEnvoy = projectEnvoy;
    }
Beispiel #30
0
        public ContextSpecificationFactory(MSpecUnitTestProvider provider, IProject project, ProjectModelElementEnvoy projectEnvoy, ContextCache cache)
        {
#endif
            _provider     = provider;
            _cache        = cache;
            _project      = project;
            _projectEnvoy = projectEnvoy;
        }
        public ContextFactory(MSpecUnitTestProvider provider, IProject project, ProjectModelElementEnvoy projectEnvoy, string assemblyPath, ContextCache cache)
        {
#endif
            _provider     = provider;
            _cache        = cache;
            _project      = project;
            _projectEnvoy = projectEnvoy;
            _assemblyPath = assemblyPath;
        }
Beispiel #32
0
        public MSpecTestElementsSource(MSpecUnitTestProvider provider, AssemblyExplorer assemblyExplorer, ElementFactories elementFactories, IShellLocks shellLocks)
        {
            this._provider         = provider;
            this._assemblyExplorer = assemblyExplorer;
            this._elementFactories = elementFactories;

            _metadataElementsSource = new MetadataElementsSource(Logger.GetLogger(typeof(MSpecTestElementsSource)),
                                                                 shellLocks);
        }
        public MSpecTestElementsSource(MSpecUnitTestProvider provider, AssemblyExplorer assemblyExplorer, ElementFactories elementFactories, IShellLocks shellLocks)
        {
            this._provider = provider;
            this._assemblyExplorer = assemblyExplorer;
            this._elementFactories = elementFactories;

            _metadataElementsSource = new MetadataElementsSource(Logger.GetLogger(typeof(MSpecTestElementsSource)),
                shellLocks);
        }
 public MSpecTestMetadataExplorer(MSpecUnitTestProvider provider,
                                  IUnitTestElementManager manager,
                                  PsiModuleManager psiModuleManager,
                                  CacheManager cacheManager)
 {
   _manager = manager;
   _psiModuleManager = psiModuleManager;
   _cacheManager = cacheManager;
   _provider = provider;
 }
 public BehaviorSpecificationFactory(MSpecUnitTestProvider provider,
                                     IUnitTestElementManager manager,
                                     UnitTestingCachingService cachingService,
                                     IUnitTestElementIdFactory elementIdFactory)
 {
     this._elementIdFactory = elementIdFactory;
     this._provider         = provider;
     _manager        = manager;
     _cachingService = cachingService;
 }
 public MSpecTestMetadataExplorer(MSpecUnitTestProvider provider,
                                  IUnitTestElementManager manager,
                                  PsiModuleManager psiModuleManager,
                                  CacheManager cacheManager)
 {
     _manager          = manager;
     _psiModuleManager = psiModuleManager;
     _cacheManager     = cacheManager;
     _provider         = provider;
 }
Beispiel #37
0
 public BehaviorSpecificationFactory(MSpecUnitTestProvider provider,
                                     IUnitTestElementManager manager,
                                     IPsi psiModuleManager,
                                     ICache cacheManager)
 {
     this._manager          = manager;
     this._psiModuleManager = psiModuleManager;
     this._cacheManager     = cacheManager;
     this._provider         = provider;
 }
 public BehaviorSpecificationFactory(MSpecUnitTestProvider provider,
                                     IUnitTestElementManager manager,
                                     IPsi psiModuleManager,
                                     ICache cacheManager)
 {
   _manager = manager;
   _psiModuleManager = psiModuleManager;
   _cacheManager = cacheManager;
   _provider = provider;
 }
 protected FieldElement(MSpecUnitTestProvider provider,
                        Element parent,
                        ProjectModelElementEnvoy projectEnvoy,
                        string declaringTypeName,
                        string fieldName,
                        bool isIgnored)
     : base(provider, parent, projectEnvoy, declaringTypeName, isIgnored || parent.Explicit)
 {
     _fieldName = fieldName;
 }
Beispiel #40
0
        public FileExplorer(MSpecUnitTestProvider provider,
#if RESHARPER_61
                            IUnitTestElementManager manager,
                            PsiModuleManager psiModuleManager,
                            CacheManager cacheManager,
#endif
                            UnitTestElementLocationConsumer consumer,
                            IFile file,
                            CheckForInterrupt interrupted)
        {
            if (file == null)
            {
                throw new ArgumentNullException("file");
            }

            if (provider == null)
            {
                throw new ArgumentNullException("provider");
            }

            _consumer    = consumer;
            _file        = file;
            _interrupted = interrupted;

#if RESHARPER_6
            IProject project = file.GetSourceFile().ToProjectFile().GetProject();
#else
            IProject project = file.ProjectFile.GetProject();
#endif
            var    projectEnvoy = new ProjectModelElementEnvoy(project);
            string assemblyPath = UnitTestManager.GetOutputAssemblyPath(project).FullPath;

            var cache = new ContextCache();


#if RESHARPER_61
            var contextFactory = new ContextFactory(provider, manager, psiModuleManager, cacheManager, project, projectEnvoy, assemblyPath, cache);
            var contextSpecificationFactory  = new ContextSpecificationFactory(provider, manager, psiModuleManager, cacheManager, project, projectEnvoy, cache);
            var behaviorFactory              = new BehaviorFactory(provider, manager, psiModuleManager, cacheManager, project, projectEnvoy, cache);
            var behaviorSpecificationFactory = new BehaviorSpecificationFactory(provider, manager, psiModuleManager, cacheManager, project, projectEnvoy);
#else
            var contextFactory = new ContextFactory(provider, project, projectEnvoy, assemblyPath, cache);
            var contextSpecificationFactory  = new ContextSpecificationFactory(provider, project, projectEnvoy, cache);
            var behaviorFactory              = new BehaviorFactory(provider, project, projectEnvoy, cache);
            var behaviorSpecificationFactory = new BehaviorSpecificationFactory(provider, project, projectEnvoy);
#endif

            _elementHandlers = new List <IElementHandler>
            {
                new ContextElementHandler(contextFactory),
                new ContextSpecificationElementHandler(contextSpecificationFactory),
                new BehaviorElementHandler(behaviorFactory, behaviorSpecificationFactory)
            };
        }
    public FileExplorer(MSpecUnitTestProvider provider,
#if RESHARPER_61
                        IUnitTestElementManager manager,
                        PsiModuleManager psiModuleManager,
                        CacheManager cacheManager,
#endif
                        UnitTestElementLocationConsumer consumer,
                        IFile file,
                        CheckForInterrupt interrupted)
    {
      if (file == null)
      {
        throw new ArgumentNullException("file");
      }

      if (provider == null)
      {
        throw new ArgumentNullException("provider");
      }

      _consumer = consumer;
      _file = file;
      _interrupted = interrupted;

#if RESHARPER_6
      IProject project = file.GetSourceFile().ToProjectFile().GetProject();
#else
      IProject project = file.ProjectFile.GetProject();
#endif
      var projectEnvoy = new ProjectModelElementEnvoy(project);
      string assemblyPath = UnitTestManager.GetOutputAssemblyPath(project).FullPath;

      var cache = new ContextCache();


#if RESHARPER_61
      var contextFactory = new ContextFactory(provider, manager, psiModuleManager, cacheManager, project, projectEnvoy, assemblyPath, cache);
      var contextSpecificationFactory = new ContextSpecificationFactory(provider, manager, psiModuleManager, cacheManager, project, projectEnvoy, cache);
      var behaviorFactory = new BehaviorFactory(provider, manager, psiModuleManager, cacheManager, project, projectEnvoy, cache);
      var behaviorSpecificationFactory = new BehaviorSpecificationFactory(provider, manager, psiModuleManager, cacheManager, project, projectEnvoy);
#else
      var contextFactory = new ContextFactory(provider, project, projectEnvoy, assemblyPath, cache);
      var contextSpecificationFactory = new ContextSpecificationFactory(provider, project, projectEnvoy, cache);
      var behaviorFactory = new BehaviorFactory(provider, project, projectEnvoy, cache);
      var behaviorSpecificationFactory = new BehaviorSpecificationFactory(provider, project, projectEnvoy);
#endif

      _elementHandlers = new List<IElementHandler>
                         {
                           new ContextElementHandler(contextFactory),
                           new ContextSpecificationElementHandler(contextSpecificationFactory),
                           new BehaviorElementHandler(behaviorFactory, behaviorSpecificationFactory)
                         };
    }
 public BehaviorSpecificationElement(MSpecUnitTestProvider provider,
   // ReSharper disable SuggestBaseTypeForParameter
                                     BehaviorElement behavior,
   // ReSharper restore SuggestBaseTypeForParameter
                                     ProjectModelElementEnvoy projectEnvoy,
                                     string declaringTypeName,
                                     string fieldName,
                                     bool isIgnored)
   : base(provider, behavior, projectEnvoy, declaringTypeName, fieldName, isIgnored || behavior.Explicit)
 {
 }
 protected FieldElement(MSpecUnitTestProvider provider,
                        Element parent,
                        IClrTypeName declaringTypeName,
                        UnitTestingCachingService cachingService,
                        IUnitTestElementManager elementManager,
                        string fieldName,
                        bool isIgnored)
     : base(provider, parent, declaringTypeName, cachingService, elementManager, isIgnored || parent.Explicit)
 {
     this._fieldName = fieldName;
 }
 public BehaviorFactory(MSpecUnitTestProvider provider,
                        IUnitTestElementManager manager,
                        IPsi psiModuleManager,
                        ICache cacheManager,
                        ElementCache cache)
 {
     _psiModuleManager = psiModuleManager;
     _cacheManager     = cacheManager;
     _provider         = provider;
     _cache            = cache;
     _manager          = manager;
 }
 protected FieldElement(MSpecUnitTestProvider provider,
                        PsiModuleManager psiModuleManager,
                        CacheManager cacheManager,
                        Element parent,
                        ProjectModelElementEnvoy projectEnvoy,
                        IClrTypeName declaringTypeName,
                        string fieldName,
                        bool isIgnored)
     : base(provider, psiModuleManager, cacheManager, parent, projectEnvoy, declaringTypeName, isIgnored || parent.Explicit)
 {
     _fieldName = fieldName;
 }
Beispiel #46
0
 public ContextSpecificationFactory(MSpecUnitTestProvider provider,
                                    IUnitTestElementManager manager,
                                    IUnitTestElementIdFactory elementIdFactory,
                                    UnitTestingCachingService cachingService,
                                    ElementCache cache)
 {
     this._manager          = manager;
     this._elementIdFactory = elementIdFactory;
     this._cachingService   = cachingService;
     this._provider         = provider;
     this._cache            = cache;
 }
 public ContextSpecificationFactory(MSpecUnitTestProvider provider,
                                    IUnitTestElementManager manager,
                                    IPsi psiModuleManager,
                                    ICache cacheManager,
                                    ElementCache cache)
 {
     this._manager = manager;
     this._psiModuleManager = psiModuleManager;
     this._cacheManager = cacheManager;
     this._provider = provider;
     this._cache = cache;
 }
 public BehaviorSpecificationFactory(MSpecUnitTestProvider provider,
                                     IUnitTestElementManager manager,
                                     IPsi psiModuleManager,
                                     ICache cacheManager,
                                     IUnitTestElementIdFactory elementIdFactory)
 {
     this._manager = manager;
     this._psiModuleManager = psiModuleManager;
     this._cacheManager = cacheManager;
     this._elementIdFactory = elementIdFactory;
     this._provider = provider;
 }
Beispiel #49
0
 public ContextSpecificationFactory(MSpecUnitTestProvider provider,
                                    IUnitTestElementManager manager,
                                    IPsi psiModuleManager,
                                    ICache cacheManager,
                                    ElementCache cache)
 {
     _manager          = manager;
     _psiModuleManager = psiModuleManager;
     _cacheManager     = cacheManager;
     _provider         = provider;
     _cache            = cache;
 }
 public ContextFactory(MSpecUnitTestProvider provider,
                       IUnitTestElementManager manager,
                       IPsi psiModuleManager,
                       ICache cacheManager,
                       ElementCache cache)
 {
   _manager = manager;
   _psiModuleManager = psiModuleManager;
   _cacheManager = cacheManager;
   _provider = provider;
   _cache = cache;
 }
 protected FieldElement(MSpecUnitTestProvider provider,
                        IPsi psiModuleManager,
                        ICache cacheManager,
                        Element parent,
                        ProjectModelElementEnvoy projectEnvoy,
                        IClrTypeName declaringTypeName,
                        string fieldName,
                        bool isIgnored)
     : base(provider, psiModuleManager, cacheManager, parent, projectEnvoy, declaringTypeName, isIgnored || parent.Explicit)
 {
     this._fieldName = fieldName;
 }
 public BehaviorElement(MSpecUnitTestProvider provider,
   // ReSharper disable SuggestBaseTypeForParameter
                        ContextElement context,
   // ReSharper restore SuggestBaseTypeForParameter
                        ProjectModelElementEnvoy projectEnvoy,
                        string declaringTypeName,
                        string fieldName,
                        bool isIgnored,
                        string fullyQualifiedTypeName)
   : base(provider, context, projectEnvoy, declaringTypeName, fieldName, isIgnored || context.Explicit)
 {
   FullyQualifiedTypeName = fullyQualifiedTypeName;
 }
 protected FieldElement(MSpecUnitTestProvider provider,
                        PsiModuleManager psiModuleManager,
                        CacheManager cacheManager, 
                        Element parent,
                        ProjectModelElementEnvoy projectEnvoy,
                        string declaringTypeName,
                        string fieldName,
                        bool isIgnored)
   : base(provider, psiModuleManager, cacheManager, parent, projectEnvoy, declaringTypeName, isIgnored || parent.Explicit)
 {
   _fieldName = fieldName;
   State = UnitTestElementState.Valid;
 }
Beispiel #54
0
 public BehaviorSpecificationElement(MSpecUnitTestProvider provider,
                                     PsiModuleManager psiModuleManager,
                                     CacheManager cacheManager,
                                     // ReSharper disable SuggestBaseTypeForParameter
                                     BehaviorElement behavior,
                                     // ReSharper restore SuggestBaseTypeForParameter
                                     ProjectModelElementEnvoy projectEnvoy,
                                     string declaringTypeName,
                                     string fieldName,
                                     bool isIgnored)
     : base(provider, psiModuleManager, cacheManager, behavior, projectEnvoy, declaringTypeName, fieldName, isIgnored || behavior.Explicit)
 {
 }
Beispiel #55
0
 public BehaviorSpecificationFactory(MSpecUnitTestProvider provider,
                                     IUnitTestElementManager manager,
                                     PsiModuleManager psiModuleManager,
                                     CacheManager cacheManager,
                                     IProject project,
                                     ProjectModelElementEnvoy projectEnvoy)
 {
     _manager          = manager;
     _psiModuleManager = psiModuleManager;
     _cacheManager     = cacheManager;
     _provider         = provider;
     _project          = project;
     _projectEnvoy     = projectEnvoy;
 }
 public ContextFactory(MSpecUnitTestProvider provider,
                       IUnitTestElementManager manager,
                       IUnitTestCategoryFactory categoryFactory,
                       IPsi psiModuleManager,
                       ICache cacheManager,
                       ElementCache cache)
 {
     this._manager          = manager;
     this._categoryFactory  = categoryFactory;
     this._psiModuleManager = psiModuleManager;
     this._cacheManager     = cacheManager;
     this._provider         = provider;
     this._cache            = cache;
 }
Beispiel #57
0
 public BehaviorElement(MSpecUnitTestProvider provider,
                        PsiModuleManager psiModuleManager,
                        CacheManager cacheManager,
                        // ReSharper disable SuggestBaseTypeForParameter
                        ContextElement context,
                        // ReSharper restore SuggestBaseTypeForParameter
                        ProjectModelElementEnvoy projectEnvoy,
                        string declaringTypeName,
                        string fieldName,
                        bool isIgnored,
                        string fullyQualifiedTypeName)
     : base(provider, psiModuleManager, cacheManager, context, projectEnvoy, declaringTypeName, fieldName, isIgnored || context.Explicit)
 {
     FullyQualifiedTypeName = fullyQualifiedTypeName;
 }
Beispiel #58
0
        public AssemblyExplorer(MSpecUnitTestProvider provider,
                                IMetadataAssembly assembly,
                                IProject project,
                                UnitTestElementConsumer consumer)
        {
            _provider = provider;
            _assembly = assembly;
            _project  = project;
            _consumer = consumer;

            var cache = new ContextCache();

            _contextFactory = new ContextFactory(_provider, _project, _assembly.Location, cache);
            _contextSpecificationFactory  = new ContextSpecificationFactory(_provider, _project, cache);
            _behaviorFactory              = new BehaviorFactory(_provider, _project, cache);
            _behaviorSpecificationFactory = new BehaviorSpecificationFactory(_provider, _project);
        }
        public static ContextElement GetOrCreateContextElement(MSpecUnitTestProvider provider,
#if RESHARPER_61
                                                               IUnitTestElementManager manager,
                                                               PsiModuleManager psiModuleManager,
                                                               CacheManager cacheManager,
#endif
                                                               IProject project,
                                                               ProjectModelElementEnvoy projectEnvoy,
                                                               string typeName,
                                                               string assemblyLocation,
                                                               string subject,
                                                               ICollection <string> tags,
                                                               bool isIgnored)
        {
#if RESHARPER_6
            var id = ContextElement.CreateId(subject, typeName);
#if RESHARPER_61
            var contextElement = manager.GetElementById(project, id) as ContextElement;
#else
            var contextElement = provider.UnitTestManager.GetElementById(project, id) as ContextElement;
#endif
            if (contextElement != null)
            {
                contextElement.State = UnitTestElementState.Valid;
                return(contextElement);
            }
#endif

            return(new ContextElement(provider,
#if RESHARPER_6
#if RESHARPER_61
                                      psiModuleManager,
                                      cacheManager,
#else
                                      provider.PsiModuleManager,
                                      provider.CacheManager,
#endif
#endif
                                      projectEnvoy,
                                      typeName,
                                      assemblyLocation,
                                      subject,
                                      tags,
                                      isIgnored));
        }
 public ContextSpecificationElement(MSpecUnitTestProvider provider,
                                    UnitTestElementId id,
                                    ContextElement context,
                                    IClrTypeName declaringTypeName,
                                    UnitTestingCachingService cachingService,
                                    IUnitTestElementManager elementManager,
                                    string fieldName,
                                    bool isIgnored)
     : base(provider,
            context,
            declaringTypeName,
            cachingService,
            elementManager,
            fieldName,
            isIgnored || context.Explicit)
 {
     this._id = id;
 }