Search in sources :

Example 1 with BlazeTestEventsHandler

use of com.google.idea.blaze.base.run.smrunner.BlazeTestEventsHandler in project intellij by bazelbuild.

the class BlazeFilterExistingRunConfigurationProducer method getTestFilter.

private static Optional<String> getTestFilter(ConfigurationContext context) {
    RunConfiguration base = context.getOriginalConfiguration(null);
    if (!(base instanceof BlazeCommandRunConfiguration)) {
        return Optional.empty();
    }
    TargetExpression target = ((BlazeCommandRunConfiguration) base).getTarget();
    if (target == null) {
        return Optional.empty();
    }
    List<Location<?>> selectedElements = SmRunnerUtils.getSelectedSmRunnerTreeElements(context);
    if (selectedElements.isEmpty()) {
        return null;
    }
    Optional<BlazeTestEventsHandler> testEventsHandler = BlazeTestEventsHandler.getHandlerForTarget(context.getProject(), target);
    return testEventsHandler.map(handler -> handler.getTestFilter(context.getProject(), selectedElements));
}
Also used : RunConfiguration(com.intellij.execution.configurations.RunConfiguration) BlazeCommandRunConfiguration(com.google.idea.blaze.base.run.BlazeCommandRunConfiguration) TargetExpression(com.google.idea.blaze.base.model.primitives.TargetExpression) BlazeTestEventsHandler(com.google.idea.blaze.base.run.smrunner.BlazeTestEventsHandler) BlazeCommandRunConfiguration(com.google.idea.blaze.base.run.BlazeCommandRunConfiguration) Location(com.intellij.execution.Location)

Aggregations

TargetExpression (com.google.idea.blaze.base.model.primitives.TargetExpression)1 BlazeCommandRunConfiguration (com.google.idea.blaze.base.run.BlazeCommandRunConfiguration)1 BlazeTestEventsHandler (com.google.idea.blaze.base.run.smrunner.BlazeTestEventsHandler)1 Location (com.intellij.execution.Location)1 RunConfiguration (com.intellij.execution.configurations.RunConfiguration)1