## org.apache.lucene.util.automaton
Class AutomatonTestUtil

    java.lang.Object
      org.apache.lucene.util.automaton.AutomatonTestUtil

    public class AutomatonTestUtil

extends Object

Utilities for testing automata.

Capable of generating random regular expressions, and automata, and also provides a number of very basic unoptimized implementations (*slow) for testing.

Nested Class Summary
`static class` `AutomatonTestUtil.RandomAcceptedStrings` Lets you retrieve random strings accepted by an Automaton.

Constructor Summary
`AutomatonTestUtil()`

Method Summary
`static void` `assertNoDetachedStates(Automaton a)` Checks that an automaton has no detached states that are unreachable from the initial state.
`static void` `determinizeSimple(Automaton a)` Simple, original brics implementation of determinize()
`static void` `determinizeSimple(Automaton a, Set<State> initialset)` Simple, original brics implementation of determinize() Determinizes the given automaton using the given set of initial states.
`static boolean` `isFiniteSlow(Automaton a)` Returns true if the language of this automaton is finite.
`static void` `minimizeSimple(Automaton a)` Simple, original brics implementation of Brzozowski minimize()
`static Automaton` `randomAutomaton(Random random)` return a random NFA/DFA for testing
`static String` `randomRegexp(Random r)` Returns random string, including full unicode range.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### AutomatonTestUtil

    public AutomatonTestUtil()

Method Detail

### randomRegexp

    public static String randomRegexp(Random r)

  Returns random string, including full unicode range.

### randomAutomaton

    public static Automaton randomAutomaton(Random random)

  return a random NFA/DFA for testing

### minimizeSimple

    public static void minimizeSimple(Automaton a)

  Simple, original brics implementation of Brzozowski minimize()

### determinizeSimple

    public static void determinizeSimple(Automaton a)

  Simple, original brics implementation of determinize()

### determinizeSimple

    public static void determinizeSimple(Automaton a,
                                         Set<State> initialset)

  Simple, original brics implementation of determinize() Determinizes the given automaton using the given set of initial states.

### isFiniteSlow

    public static boolean isFiniteSlow(Automaton a)

  Returns true if the language of this automaton is finite.

  WARNING: this method is slow, it will blow up if the automaton is large. this is only used to test the correctness of our faster implementation.

### assertNoDetachedStates

    public static void assertNoDetachedStates(Automaton a)

  Checks that an automaton has no detached states that are unreachable from the initial state.

Copyright © 2000-2013 Apache Software Foundation. All Rights Reserved.