public virtual void TestCrossOriginFilterAfterRestart()
        {
            // Setup the configuration settings of the server
            IDictionary <string, string> conf = new Dictionary <string, string>();

            conf[CrossOriginFilter.AllowedOrigins] = "example.com";
            conf[CrossOriginFilter.AllowedHeaders] = "X-Requested-With,Accept";
            conf[CrossOriginFilter.AllowedMethods] = "GET,POST";
            FilterConfig filterConfig = new TestCrossOriginFilter.FilterConfigTest(conf);
            // Object under test
            CrossOriginFilter filter = new CrossOriginFilter();

            filter.Init(filterConfig);
            //verify filter values
            Assert.True("Allowed headers do not match", string.CompareOrdinal
                            (filter.GetAllowedHeadersHeader(), "X-Requested-With,Accept") == 0);
            Assert.True("Allowed methods do not match", string.CompareOrdinal
                            (filter.GetAllowedMethodsHeader(), "GET,POST") == 0);
            Assert.True(filter.AreOriginsAllowed("example.com"));
            //destroy filter values and clear conf
            filter.Destroy();
            conf.Clear();
            // Setup the configuration settings of the server
            conf[CrossOriginFilter.AllowedOrigins] = "newexample.com";
            conf[CrossOriginFilter.AllowedHeaders] = "Content-Type,Origin";
            conf[CrossOriginFilter.AllowedMethods] = "GET,HEAD";
            filterConfig = new TestCrossOriginFilter.FilterConfigTest(conf);
            //initialize filter
            filter.Init(filterConfig);
            //verify filter values
            Assert.True("Allowed headers do not match", string.CompareOrdinal
                            (filter.GetAllowedHeadersHeader(), "Content-Type,Origin") == 0);
            Assert.True("Allowed methods do not match", string.CompareOrdinal
                            (filter.GetAllowedMethodsHeader(), "GET,HEAD") == 0);
            Assert.True(filter.AreOriginsAllowed("newexample.com"));
            //destroy filter values
            filter.Destroy();
        }