package jetbrains.mps.execution.impl.configurations.util;
/*Generated by MPS */
import org.jetbrains.mps.openapi.module.ModelAccess;
import java.util.List;
import jetbrains.mps.baseLanguage.unitTest.execution.client.ITestNodeWrapper;
import org.jetbrains.mps.openapi.model.SModel;
import org.jetbrains.mps.openapi.model.SNodeReference;
import jetbrains.mps.internal.collections.runtime.ListSequence;
import java.util.ArrayList;
import jetbrains.mps.internal.collections.runtime.Sequence;
import org.jetbrains.mps.openapi.model.SNode;
import jetbrains.mps.lang.smodel.generator.smodelAdapter.SModelOperations;
import jetbrains.mps.smodel.adapter.structure.MetaAdapterFactory;
import jetbrains.mps.internal.collections.runtime.IWhereFilter;
import jetbrains.mps.baseLanguage.unitTest.execution.client.TestNodeWrapperFactory;
public final class JUnitWrapHelper {
private final ModelAccess myAccess;
public JUnitWrapHelper(ModelAccess access) {
myAccess = access;
}
public List<ITestNodeWrapper> wrapTests(final SModel model, final Iterable<SNodeReference> nodes) {
final List<ITestNodeWrapper> result = ListSequence.fromList(new ArrayList<ITestNodeWrapper>());
myAccess.runReadAction(new Runnable() {
public void run() {
for (final SNodeReference nodeRef : Sequence.fromIterable(nodes)) {
SNode mainNode = ListSequence.fromList(SModelOperations.roots(model, MetaAdapterFactory.getInterfaceConcept(0xceab519525ea4f22L, 0x9b92103b95ca8c0cL, 0x110396eaaa4L, "jetbrains.mps.lang.core.structure.INamedConcept"))).findFirst(new IWhereFilter<SNode>() {
public boolean accept(SNode it) {
return eq_4klmab_a0a0a0a0a0a0a0a0a0a0a1a4(it.getReference(), nodeRef);
}
});
assert mainNode != null;
ListSequence.fromList(result).addElement(TestNodeWrapperFactory.tryToWrap(mainNode));
}
}
});
return result;
}
private static boolean eq_4klmab_a0a0a0a0a0a0a0a0a0a0a1a4(Object a, Object b) {
return (a != null ? a.equals(b) : a == b);
}
}