use of org.eclipse.wst.jsdt.web.core.javascript.JsTranslationAdapter in project webtools.sourceediting by eclipse.
the class TestHtmlTranslation method testFunctionReturnInEventHandler.
public void testFunctionReturnInEventHandler() {
// get model
String fileName = getName() + ".html";
IStructuredModel structuredModel = getSharedModel(fileName, "<div onClick=\"return myMethod();\">");
assertNotNull("missing test model", structuredModel);
// do translation
JsTranslationAdapterFactory.setupAdapterFactory(structuredModel);
JsTranslationAdapter translationAdapter = (JsTranslationAdapter) ((IDOMModel) structuredModel).getDocument().getAdapterFor(IJsTranslation.class);
IJsTranslation translation = translationAdapter.getJsTranslation(false);
String translated = translation.getJsText();
assertEquals("translated content differs", " (function(){return myMethod();;})();", translated);
StringBuffer problems = new StringBuffer();
translation.reconcileCompilationUnit();
List problemList = translation.getProblems();
for (int i = 0; i < problemList.size(); i++) {
problems.append(((IProblem) problemList.get(i)).getMessage());
problems.append('\n');
}
assertEquals("problems were found", "", problems.toString());
// release model
structuredModel.releaseFromRead();
}
use of org.eclipse.wst.jsdt.web.core.javascript.JsTranslationAdapter in project webtools.sourceediting by eclipse.
the class TestHtmlTranslation method testJustClientTagInJS.
public void testJustClientTagInJS() {
// get model
String fileName = getName() + ".html";
IStructuredModel structuredModel = getSharedModel(fileName, "<script><custom:tag /></script>");
assertNotNull("missing test model", structuredModel);
// do translation
JsTranslationAdapterFactory.setupAdapterFactory(structuredModel);
JsTranslationAdapter translationAdapter = (JsTranslationAdapter) ((IDOMModel) structuredModel).getDocument().getAdapterFor(IJsTranslation.class);
IJsTranslation translation = translationAdapter.getJsTranslation(false);
String translated = translation.getJsText();
assertTrue("translation too short", translated.length() > 0);
assertTrue("server-side script block included\n" + translated, translated.indexOf("<") < 0);
assertTrue("server-side script block included\n" + translated, translated.indexOf("/>") < 0);
assertTrue("content not included\n" + translated, translated.length() != 0);
// release model
structuredModel.releaseFromRead();
}
use of org.eclipse.wst.jsdt.web.core.javascript.JsTranslationAdapter in project webtools.sourceediting by eclipse.
the class TestHtmlTranslation method testJustServer2SideInJS.
public void testJustServer2SideInJS() {
// get model
String fileName = getName() + ".html";
IStructuredModel structuredModel = getSharedModel(fileName, "<script><? !!!!!!!!!!!!!! ?></script>");
assertNotNull("missing test model", structuredModel);
// do translation
JsTranslationAdapterFactory.setupAdapterFactory(structuredModel);
JsTranslationAdapter translationAdapter = (JsTranslationAdapter) ((IDOMModel) structuredModel).getDocument().getAdapterFor(IJsTranslation.class);
IJsTranslation translation = translationAdapter.getJsTranslation(false);
String translated = translation.getJsText();
assertTrue("translation empty", translated.length() > 5);
assertTrue("server-side script block included\n" + translated, translated.indexOf("<?") < 0);
assertTrue("server-side script block included\n" + translated, translated.indexOf("?>") < 0);
assertTrue("content not included\n" + translated, translated.length() != 0);
// release model
structuredModel.releaseFromRead();
}
use of org.eclipse.wst.jsdt.web.core.javascript.JsTranslationAdapter in project webtools.sourceediting by eclipse.
the class TestHtmlTranslation method testHTMLFormat.
public void testHTMLFormat() {
// get model
IStructuredModel structuredModel = getModel("test1.html");
assertNotNull("missing test model", structuredModel);
// compare
String formatted = structuredModel.getStructuredDocument().get();
String expectedFileName = "test1.html";
String expected = getFile(expectedFileName);
JsTranslationAdapterFactory.setupAdapterFactory(structuredModel);
JsTranslationAdapter translationAdapter = (JsTranslationAdapter) ((IDOMModel) structuredModel).getDocument().getAdapterFor(IJsTranslation.class);
IJsTranslation translation = translationAdapter.getJsTranslation(false);
assertTrue("expected function definition is missing", translation.getJsText().indexOf("function blah()") >= 0);
// release model
structuredModel.releaseFromRead();
}
use of org.eclipse.wst.jsdt.web.core.javascript.JsTranslationAdapter in project webtools.sourceediting by eclipse.
the class TestHtmlTranslation method testJustServer1SideInJS.
public void testJustServer1SideInJS() {
// get model
String fileName = getName() + ".html";
IStructuredModel structuredModel = getSharedModel(fileName, "<script><%= %></script>");
assertNotNull("missing test model", structuredModel);
// do translation
JsTranslationAdapterFactory.setupAdapterFactory(structuredModel);
JsTranslationAdapter translationAdapter = (JsTranslationAdapter) ((IDOMModel) structuredModel).getDocument().getAdapterFor(IJsTranslation.class);
IJsTranslation translation = translationAdapter.getJsTranslation(false);
String translated = translation.getJsText();
assertTrue("translation empty", translated.length() > 5);
assertTrue("server-side script block included\n" + translated, translated.indexOf("<%") < 0);
assertTrue("server-side script block included\n" + translated, translated.indexOf("%>") < 0);
assertTrue("content not included\n" + translated, translated.length() != 0);
// release model
structuredModel.releaseFromRead();
}
Aggregations