예제 #1
0
 public void testCreateJsArray() {
   if (!TypedArrays.isSupported()) {
     // TODO: some way of showing test as skipped in this case?
     return;
   }
   JsArrayNumber src = getJsoArray();
   Uint32Array array = JsUtils.createUint32Array(src);
   validateArrayContents(array, 0);
 }
  /** Test {@link JsUtils#escapeQuote(CharSequence)} */
  @Test
  public void testEscapeQuote() {
    String expectedJavascript = "l\\'oiseau";
    String generatedJavascript = JsUtils.escapeQuote("l'oiseau");

    log.info(expectedJavascript);
    log.info(generatedJavascript);

    assertEquals(generatedJavascript, expectedJavascript);
  }
  /** Test {@link JsUtils#implode(org.odlabs.wiquery.core.events.EventLabel...)} */
  @Test
  public void testImplode() {
    String expectedJavascript = "'click dblclick'";
    String generatedJavascript = JsUtils.implode(MouseEvent.CLICK, MouseEvent.DBLCLICK);

    log.info(expectedJavascript);
    log.info(generatedJavascript);

    assertEquals(generatedJavascript, expectedJavascript);
  }
  /** Test {@link JsUtils#escapeDoubleQuote(CharSequence)} */
  @Test
  public void testEscapeDoubleQuote() {
    String expectedJavascript = "\\\"Hello\\\"";
    String generatedJavascript = JsUtils.escapeDoubleQuote("\"Hello\"");

    log.info(expectedJavascript);
    log.info(generatedJavascript);

    assertEquals(generatedJavascript, expectedJavascript);
  }
  /** Test {@link JsUtils#array(CharSequence...)} */
  @Test
  public void testArray() {
    String expectedJavascript = "['a', 'b', 'c']";
    String generatedJavascript = JsUtils.array("'a'", "'b'", "'c'").toString();

    log.info(expectedJavascript);
    log.info(generatedJavascript);

    assertEquals(generatedJavascript, expectedJavascript);
  }
  /** Test {@link JsUtils#string(int)} */
  @Test
  public void testString() {
    String expectedJavascript = "5";
    String generatedJavascript = JsUtils.string(5);

    log.info(expectedJavascript);
    log.info(generatedJavascript);

    assertEquals(generatedJavascript, expectedJavascript);
  }
  /**
   * Test {@link JsUtils#doubleQuotes(CharSequence)} and {@link JsUtils#doubleQuotes(CharSequence,
   * boolean)}
   */
  @Test
  public void testDoubleQuotes() {
    // Without escaped quote
    String expectedJavascript = "\"a\"";
    String generatedJavascript = JsUtils.doubleQuotes("a");

    log.info(expectedJavascript);
    log.info(generatedJavascript);

    assertEquals(generatedJavascript, expectedJavascript);

    // With escaped quote
    expectedJavascript = "\"\\\"Hello\\\"\"";
    generatedJavascript = JsUtils.doubleQuotes("\"Hello\"", true);

    log.info(expectedJavascript);
    log.info(generatedJavascript);

    assertEquals(generatedJavascript, expectedJavascript);
  }
  /** Test {@link JsUtils#quotes(CharSequence)} and {@link JsUtils#quotes(CharSequence, boolean)} */
  @Test
  public void testQuotes() {
    // Without escaped quote
    String expectedJavascript = "'a'";
    String generatedJavascript = JsUtils.quotes("a");

    log.info(expectedJavascript);
    log.info(generatedJavascript);

    assertEquals(generatedJavascript, expectedJavascript);

    // With escaped quote
    expectedJavascript = "'l\\'oiseau'";
    generatedJavascript = JsUtils.quotes("l'oiseau", true);

    log.info(expectedJavascript);
    log.info(generatedJavascript);

    assertEquals(generatedJavascript, expectedJavascript);
  }
  /** Test {@link JsUtils#json(java.io.Serializable)} */
  @Test
  public void testJson() {
    try {
      String expectedJavascript =
          "{\"anId\":\"aLiteralValue\",\"aValue\":42,\"bools\":[true,false,true]}";
      String generatedJavascript =
          JsUtils.json(new JSonObject("aLiteralValue", 42, true, false, true));

      log.info(expectedJavascript);
      log.info(generatedJavascript);

      assertEquals(generatedJavascript, expectedJavascript);

    } catch (IOException e) {
      Assert.fail(e.getMessage());
    }
  }
예제 #10
0
 /** Initialize from a JSO rather than a Java array */
 protected void setFromJsArray(Uint32Array array, int offset) {
   JsUtils.set(array, getJsoArray(), offset);
 }