Package com.google.jstestdriver.idea.assertFramework.jasmine

Source Code of com.google.jstestdriver.idea.assertFramework.jasmine.JasmineAdapterSupportInspection

package com.google.jstestdriver.idea.assertFramework.jasmine;

import com.google.jstestdriver.idea.assertFramework.jasmine.jsSrc.JasmineAdapterSrcMarker;
import com.google.jstestdriver.idea.assertFramework.support.AbstractAddAdapterSupportInspection;
import com.google.jstestdriver.idea.util.VfsUtils;
import com.intellij.javascript.testFramework.jasmine.JasmineFileStructure;
import com.intellij.javascript.testFramework.jasmine.JasmineFileStructureBuilder;
import com.intellij.lang.javascript.psi.JSCallExpression;
import com.intellij.lang.javascript.psi.JSFile;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.util.NotNullProducer;
import org.jetbrains.annotations.NotNull;

import java.util.List;

public class JasmineAdapterSupportInspection extends AbstractAddAdapterSupportInspection {

  public JasmineAdapterSupportInspection() {
    super(
      "Jasmine",
      new NotNullProducer<List<VirtualFile>>() {
        @NotNull
        @Override
        public List<VirtualFile> produce() {
          String[] relativePaths = new String[]{"jasmine-1.1.0.js", "JasmineAdapter-1.1.2.js"};
          return VfsUtils.findVirtualFilesByResourceNames(JasmineAdapterSrcMarker.class, relativePaths);
        }
      },
      "https://github.com/ibolmo/jasmine-jstd-adapter"
    );
  }

  @Override
  protected boolean isSuitableElement(@NotNull JSFile jsFile, @NotNull JSCallExpression callExpression) {
    JasmineFileStructure structure = JasmineFileStructureBuilder.getInstance().fetchCachedTestFileStructure(jsFile);
    return structure.containsCallExpression(callExpression);
  }

}
TOP

Related Classes of com.google.jstestdriver.idea.assertFramework.jasmine.JasmineAdapterSupportInspection

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.