Exemple #1
0
  /** Test of apply method, of class JRubyEngine. */
  @Test
  public void testApply() throws BSFException {
    System.out.println("apply");
    BSFManager manager = new BSFManager();
    JRubyEngine instance = new JRubyEngine();
    instance.initialize(manager, "jruby", null);
    String file = "";
    int line = 0;
    int col = 0;
    Object funcBody = null;
    Vector paramNames = new Vector();
    Vector args = new Vector();
    Object expResult = null;
    Object result = instance.apply(file, line, col, funcBody, paramNames, args);
    assertEquals(expResult, result);

    expResult = new Long(144);
    result = instance.apply("<script>", 0, 0, "x=144", null, null);
    assertEquals(expResult, result);
    expResult = new Double(12.0);
    result = instance.apply("<script>", 0, 0, "Math.sqrt x", null, null);
    assertEquals(expResult, result);

    paramNames.add("message");
    args.add("red small beans and often used in a form of paste.");
    result =
        instance.apply("<script>", 0, 0, "ret=\"Azuki beans are #{message}\"", paramNames, args);
    expResult = "Azuki beans are red small beans and often used in a form of paste.";
    assertEquals(expResult, result);
    paramNames.clear();
    args.clear();
    paramNames.add("correction");
    args.add("usually");
    result =
        instance.apply("<script>", 0, 0, "ret = ret.gsub(/often/, correction)", paramNames, args);
    expResult = "Azuki beans are red small beans and usually used in a form of paste.";
    assertEquals(expResult, result);
  }