Skip to content

Commit 6946398

Browse files
1139: Code refactoring
1 parent 4de0864 commit 6946398

File tree

1 file changed

+22
-0
lines changed

1 file changed

+22
-0
lines changed

src/com/magento/idea/magento2plugin/actions/generation/dialog/NewObserverDialog.java

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,10 @@
77

88
import com.intellij.openapi.project.Project;
99
import com.intellij.openapi.ui.ComboBox;
10+
import com.intellij.openapi.vfs.VirtualFile;
1011
import com.intellij.psi.PsiDirectory;
1112
import com.intellij.psi.PsiFile;
13+
import com.intellij.psi.search.GlobalSearchScope;
1214
import com.intellij.ui.DocumentAdapter;
1315
import com.intellij.util.indexing.FileBasedIndex;
1416
import com.magento.idea.magento2plugin.actions.context.php.NewObserverAction;
@@ -24,6 +26,7 @@
2426
import com.magento.idea.magento2plugin.actions.generation.generator.ModuleObserverGenerator;
2527
import com.magento.idea.magento2plugin.actions.generation.generator.ObserverEventsXmlGenerator;
2628
import com.magento.idea.magento2plugin.actions.generation.generator.util.DirectoryGenerator;
29+
import com.magento.idea.magento2plugin.lang.roots.MagentoTestSourceFilter;
2730
import com.magento.idea.magento2plugin.magento.files.ModuleObserverFile;
2831
import com.magento.idea.magento2plugin.magento.packages.Areas;
2932
import com.magento.idea.magento2plugin.magento.packages.Package;
@@ -36,6 +39,7 @@
3639
import java.awt.event.WindowEvent;
3740
import java.util.ArrayList;
3841
import java.util.Collection;
42+
import java.util.List;
3943
import java.util.Locale;
4044
import javax.swing.JButton;
4145
import javax.swing.JComboBox;
@@ -328,6 +332,24 @@ private void createUIComponents() {
328332
final Collection<String> events = FileBasedIndex.getInstance().getAllKeys(
329333
EventNameIndex.KEY, project
330334
);
335+
// Filter all events declared only for tests.
336+
events.removeIf(event -> {
337+
final Collection<VirtualFile> files = FileBasedIndex.getInstance()
338+
.getContainingFiles(
339+
EventNameIndex.KEY,
340+
event,
341+
GlobalSearchScope.allScope(project)
342+
);
343+
final List<VirtualFile> realObservers = new ArrayList<>();
344+
345+
for (final VirtualFile file : files) {
346+
if (!MagentoTestSourceFilter.isTestSources(file, project)) {
347+
realObservers.add(file);
348+
}
349+
}
350+
351+
return realObservers.isEmpty();
352+
});
331353
this.eventName = new FilteredComboBox(new ArrayList<>(events));
332354
}
333355
}

0 commit comments

Comments
 (0)