Exemplo n.º 1
0
  /** APSTUD-4117 */
  @Test
  public void testFunctionDocumentationWithoutReturnTag() {
    TestBuildContext myContext = new TestBuildContext("indexing/functionDocsWithoutReturn.js");

    try {
      IParseRootNode ast = myContext.getAST();
      JSFileIndexingParticipant indexParticipant = new JSFileIndexingParticipant();
      Index index = getIndex();

      indexParticipant.processParseResults(myContext, index, ast, new NullProgressMonitor());
      JSIndexQueryHelper queryHelper = new JSIndexQueryHelper(index);

      Collection<PropertyElement> types =
          queryHelper.getGlobals("functionDocsWithoutReturn.js", "abc");
      assertNotNull(types);
      assertTrue("Expected at least a single property for 'abc'", !types.isEmpty());

      PropertyElement property = types.iterator().next();
      assertTrue("Expected a FunctionElement", property instanceof FunctionElement);

      FunctionElement function = (FunctionElement) property;
      List<String> returnTypes = function.getReturnTypeNames();
      assertNotNull(returnTypes);
      assertEquals("Expected a single return type for 'abc'", 1, returnTypes.size());
      assertEquals("Expected 'Number' return type", "Number", returnTypes.get(0));
    } catch (CoreException e) {
      fail(e.getMessage());
    }
  }