public void TestValidListOfObjectLiterals() { var resolvers = new ObjectLiteral[] { CreateObject("kind", "SourceResolver"), CreateObject("kind", "SourceResolver") }; // lazy because in case there is a _bug_ in the converter, we don't want this auxiliary conversion // to fail first, before the actual unit test (inside the for loop) var myConvertedResolversArrayLazy = Lazy.Create(() => resolvers.Select(r => ConfigurationConverter.Convert <IResolverSettings>(m_context, r)).ToArray()); foreach (var resolversList in GetDifferentListRepresenations(resolvers)) { IConfiguration conf = ConfigurationConverter.ConvertObjectLiteralToConfiguration( m_context, CreateObject("resolvers", resolversList)); XAssert.IsNotNull(conf); AssertAlmostEqualToDefaultConfigurationObject(conf, "Resolvers"); var confResolversArray = conf.Resolvers.ToArray(); XAssert.IsTrue(MyEqual(myConvertedResolversArrayLazy.Value, confResolversArray)); } }