public void TestFacetHandlerLoad()
        {
            var reader = IndexReader.Open(_ramDir, true);
            
            var list = new List<FacetHandler>();
            var h1 = new NoopFacetHandler("A");
            list.Add(h1);

            var s2 = new HashSet<string>();
            s2.Add("A");
            s2.Add("C");
            s2.Add("D");
            var h2 = new NoopFacetHandler("B", s2);
            list.Add(h2);

            var s3 = new HashSet<string>();
            s3.Add("A");
            s2.Add("D"); // BUG: Should this be s3?
            var h3 = new NoopFacetHandler("C", s3);
            list.Add(h3);

            var s4 = new HashSet<string>();
            s4.Add("A");
            var h4 = new NoopFacetHandler("D", s4);
            list.Add(h4);

            var s5 = new HashSet<string>();
            s5.Add("E");
            var h5 = new NoopFacetHandler("E", s5);
            list.Add(h5);


            using (var boboReader = BoboIndexReader.GetInstance(reader, list))
            {

                using (var browser = new BoboBrowser(boboReader))
                {
                    var s6 = new HashSet<string>();
                    s6.Add("A");
                    s6.Add("B");
                    s6.Add("C");
                    s6.Add("D");
                    browser.SetFacetHandler(new NoopFacetHandler("runtime", s6));

                    var expected = new HashSet<string>();
                    expected.Add("A");
                    expected.Add("B");
                    expected.Add("C");
                    expected.Add("D");
                    expected.Add("E");
                    expected.Add("runtime");

                    var facetsLoaded = browser.GetFacetNames();

                    foreach (var name in facetsLoaded)
                    {
                        if (expected.Contains(name))
                        {
                            expected.Remove(name);
                        }
                        else
                        {
                            Assert.Fail(name + " is not in expected set.");
                        }
                    }

                    if (expected.Count > 0)
                    {
                        Assert.Fail("some facets not loaded: " + string.Join(", ", expected.ToArray()));
                    }
                }
            }
        }