public void ConvertsWriteConcernCorrectly() { DefaultListableObjectFactory factory = new DefaultListableObjectFactory(); factory.RegisterCustomConverter(typeof(WriteConcern), new WriteConcernTypeConverter()); RootObjectDefinition definition = new RootObjectDefinition(typeof(MongoFactoryObject)); definition.PropertyValues.Add("Url", "mongodb://localhost"); definition.PropertyValues.Add("WriteConcern", "Acknowledged"); factory.RegisterObjectDefinition("factory", definition); MongoFactoryObject obj = factory.GetObject<MongoFactoryObject>("&factory"); Assert.That(ReflectionUtils.GetInstanceFieldValue(obj, "_writeConcern"), Is.EqualTo(WriteConcern.Acknowledged)); }
public void CustomEditor() { DefaultListableObjectFactory lof = new DefaultListableObjectFactory(); NumberFormatInfo nfi = new CultureInfo("en-GB", false).NumberFormat; lof.RegisterCustomConverter(typeof(Single), new CustomNumberConverter(typeof(Single), nfi, true)); MutablePropertyValues pvs = new MutablePropertyValues(); pvs.Add("myFloat", "1.1"); lof.RegisterObjectDefinition("testObject", new RootObjectDefinition(typeof(TestObject), pvs)); TestObject testObject = (TestObject)lof.GetObject("testObject"); Assert.IsTrue(testObject.MyFloat == 1.1f); }