Class MockAnalyzer

  • All Implemented Interfaces:
    Closeable, AutoCloseable

    public final class MockAnalyzer
    extends Analyzer
    Analyzer for testing

    This analyzer is a replacement for Whitespace/Simple/KeywordAnalyzers for unit tests. If you are testing a custom component such as a queryparser or analyzer-wrapper that consumes analysis streams, it's a great idea to test it with this analyzer instead. MockAnalyzer has the following behavior:

    • By default, the assertions in MockTokenizer are turned on for extra checks that the consumer is consuming properly. These checks can be disabled with setEnableChecks(boolean).
    • Payload data is randomly injected into the stream for more thorough testing of payloads.
    See Also:
    MockTokenizer
    • Method Detail

      • setPositionIncrementGap

        public void setPositionIncrementGap​(int positionIncrementGap)
      • setOffsetGap

        public void setOffsetGap​(int offsetGap)
        Set a new offset gap which will then be added to the offset when several fields with the same name are indexed
        Parameters:
        offsetGap - The offset gap that should be used.
      • getOffsetGap

        public int getOffsetGap​(String fieldName)
        Get the offset gap between tokens in fields if several fields with the same name were added.
        Overrides:
        getOffsetGap in class Analyzer
        Parameters:
        fieldName - Currently not used, the same offset gap is returned for each field.
      • setEnableChecks

        public void setEnableChecks​(boolean enableChecks)
        Toggle consumer workflow checking: if your test consumes tokenstreams normally you should leave this enabled.
      • setMaxTokenLength

        public void setMaxTokenLength​(int length)
        Toggle maxTokenLength for MockTokenizer