public void CanConvertFrom()
        {
            ResourceManagerConverter cvt = new ResourceManagerConverter();

            Assert.IsTrue(cvt.CanConvertFrom(typeof(string)), "Conversion from a string instance must be supported.");
            Assert.IsFalse(cvt.CanConvertFrom(null));
        }
        public void ConvertFrom()
        {
            ResourceManagerConverter cvt = new ResourceManagerConverter();
            object actual = cvt.ConvertFrom("Oragon.Spring.TestResource.txt, Oragon.Spring.Core.Tests");

            Assert.IsNotNull(actual);
            Assert.AreEqual(typeof(ResourceManager), actual.GetType());
        }
        /// <summary>
        /// Registers standard and configured type converters.
        /// </summary>
        static TypeConverterRegistry()
        {
            lock (syncRoot)
            {
                converters[typeof(string[])] = new StringArrayConverter();
                converters[typeof(Type)]     = new RuntimeTypeConverter();
                //converters[typeof(Color)] = new RGBColorConverter();
                converters[typeof(Uri)]                 = new UriConverter();
                converters[typeof(FileInfo)]            = new FileInfoConverter();
                converters[typeof(Stream)]              = new StreamConverter();
                converters[typeof(NameValueCollection)] = new NameValueConverter();
                converters[typeof(ResourceManager)]     = new ResourceManagerConverter();
                converters[typeof(Regex)]               = new RegexConverter();
                converters[typeof(TimeSpan)]            = new TimeSpanConverter();
                converters[typeof(ICredentials)]        = new CredentialConverter();
                converters[typeof(NetworkCredential)]   = new CredentialConverter();
                //converters[typeof(RegistryKey)] = new RegistryKeyConverter();

                // register user-defined type converters
                ConfigurationUtils.GetSection(TypeConvertersSectionName);
            }
        }
        public void ConvertFromSingleComma()
        {
            ResourceManagerConverter cvt = new ResourceManagerConverter();

            Assert.Throws <ArgumentException>(() => cvt.ConvertFrom(","));
        }
        public void ConvertFromSingleString()
        {
            ResourceManagerConverter cvt = new ResourceManagerConverter();

            Assert.Throws <ArgumentException>(() => cvt.ConvertFrom("Oragon.Spring.TestResource.txt"));
        }
        public void ConvertFromNullReference()
        {
            ResourceManagerConverter cvt = new ResourceManagerConverter();

            Assert.Throws <NotSupportedException>(() => cvt.ConvertFrom(null));
        }
        public void ConvertFromBad_App_GlobalResources()
        {
            ResourceManagerConverter cvt = new ResourceManagerConverter();

            Assert.Throws <ArgumentException>(() => cvt.ConvertFrom("Oragon.Spring.TestResource.txt, " + ResourceManagerConverter.APP_GLOBALRESOURCES_ASSEMBLYNAME));
        }
        public void ConvertFromBadAssembly()
        {
            ResourceManagerConverter cvt = new ResourceManagerConverter();

            Assert.Throws <ArgumentException>(() => cvt.ConvertFrom("Oragon.Spring.TestResource.txt, FooAssembly"));
        }
        public void ConvertFromOnlyAssemblyNAme()
        {
            ResourceManagerConverter cvt = new ResourceManagerConverter();

            Assert.Throws <ArgumentException>(() => cvt.ConvertFrom(",Oragon.Spring.Core.Tests"));
        }