コード例 #1
0
            public int GetFileVersion(string fileName)
            {
                var    versionReader = new WritingSystemLdmlVersionGetter();
                string filePath      = Path.Combine(MigratedLdmlFolder, fileName);

                return(versionReader.GetFileVersion(filePath));
            }
コード例 #2
0
 public void WritingSystemLdmlVerisonGetterGetFileVerison_FileIsVersion3_Returns3()
 {
     using (_environment = new TestEnvironment())
     {
         _environment.WriteContentToWritingSystemLdmlFile(LdmlContentForTests.Version3("en", "", "", ""));
         var versionGetter = new WritingSystemLdmlVersionGetter();
         Assert.That(versionGetter.GetFileVersion(_environment.PathToWritingSystemLdmlFile), Is.EqualTo(3));
     }
 }
コード例 #3
0
 public void WritingSystemLdmlVersionGetterGetFileVersion_FileIsVersion1_Returns1()
 {
     using (_environment = new TestEnvironment())
     {
         _environment.WriteContentToWritingSystemLdmlFile(LdmlContentForTests.Version1English());
         var versionGetter = new WritingSystemLdmlVersionGetter();
         Assert.AreEqual(1, versionGetter.GetFileVersion(_environment.PathToWritingSystemLdmlFile));
     }
 }
コード例 #4
0
		public void WritingSystemLdmlVerisonGetterGetFileVerison_FileIsVersion3_Returns3()
		{
			using (_environment = new TestEnvironment())
			{
				_environment.WriteContentToWritingSystemLdmlFile(LdmlContentForTests.Version3("en", "", "", ""));
				var versionGetter = new WritingSystemLdmlVersionGetter();
				Assert.That(versionGetter.GetFileVersion(_environment.PathToWritingSystemLdmlFile), Is.EqualTo(3));
			}
		}
コード例 #5
0
 public void WritingSystemLdmlFiles_Version_IsLatestVersion()
 {
     using (var e = new TestEnvironment())
     {
         var ldmlVersionGetter = new WritingSystemLdmlVersionGetter();
         foreach (var filePath in Directory.GetFiles(e.WritingSystemLdmlFolderPath))
         {
             Assert.AreEqual(WritingSystemDefinition.LatestWritingSystemDefinitionVersion, ldmlVersionGetter.GetFileVersion(filePath), String.Format("The file {0} did not have the correct version.", filePath));
         }
     }
 }
コード例 #6
0
        private int GetLdmlFileVersion()
        {
            var    ldmlFiles     = Directory.GetFiles(Path.GetDirectoryName(_liftPathName), "*.ldml", SearchOption.AllDirectories);
            string firstLdmlFile = ldmlFiles.Length > 0 ? ldmlFiles[0] : "";

            if (File.Exists(firstLdmlFile))
            {
                var ldmlVersionGetter = new WritingSystemLdmlVersionGetter();
                return(ldmlVersionGetter.GetFileVersion(firstLdmlFile));
            }
            return(0);
        }
コード例 #7
0
		public void Write_WritePrivateUseWsFromFieldWorksLdmlThenNormalLdml_ContainsVersion2()
		{
			using (TempFile badFlexLdml = new TempFile(),
							version1Ldml = new TempFile())
			{
				var namespaceManager = new XmlNamespaceManager(new NameTable());
				namespaceManager.AddNamespace("palaso", "urn://palaso.org/ldmlExtensions/v1");
				using (var writer = new StreamWriter(badFlexLdml.Path, false, Encoding.UTF8))
				{
					writer.Write(LdmlContentForTests.Version0("x-en", "", "", "x-private"));
				}
				var wsV0 = new WritingSystemDefinitionV1();
				var adaptor = new LdmlAdaptorV1();
				adaptor.Read(badFlexLdml.Path, wsV0);
				adaptor.Write(badFlexLdml.Path, wsV0, new MemoryStream(File.ReadAllBytes(badFlexLdml.Path)));
				var wsV1 = new WritingSystemDefinitionV1();
				adaptor.Write(version1Ldml.Path, wsV1, null);
				var versionReader = new WritingSystemLdmlVersionGetter();
				Assert.That(versionReader.GetFileVersion(version1Ldml.Path), Is.EqualTo(2));
			}
		}
コード例 #8
0
 public void Write_WritePrivateUseWsFromFieldWorksLdmlThenNormalLdml_ContainsVersion2()
 {
     using (TempFile badFlexLdml = new TempFile(),
            version1Ldml = new TempFile())
     {
         var namespaceManager = new XmlNamespaceManager(new NameTable());
         namespaceManager.AddNamespace("palaso", "urn://palaso.org/ldmlExtensions/v1");
         using (var writer = new StreamWriter(badFlexLdml.Path, false, Encoding.UTF8))
         {
             writer.Write(LdmlContentForTests.Version0("x-en", "", "", "x-private"));
         }
         var wsV0    = new WritingSystemDefinitionV1();
         var adaptor = new LdmlAdaptorV1();
         adaptor.Read(badFlexLdml.Path, wsV0);
         adaptor.Write(badFlexLdml.Path, wsV0, new MemoryStream(File.ReadAllBytes(badFlexLdml.Path)));
         var wsV1 = new WritingSystemDefinitionV1();
         adaptor.Write(version1Ldml.Path, wsV1, null);
         var versionReader = new WritingSystemLdmlVersionGetter();
         Assert.That(versionReader.GetFileVersion(version1Ldml.Path), Is.EqualTo(2));
     }
 }
コード例 #9
0
		public void WriteRoundTrip_LdmlIsValidLanguageStartingWithX_LdmlIsUnchanged()
		{
			using (var file = new TempFile())
			{
				WriteCurrentVersionLdml("xh", "", "", "", file);
				var adaptor = new LdmlDataMapper(new TestWritingSystemFactory());
				var ws = new WritingSystemDefinition();
				adaptor.Read(file.Path, ws);
				adaptor.Write(file.Path, ws, new MemoryStream(File.ReadAllBytes(file.Path), true));
				AssertThatLdmlMatches("xh", "", "", "", file);
				var versionReader = new WritingSystemLdmlVersionGetter();
				Assert.That(LdmlDataMapper.CurrentLdmlVersion, Is.EqualTo(versionReader.GetFileVersion(file.Path)));
			}
		}
			public int GetFileVersion(string fileName)
			{
				var versionReader = new WritingSystemLdmlVersionGetter();
				string filePath = Path.Combine(FolderContainingLdml.Path, fileName);
				return versionReader.GetFileVersion(filePath);
			}
		public void Migrate_LdmlIsVersion0_IsLatestVersion()
		{
			using (var environment = new TestEnvironment())
			{
				environment.WriteLdmlFile("test.ldml", LdmlContentForTests.Version0("en", "", "", ""));
				var migrator = new LdmlInFolderWritingSystemRepositoryMigrator(environment.LdmlPath, environment.OnMigrateCallback);
				migrator.Migrate();
				var versionGetter = new WritingSystemLdmlVersionGetter();
				Assert.AreEqual(LdmlDataMapper.CurrentLdmlVersion, versionGetter.GetFileVersion(environment.MappedFilePath("test.ldml")));
			}
		}
コード例 #12
0
			public int GetMigratedFileVersion(string fileName)
			{
				var versionReader = new WritingSystemLdmlVersionGetter();
				string filePath = Path.Combine(MigratedLdmlFolder, fileName);
				return versionReader.GetFileVersion(filePath);
			}