[ https://issues.apache.org/jira/browse/SOLR-1670?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12793684#action_12793684 ]
Yonik Seeley commented on SOLR-1670: ------------------------------------ Duplicated tokens aside (that should have been tested another way), I prefer to test the intended semantics rather than the exact behavior (which often ends up testing the exact implementation and ends up being too fragile... valid changes to the implementation break the tests). The description of the synonym filter never specifies the order of overlapping tokens, thus the tests should accept either. But as a practical matter, I don't really care about the restrictive token ordering since it's localized to a single method that can be changed as needed later if the tests break. > synonymfilter/map repeat bug > ---------------------------- > > Key: SOLR-1670 > URL: https://issues.apache.org/jira/browse/SOLR-1670 > Project: Solr > Issue Type: Bug > Components: Schema and Analysis > Affects Versions: 1.4 > Reporter: Robert Muir > Assignee: Yonik Seeley > Attachments: SOLR-1670.patch, SOLR-1670_test.patch > > > as part of converting tests for SOLR-1657, I ran into a problem with > synonymfilter > the test for 'repeats' has a flaw, it uses this assertTokEqual construct > which does not really validate that two lists of token are equal, it just > stops at the shorted one. > {code} > // repeats > map.add(strings("a b"), tokens("ab"), orig, merge); > map.add(strings("a b"), tokens("ab"), orig, merge); > assertTokEqual(getTokList(map,"a b",false), tokens("ab")); > /* in reality the result from getTokList is ab ab ab!!!!! */ > {code} > when converted to assertTokenStreamContents this problem surfaced. attached > is an additional assertion to the existing testcase. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.