### Question:
SahiScript { public static boolean lineStartsWithActionKeyword(String line) { return REG_EXP_FOR_ACTIONS.matcher(line).matches(); } SahiScript(String filePath, ArrayList<String> parents, String scriptName); String jsString(); String modifiedScript(); String getDebugInfo(int lineNumber); String getLineDebugInfo(int lineNumber); static boolean lineStartsWithActionKeyword(String line); static String modifySingleLine(String line); static String modifyFunctionNames(String unmodified); static String stripSahiFromFunctionNames(String unmodified); static ArrayList<String> getActionKeyWords(); static ArrayList<String> getKeyWords(); String modifyCondition(String s, int lineNumber); String getScriptName(); String getOriginal(); String getOriginalInHTML(); String getFilePath(); String getBrowserJS(); void addIncludeInfo(SahiScript included); String getBrowserJSWithLineNumbers();  }### Answer:
@Test public void testLineStartsWithActionKeyword() { assertTrue(TestScript.lineStartsWithActionKeyword("_alert()")); }
@Test public void xtestEfficiency() { long start = System.currentTimeMillis(); TestScript.lineStartsWithActionKeyword("_alert()"); for (int i = 0; i < 10000; i++) { TestScript.lineStartsWithActionKeyword("_alert()"); } long t1 = System.currentTimeMillis() - start; start = System.currentTimeMillis(); for (int i = 0; i < 10000; i++) { TestScript.lineStartsWithActionKeyword("_alert()"); } long t2 = System.currentTimeMillis() - start; assertTrue( t1 < 100); assertTrue( t2 < 100); }