/* * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed with * this work for additional information regarding copyright ownership. * The ASF licenses this file to You under the Apache License, Version 2.0 * (the "License"); you may not use this file except in compliance with * the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.apache.nutch.keymatch; import java.util.HashMap; import org.apache.hadoop.conf.Configuration; import org.apache.nutch.searcher.Query; import org.apache.nutch.util.NutchConfiguration; import junit.framework.TestCase; public class TestViewCountSorter extends TestCase { SimpleKeyMatcher km; Configuration conf; /* (non-Javadoc) * @see junit.framework.TestCase#setUp() */ protected void setUp() throws Exception { super.setUp(); conf=NutchConfiguration.create(); km=new SimpleKeyMatcher(conf); km.clear(); KeyMatch m=new KeyMatch("kw1","u1","t1",KeyMatch.TYPE_KEYWORD); km.addKeyMatch(m); m=new KeyMatch("kw1","u2","t2",KeyMatch.TYPE_KEYWORD); km.addKeyMatch(m); m=new KeyMatch("kw1","u3","t3",KeyMatch.TYPE_KEYWORD); km.addKeyMatch(m); ViewCountSorter vcs=new ViewCountSorter(); vcs.setNext(new CountFilter()); km.setFilter(vcs); } /* * Test method for 'org.apache.nutch.keymatch.ViewCountSorter.filter(List, Map)' */ public void testFilter() { KeyMatch m1,m2,m3; KeyMatch[] matches=getKeyMatchesForString("kw1"); m1=matches[0]; assertNotNull(m1); matches=getKeyMatchesForString("kw1"); m2=matches[0]; assertNotNull(m2); matches=getKeyMatchesForString("kw1"); m3=matches[0]; assertNotNull(m3); assertFalse(m1.equals(m2)); assertFalse(m2.equals(m3)); assertFalse(m1.equals(m3)); } private KeyMatch[] getKeyMatchesForString(String string) { Query q; HashMap context=new HashMap(); context.put(CountFilter.KEY_COUNT,"1"); try { q = Query.parse(string, conf); return km.getMatches(q,context); } catch (Exception e){ } return new KeyMatch[0]; } }