Beispiel #1
0
        public override void WriteField(JsonWriter writer, object value, JsonSerializer serializer)
        {
            StringFieldType stringField = (StringFieldType)value;

            if (stringField == null)
            {
                return;
            }

            writer.WritePropertyName("type");
            writer.WriteValue(stringField.GetType());

            if (stringField.TermVector != TermVector.No)
            {
                writer.WritePropertyName("term_vector");
                writer.WriteValue(stringField.TermVector.ToString().ToLower());
            }

            writer.WritePropertyName("analyzer");
            writer.WriteValue(stringField.Analyzer);

            writer.WritePropertyName("index_analyzer");
            writer.WriteValue(stringField.IndexAnalyzer);

            writer.WritePropertyName("search_analyzer");
            writer.WriteValue(stringField.SearchAnalyzer);
        }
Beispiel #2
0
        public void TestStringFieldType()
        {
            StringFieldType stringFieldType = new StringFieldType();
            var             s = "Hello World!";

            Assert.AreEqual("Hello World!   ", stringFieldType.Format(s, 15));

            stringFieldType.AlignRight = true;
            Assert.AreEqual("   Hello World!", stringFieldType.Format(s, 15));

            Assert.AreEqual("Hello", stringFieldType.Format(s, 5));

            stringFieldType.ReplacementList.Add("Hello", "Hi");
            stringFieldType.ReplacementList.Add("World", "Everybody");

            Assert.AreEqual("Hi Everybody!", stringFieldType.Format(s, null));

            var iban = "FR1420041010050500013M02606";

            stringFieldType.AlignRight    = false;
            stringFieldType.StartPosition = 4;

            Assert.AreEqual("20041010050500013M02606", stringFieldType.Format(iban, null));

            stringFieldType.EndPosition = 9;
            Assert.AreEqual("20041", stringFieldType.Format(iban, null));
            Assert.AreEqual("20041  ", stringFieldType.Format(iban, 7));

            stringFieldType.StartPosition = 9;
            stringFieldType.EndPosition   = 14;
            Assert.AreEqual("01005", stringFieldType.Format(iban, null));

            stringFieldType.StartPosition = 14;
            stringFieldType.EndPosition   = 25;
            Assert.AreEqual("0500013M026", stringFieldType.Format(iban, null));

            stringFieldType.StartPosition = 25;
            stringFieldType.EndPosition   = 27;
            Assert.AreEqual("06", stringFieldType.Format(iban, 2));
        }