Package org.angularjs.codeInsight

Source Code of org.angularjs.codeInsight.DependencyInjectionTest

package org.angularjs.codeInsight;

import com.intellij.lang.javascript.psi.JSProperty;
import com.intellij.lang.javascript.psi.resolve.JSResolveUtil;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiReference;
import com.intellij.testFramework.fixtures.LightPlatformCodeInsightFixtureTestCase;
import org.angularjs.AngularTestUtil;

/**
* @author Dennis.Ushakov
*/
public class DependencyInjectionTest extends LightPlatformCodeInsightFixtureTestCase {
  @Override
  protected String getTestDataPath() {
    return AngularTestUtil.getBaseTestDataPath(getClass()) + "di";
  }

  @Override
  protected boolean isWriteActionRequired() {
    return getTestName(true).contains("Completion");
  }

  public void testInjectedServiceCompletion() {
    myFixture.testCompletionTyping("di.js", "\n", "di.after.js", "angular.js");
  }

  public void testInjectedServiceResolve() {
    myFixture.configureByFiles("di.resolve.js", "angular.js");
    int offsetBySignature = AngularTestUtil.findOffsetBySignature("myService.fo<caret>o();", myFixture.getFile());
    PsiReference ref = myFixture.getFile().findReferenceAt(offsetBySignature);
    assertNotNull(ref);
    PsiElement resolve = ref.resolve();
    assertNotNull(resolve);
    assertInstanceOf(JSResolveUtil.unwrapProxy(resolve), JSProperty.class);
  }
}
TOP

Related Classes of org.angularjs.codeInsight.DependencyInjectionTest

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.