private void OnProjectItemChanged(object sender, TestFileChangedEventArgs e)
        {
            _logger.Log(MessageLevel.Diagnostic, "PowerShellTestContainerDiscoverer:OnProjectItemChanged");
            if (e != null)
            {
                // Don't do anything for files we are sure can't be test files
                if (!IsPs1File(e.File)) return;

                _logger.Log(MessageLevel.Diagnostic, "PowerShellTestContainerDiscoverer:OnProjectItemChanged - IsPs1File");

                switch (e.ChangedReason)
                {
                    case TestFileChangedReason.Added:
                        _logger.Log(MessageLevel.Diagnostic,
                            "PowerShellTestContainerDiscoverer:OnProjectItemChanged - Added");
                        _testFilesUpdateWatcher.AddWatch(e.File);
                        AddTestContainerIfTestFile(e.File);

                        break;
                    case TestFileChangedReason.Removed:
                        _logger.Log(MessageLevel.Diagnostic,
                            "PowerShellTestContainerDiscoverer:OnProjectItemChanged - Removed");
                        _testFilesUpdateWatcher.RemoveWatch(e.File);
                        RemoveTestContainer(e.File);

                        break;
                    case TestFileChangedReason.Changed:
                        _logger.Log(MessageLevel.Diagnostic,
                            "PowerShellTestContainerDiscoverer:OnProjectItemChanged - Changed");
                        AddTestContainerIfTestFile(e.File);
                        break;
                }

                OnTestContainersChanged();
            }
        }
        private void OnProjectItemChanged(object sender, TestFileChangedEventArgs e)
        {
            if (e != null)
            {
                // Don't do anything for files we are sure can't be test files
                if (!IsPs1File(e.File)) return;

                switch (e.ChangedReason)
                {
                    case TestFileChangedReason.Added:
                        testFilesUpdateWatcher.AddWatch(e.File);
                        AddTestContainerIfTestFile(e.File);

                        break;
                    case TestFileChangedReason.Removed:
                        testFilesUpdateWatcher.RemoveWatch(e.File);
                        RemoveTestContainer(e.File);

                        break;
                    case TestFileChangedReason.Changed:
                        AddTestContainerIfTestFile(e.File);
                        break;
                }

                OnTestContainersChanged();
            }
        }