Examples of SafeIdentifierMaker


Examples of com.google.caja.util.SafeIdentifierMaker

import junit.framework.TestCase;

@SuppressWarnings("static-method")
public class SafeIdentifierMakerTest extends TestCase {
  public final void testSeries() {
    Iterator<String> maker = new SafeIdentifierMaker("abc".toCharArray());
    assertEquals("a", maker.next());
    assertEquals("b", maker.next());
    assertEquals("c", maker.next());
    assertEquals("aa", maker.next());
    assertEquals("ab", maker.next());
    assertEquals("ac", maker.next());
    assertEquals("ba", maker.next());
    assertEquals("bb", maker.next());
    assertEquals("bc", maker.next());
    assertEquals("ca", maker.next());
    assertEquals("cb", maker.next());
    assertEquals("cc", maker.next());
    assertEquals("aaa", maker.next());
    assertEquals("aab", maker.next());
    assertEquals("aac", maker.next());
    assertEquals("aba", maker.next());
  }
View Full Code Here

Examples of com.google.caja.util.SafeIdentifierMaker

    assertEquals("aba", maker.next());
  }

  public final void testNoKeywords() {
    assertTrue(Keyword.isKeyword("in"));
    Iterator<String> maker = new SafeIdentifierMaker("in".toCharArray());
    assertEquals("i", maker.next());
    assertEquals("n", maker.next());
    assertEquals("ii", maker.next());
    // "in" not emitted
    assertEquals("ni", maker.next());
    assertEquals("nn", maker.next());
    assertEquals("iii", maker.next());
    assertEquals("iin", maker.next());
    assertEquals("ini", maker.next());
    assertEquals("inn", maker.next());
  }
View Full Code Here

Examples of com.google.caja.util.SafeIdentifierMaker

    assertEquals("ini", maker.next());
    assertEquals("inn", maker.next());
  }

  public final void testNoEval() {
    Iterator<String> maker = new SafeIdentifierMaker("aelv".toCharArray());
    assertEquals("a", maker.next());
    assertEquals("e", maker.next());
    assertEquals("l", maker.next());
    assertEquals("v", maker.next());
    assertEquals("aa", maker.next());
    assertEquals("ae", maker.next());
    assertEquals("al", maker.next());
    assertEquals("av", maker.next());
    // Skip the rest of the 2s
    for (int i = 12; --i >= 0;) {  // 12 = |(e,l,v)x(a,e,l,v)|
      String s = maker.next();
      assertEquals(s, 2, s.length());
    }
    // Skip the rest of the 3s
    for (int i = 64; --i >= 0;) {
      String s = maker.next();
      assertEquals(s, 3, s.length());
    }
    // Skip the 4s that start with a
    for (int i = 64; --i >= 0;) {
      String s = maker.next();
      assertEquals(s, 4, s.length());
      assertTrue(s, s.startsWith("a"));
    }
    // Skip the 4s that start with e[~v]
    for (int i = 48; --i >= 0;) {
      String s = maker.next();
      assertEquals(s, 4, s.length());
      assertTrue(s, s.startsWith("e") && !s.startsWith("ev"));
    }
    assertEquals("evaa", maker.next());
    assertEquals("evae", maker.next());
    assertEquals("evav", maker.next());
    // Skip the 4s that start with eve, evl, and evv
    for (int i = 12; --i >= 0;) {
      String s = maker.next();
      assertEquals(s, 4, s.length());
      assertTrue(
          s, s.startsWith("eve") || s.startsWith("evl") || s.startsWith("evv"));
    }
    // Skip the 4s that start with l and v
    for (int i = 128; --i >= 0;) {
      String s = maker.next();
      assertEquals(s, 4, s.length());
      assertTrue(s, s.startsWith("l") || s.startsWith("v"));
    }
    assertEquals("aaaaa", maker.next());
  }
View Full Code Here

