From be85ca650ac04e39e64fadf7aed97cf1e156f21a Mon Sep 17 00:00:00 2001 From: Uwe Schindler Date: Thu, 30 Jul 2009 16:45:43 +0000 Subject: [PATCH] Add extra test for new TokenStream API backwards layer git-svn-id: https://svn.apache.org/repos/asf/lucene/java/trunk@799359 13f79535-47bb-0310-9956-ffa450edef68 --- .../lucene/analysis/TestTokenStreamBWComp.java | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/test/org/apache/lucene/analysis/TestTokenStreamBWComp.java b/src/test/org/apache/lucene/analysis/TestTokenStreamBWComp.java index 7781226cb8f..f4ac2ec6690 100644 --- a/src/test/org/apache/lucene/analysis/TestTokenStreamBWComp.java +++ b/src/test/org/apache/lucene/analysis/TestTokenStreamBWComp.java @@ -267,6 +267,23 @@ public class TestTokenStreamBWComp extends LuceneTestCase { stream.addAttribute(PositionIncrementAttribute.class) instanceof PositionIncrementAttributeImpl); assertTrue("TypeAttribute is implemented by TypeAttributeImpl", stream.addAttribute(TypeAttribute.class) instanceof TypeAttributeImpl); + + // try to call old API, this should fail + try { + stream.reset(); + Token reusableToken = new Token(); + while ((reusableToken = stream.next(reusableToken)) != null); + fail("If only the new API is allowed, this should fail with an UOE"); + } catch (UnsupportedOperationException uoe) { + assertTrue("This TokenStream only supports the new Attributes API.".equals(uoe.getMessage())); + } + try { + stream.reset(); + while (stream.next() != null); + fail("If only the new API is allowed, this should fail with an UOE"); + } catch (UnsupportedOperationException uoe) { + assertTrue("This TokenStream only supports the new Attributes API.".equals(uoe.getMessage())); + } // Test if the wrapper API (onlyUseNewAPI==false) uses TokenWrapper // as attribute instance.