public void full_repository_info_to_xml_is_valid_according_to_schema()
        {
            string s =
                @"<?xml version=""1.0"" encoding=""utf-8""?>
<RepositoryInfo xmlns=""http://csemver.org/schemas/2015"">
    <Debug IgnoreDirtyWorkingFolder=""true"" />
    <Branches>
        <Branch Name=""develop"" CIVersionMode=""LastReleaseBased"" />
        <Branch Name=""exploratory"" CIVersionMode=""ZeroTimed"" VersionName=""Preview"" />
        <Branch Name=""other"" CIVersionMode=""None"" />
    </Branches>
	<StartingVersionForCSemVer>v4.2.0</StartingVersionForCSemVer>
    <OnlyPatch>true</OnlyPatch>
    <SingleMajor>3</SingleMajor>
    <IgnoreModifiedFiles>
        <Add>SharedKey.snk</Add>
    </IgnoreModifiedFiles>
	<RemoteName>not-the-origin</RemoteName>
</RepositoryInfo>";
            XDocument d = XDocument.Parse(s);

            ValidateAgainstSchema(d);

            RepositoryInfoOptions opt = RepositoryInfoOptions.Read(d.Root);

            XDocument d2 = new XDocument(opt.ToXml());

            ValidateAgainstSchema(d2);
            RepositoryInfoOptions opt2 = RepositoryInfoOptions.Read(d2.Root);

            Assert.That(opt.IgnoreDirtyWorkingFolder, Is.EqualTo(opt2.IgnoreDirtyWorkingFolder));
            Assert.That(opt.RemoteName, Is.EqualTo(opt2.RemoteName));
            Assert.That(opt.StartingVersionForCSemVer, Is.EqualTo(opt2.StartingVersionForCSemVer));
            Assert.That(opt.Branches.Count, Is.EqualTo(opt2.Branches.Count));
            Assert.That(opt.IgnoreModifiedFiles.Count, Is.EqualTo(opt2.IgnoreModifiedFiles.Count));
            Assert.That(opt.OnlyPatch, Is.True);
            Assert.That(opt.SingleMajor, Is.EqualTo(3));
        }