From 47dfb2ffdb3006b8acba46d120c8b33059c69d03 Mon Sep 17 00:00:00 2001 From: RiabushenkoA Date: Thu, 6 Feb 2025 17:35:47 +0200 Subject: [PATCH 1/2] File Checking in estimate XLIFF translation action --- Apps.Widn/Actions/QualityActions.cs | 5 +++++ Apps.Widn/Apps.Widn.csproj | 2 +- Tests.Widn/TranslateTests.cs | 2 +- 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/Apps.Widn/Actions/QualityActions.cs b/Apps.Widn/Actions/QualityActions.cs index 94ef60e..c9e80f7 100644 --- a/Apps.Widn/Actions/QualityActions.cs +++ b/Apps.Widn/Actions/QualityActions.cs @@ -157,6 +157,11 @@ private List ExtractSegmentsFromXliff(Stream inputStream) { var xliffDocument = XDocument.Load(reader); + if (xliffDocument.Root == null || xliffDocument.Root.Name.LocalName.ToLower() != "xliff") + { + throw new PluginMisconfigurationException("Invalid file format. The provided file does not appear to be a valid XLIFF file. Please check the input file"); + } + XNamespace ns = xliffDocument.Root.GetDefaultNamespace(); var transUnits = xliffDocument.Descendants(ns + "trans-unit"); diff --git a/Apps.Widn/Apps.Widn.csproj b/Apps.Widn/Apps.Widn.csproj index 135729e..d64eb3a 100644 --- a/Apps.Widn/Apps.Widn.csproj +++ b/Apps.Widn/Apps.Widn.csproj @@ -6,7 +6,7 @@ enable Widn Accurate translations, preserving meaning and nuance across +20 language pairs and various domains. - 1.0.14 + 1.0.15 Apps.Widn diff --git a/Tests.Widn/TranslateTests.cs b/Tests.Widn/TranslateTests.cs index 397dc32..e9a2404 100644 --- a/Tests.Widn/TranslateTests.cs +++ b/Tests.Widn/TranslateTests.cs @@ -38,7 +38,7 @@ public async Task EvaluateQuality_ReturnsValues() }; var input2 = new QualityEvaluateRequest { - ReferenceText = "Hi" + ReferenceText = "Hello" }; var result = await action.EvaluateQuality(input1, input2); Assert.IsNotNull(result); From 2fd97556687901f12ebadecfee013a83c4eb8f69 Mon Sep 17 00:00:00 2001 From: RiabushenkoA Date: Thu, 6 Feb 2025 17:40:57 +0200 Subject: [PATCH 2/2] File Checking in estimate XLIFF translation action --- Apps.Widn/Actions/QualityActions.cs | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/Apps.Widn/Actions/QualityActions.cs b/Apps.Widn/Actions/QualityActions.cs index c9e80f7..49444db 100644 --- a/Apps.Widn/Actions/QualityActions.cs +++ b/Apps.Widn/Actions/QualityActions.cs @@ -155,11 +155,14 @@ private List ExtractSegmentsFromXliff(Stream inputStream) using (var reader = new StreamReader(inputStream, Encoding.UTF8, detectEncodingFromByteOrderMarks: true, leaveOpen: true)) { - var xliffDocument = XDocument.Load(reader); - - if (xliffDocument.Root == null || xliffDocument.Root.Name.LocalName.ToLower() != "xliff") + XDocument xliffDocument; + try + { + xliffDocument = XDocument.Load(reader); + } + catch (Exception ex) { - throw new PluginMisconfigurationException("Invalid file format. The provided file does not appear to be a valid XLIFF file. Please check the input file"); + throw new PluginMisconfigurationException("Failed to proceed the input file. Please ensure that the file is a valid XLIFF file."); } XNamespace ns = xliffDocument.Root.GetDefaultNamespace();