Exemplo n.º 1
0
        public void TestFileWithDifferentDelimiter()
        {
            KeyValuePair <List <List <string> >, string> fileInput = generateFileInput(AtLeast(100), " , ", true, true);
            Stream                inputReader = new MemoryStream(fileInput.Value.getBytes(Encoding.UTF8));
            FileDictionary        dictionary  = new FileDictionary(inputReader, " , ");
            List <List <string> > entries     = fileInput.Key;
            IInputIterator        inputIter   = dictionary.GetEntryIterator();

            assertTrue(inputIter.HasPayloads);
            BytesRef term;
            int      count = 0;

            while ((term = inputIter.Next()) != null)
            {
                assertTrue(entries.size() > count);
                List <string> entry = entries[count];
                assertTrue(entry.size() >= 2); // at least term and weight
                assertEquals(entry[0], term.Utf8ToString());
                assertEquals(long.Parse(entry[1], CultureInfo.InvariantCulture), inputIter.Weight);
                if (entry.size() == 3)
                {
                    assertEquals(entry[2], inputIter.Payload.Utf8ToString());
                }
                else
                {
                    assertEquals(inputIter.Payload.Length, 0);
                }
                count++;
            }
            assertEquals(count, entries.size());
        }
Exemplo n.º 2
0
        public void TestFileWithTerm()
        {
            KeyValuePair <List <List <string> >, string> fileInput = generateFileInput(AtLeast(100), FileDictionary.DEFAULT_FIELD_DELIMITER, false, false);
            Stream                inputReader = new MemoryStream(fileInput.Value.getBytes(Encoding.UTF8));
            FileDictionary        dictionary  = new FileDictionary(inputReader);
            List <List <string> > entries     = fileInput.Key;
            IInputIterator        inputIter   = dictionary.GetEntryIterator();

            assertFalse(inputIter.HasPayloads);
            BytesRef term;
            int      count = 0;

            while ((term = inputIter.Next()) != null)
            {
                assertTrue(entries.size() > count);
                List <string> entry = entries[count];
                assertTrue(entry.size() >= 1); // at least a term
                assertEquals(entry[0], term.Utf8ToString());
                assertEquals(1, inputIter.Weight);
                assertNull(inputIter.Payload);
                count++;
            }
            assertEquals(count, entries.size());
        }