/** Test of add method, of class TernarySearchTree. */ @Test public void testAddAndContains() { System.out.println("add"); TernarySearchTree instance = new TernarySearchTree(); ArrayList<String> strings = randomStrings(); for (String s : strings) { instance.add(s); } for (String s : strings) { assertTrue(instance.contains(s)); } }
/** Test of search method, of class TernarySearchTree. */ @Test public void testSearch() { System.out.println("search"); Random gen = new Random(); TernarySearchTree instance = new TernarySearchTree(); ArrayList<String> strings = randomStrings(); for (String s : strings) { instance.add(s); } for (String s : strings) { int length = s.length(); if (length == 4) { continue; } int substringTo = gen.nextInt(length - 1); if (substringTo == 0) { continue; } String searchFor = s.substring(0, substringTo); String suffix = instance.search(searchFor); assertTrue(strings.contains(searchFor + suffix)); } }
@Override public void run() { try { Document document = textPane.getDocument(); String content = document.getText(0, document.getLength()); Scanner scanner = new Scanner(content); scanner.useDelimiter(Pattern.compile("[\\s\\W]")); while (scanner.hasNext()) { String key = scanner.next(); String key2 = key.toLowerCase(); if (key2.length() < 3) { continue; } tree.add(key2); } } catch (BadLocationException ex) { Logger.getLogger(WordCountCache.class.getName()).log(Level.SEVERE, null, ex); } }
@Override public void reset() { tree.reset(); }