//---------------------------------------------------------------------

        private void AssertAreEqual(PersistentDriverDataset expected,
                                    PersistentDriverDataset actual)
        {
            Assert.IsNotNull(actual);
            AssertAreEqual(expected.Drivers, actual.Drivers);
            AssertAreEqual(expected.Formats, actual.Formats);
        }
        public void OneDriver()
        {
            PersistentDriverDataset dataset = new PersistentDriverDataset();

            string fooExt = ".foo";

            PersistentDriverDataset.DriverInfo fooDriver;
            fooDriver = new PersistentDriverDataset.DriverInfo(
                "Foo Driver",
                "Com.Acme.Foo.Driver,Com.Acme.Foo"
                );
            fooDriver.AddFormat(fooExt, FileAccess.ReadWrite);
            dataset.Drivers.Add(fooDriver);

            PersistentDriverDataset.FormatDrivers fooFormat;
            fooFormat = new PersistentDriverDataset.FormatDrivers(fooExt);
            fooFormat.Drivers.Add(fooDriver.Name);
            dataset.Formats.Add(fooFormat);

            string path = Data.MakeOutputPath("OneDriver.xml");

            dataset.Save(path);

            PersistentDriverDataset dataset2;

            dataset2 = PersistentDriverDataset.Load(path);

            AssertAreEqual(dataset, dataset2);
        }