public void testGetGafs() {
    System.out.println("\n**** testGetGafs ****");

    CycAccess cycAccess = null;
    try {
      try {
        if (connectionMode == LOCAL_CYC_CONNECTION) {
          cycAccess = new CycAccess(testHostName, testBasePort);
        } else if (connectionMode == SOAP_CYC_CONNECTION) {
          cycAccess = new CycAccess(endpointURL, testHostName, testBasePort);
        } else {
          fail("Invalid connection mode " + connectionMode);
        }
      } catch (Throwable e) {
        fail(e.toString());
      }

      try {
        CycListParser parser = new CycListParser(cycAccess);
        CycList nart = parser.read("(#$RemotelyExploitableFn #$VulnerableToDTMLMethodExecution)");
        System.out.println("Nart: " + nart);

        CycList gafs = cycAccess.getGafs(CycNart.coerceToCycNart(nart), isa);
        assertTrue(gafs.size() > 0);
      } catch (Throwable e) {
        fail(e.toString());
      }
    } finally {
      if (cycAccess != null) {
        cycAccess.close();
        cycAccess = null;
      }
    }
    System.out.println("**** testGetGafs OK ****");
  }