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

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `AutomatonTestUtil.RandomAcceptedStrings` Lets you retrieve random strings accepted by an Automaton.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `AutomatonTestUtil()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `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.