Examples of com.google.caja.util.SafeIdentifierMaker

      if (name == null) { name = u.origName; }
      alreadyUsed.add(name != null ? name : u.origName);
    }

    Iterator<String> namer = Iterators.filter(
        new SafeIdentifierMaker(), alreadyUsed);
    for (AncestorChain<Declaration> d : scope.decls) {
      String dName = d.node.getIdentifierName();
      if (scope.mapping.containsKey(dName)) { continue; // Skip duplicates
      String newName = scope.isDynamicUsePossible() ? dName : namer.next();
      scope.mapping.put(dName, newName);
View Full Code Here

Examples of com.google.caja.util.SafeIdentifierMaker

  }

  private void assertRenamed(String golden, String input, String... globals)
      throws Exception {
    NameContext<String, ?> nc = new NameContext<String, Object>(
        new SafeIdentifierMaker());
    Set<String> freeSynthetics = Sets.newLinkedHashSet();
    for (String global : globals) {
      if (global.endsWith("__")) {
        freeSynthetics.add(global);
      } else {
View Full Code Here

Examples of com.google.caja.util.SafeIdentifierMaker

      if (name == null) { name = u.origName; }
      alreadyUsed.add(name != null ? name : u.origName);
    }

    Iterator<String> namer = Iterators.filter(
        new SafeIdentifierMaker(), alreadyUsed);
    for (AncestorChain<Declaration> d : scope.decls) {
      String dName = d.node.getIdentifierName();
      if (scope.mapping.containsKey(dName)) { continue; // Skip duplicates
      String newName = scope.isDynamicUsePossible() ? dName : namer.next();
      scope.mapping.put(dName, newName);
View Full Code Here

Examples of com.google.caja.util.SafeIdentifierMaker

import java.util.Iterator;
import junit.framework.TestCase;

public class SafeIdentifierMakerTest extends TestCase {
  public final void testSeries() {
    Iterator<String> maker = new SafeIdentifierMaker("abc".toCharArray());
    assertEquals("a", maker.next());
    assertEquals("b", maker.next());
    assertEquals("c", maker.next());
    assertEquals("aa", maker.next());
    assertEquals("ab", maker.next());
    assertEquals("ac", maker.next());
    assertEquals("ba", maker.next());
    assertEquals("bb", maker.next());
    assertEquals("bc", maker.next());
    assertEquals("ca", maker.next());
    assertEquals("cb", maker.next());
    assertEquals("cc", maker.next());
    assertEquals("aaa", maker.next());
    assertEquals("aab", maker.next());
    assertEquals("aac", maker.next());
    assertEquals("aba", maker.next());
  }
View Full Code Here

Examples of com.google.caja.util.SafeIdentifierMaker

    assertEquals("aba", maker.next());
  }

  public final void testNoKeywords() {
    assertTrue(Keyword.isKeyword("in"));
    Iterator<String> maker = new SafeIdentifierMaker("in".toCharArray());
    assertEquals("i", maker.next());
    assertEquals("n", maker.next());
    assertEquals("ii", maker.next());
    // "in" not emitted
    assertEquals("ni", maker.next());
    assertEquals("nn", maker.next());
    assertEquals("iii", maker.next());
    assertEquals("iin", maker.next());
    assertEquals("ini", maker.next());
    assertEquals("inn", maker.next());
  }
View Full Code Here

Examples of com.google.caja.util.SafeIdentifierMaker

    assertEquals("ini", maker.next());
    assertEquals("inn", maker.next());
  }

  public final void testNoEval() {
    Iterator<String> maker = new SafeIdentifierMaker("aelv".toCharArray());
    assertEquals("a", maker.next());
    assertEquals("e", maker.next());
    assertEquals("l", maker.next());
    assertEquals("v", maker.next());
    assertEquals("aa", maker.next());
    assertEquals("ae", maker.next());
    assertEquals("al", maker.next());
    assertEquals("av", maker.next());
    // Skip the rest of the 2s
    for (int i = 12; --i >= 0;) {  // 12 = |(e,l,v)x(a,e,l,v)|
      String s = maker.next();
      assertEquals(s, 2, s.length());
    }
    // Skip the rest of the 3s
    for (int i = 64; --i >= 0;) {
      String s = maker.next();
      assertEquals(s, 3, s.length());
    }
    // Skip the 4s that start with a
    for (int i = 64; --i >= 0;) {
      String s = maker.next();
      assertEquals(s, 4, s.length());
      assertTrue(s, s.startsWith("a"));
    }
    // Skip the 4s that start with e[~v]
    for (int i = 48; --i >= 0;) {
      String s = maker.next();
      assertEquals(s, 4, s.length());
      assertTrue(s, s.startsWith("e") && !s.startsWith("ev"));
    }
    assertEquals("evaa", maker.next());
    assertEquals("evae", maker.next());
    assertEquals("evav", maker.next());
    // Skip the 4s that start with eve, evl, and evv
    for (int i = 12; --i >= 0;) {
      String s = maker.next();
      assertEquals(s, 4, s.length());
      assertTrue(
          s, s.startsWith("eve") || s.startsWith("evl") || s.startsWith("evv"));
    }
    // Skip the 4s that start with l and v
    for (int i = 128; --i >= 0;) {
      String s = maker.next();
      assertEquals(s, 4, s.length());
      assertTrue(s, s.startsWith("l") || s.startsWith("v"));
    }
    assertEquals("aaaaa", maker.next());
  }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.