Skip to content

Commit 400abaf

Browse files
committed
Fix warnings
1 parent 36f1dbf commit 400abaf

5 files changed

Lines changed: 26 additions & 22 deletions

File tree

src/ResXManager.Model/ResourceTableEntry.cs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -333,7 +333,7 @@ public void SetCommentText(CultureKey culture, string? value)
333333
}
334334

335335
[DependsOn(nameof(Key))]
336-
public bool IsDuplicateKey => _duplicateKeyExpression.Match(Key).Success;
336+
public bool IsDuplicateKey => _duplicateKeyExpression.IsMatch(Key);
337337

338338
public ReadOnlyCollection<CodeReference>? CodeReferences { get; set; }
339339

@@ -377,7 +377,7 @@ public bool HasRulesMismatches(IEnumerable<object> cultures)
377377
var neutralValue = Values.GetValue(null);
378378
var values = cultures.Select(CultureKey.Parse)
379379
.Where(lang => !lang.IsNeutral)
380-
.Select(lang => Values.GetValue(lang))
380+
.Select(Values.GetValue)
381381
.Where(value => !value.IsNullOrEmpty())
382382
.ToList()
383383
.AsReadOnly();
@@ -437,7 +437,7 @@ private void OnCommentsChanged()
437437
OnPropertyChanged(nameof(TranslationState));
438438
}
439439

440-
private ICollection<string> GetValueAnnotations(ResourceLanguage language)
440+
private string[] GetValueAnnotations(ResourceLanguage language)
441441
{
442442
var cultureKey = language.CultureKey;
443443

@@ -506,7 +506,7 @@ private IEnumerable<string> GetInvariantMismatches(CultureKey culture, string? v
506506
yield return Resources.ResourceTableEntry_Error_InvariantWithValue;
507507
}
508508

509-
private ICollection<string> GetCommentAnnotations(ResourceLanguage language)
509+
private string[] GetCommentAnnotations(ResourceLanguage language)
510510
{
511511
return GetSnapshotDifferences(language, Comments.GetValue(language.CultureKey), d => d?.Comment)
512512
.ToArray();
@@ -557,4 +557,4 @@ private void OnPropertyChanged([CallerMemberName] string? propertyName = null)
557557
string IDataErrorInfo.this[string? columnName] => (columnName != nameof(Key) ? null : _keyValidationError) ?? string.Empty;
558558

559559
string IDataErrorInfo.Error => string.Empty;
560-
}
560+
}

src/ResXManager.Tests/Model/LibreTranslateTranslatorTests.cs

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
1-
namespace ResXManager.Tests.Model;
1+
#pragma warning disable CA2007
2+
3+
namespace ResXManager.Tests.Model;
24

35
using System;
46
using System.Globalization;
@@ -14,7 +16,7 @@ public class LibreTranslateTranslatorTests
1416
[Fact]
1517
public void LibreTranslateParsesResponseCorrectly()
1618
{
17-
const string input = "{\"translatedText\":\"¡Hola!\"}";
19+
const string input = /*lang=json,strict*/ """{"translatedText":"¡Hola!"}""";
1820

1921
var result = Translators.LibreTranslateTranslator.ParseResponse(input).First();
2022

@@ -24,7 +26,7 @@ public void LibreTranslateParsesResponseCorrectly()
2426
[Fact]
2527
public void LibreTranslateParsesResponseWithDetectedLanguageCorrectly()
2628
{
27-
const string input = "{\"detectedLanguage\":{\"confidence\":90.0,\"language\":\"fr\"},\"translatedText\":\"Hello!\"}";
29+
const string input = /*lang=json,strict*/ """{"detectedLanguage":{"confidence":90.0,"language":"fr"},"translatedText":"Hello!"}""";
2830

2931
var result = Translators.LibreTranslateTranslator.ParseResponse(input).First();
3032

@@ -44,7 +46,7 @@ public void LibreTranslateParsesEmptyResponseCorrectly()
4446
[Fact]
4547
public void LibreTranslateParsesNullTranslatedTextCorrectly()
4648
{
47-
const string input = "{\"translatedText\":null}";
49+
const string input = /*lang=json,strict*/ """{"translatedText":null}""";
4850

4951
var result = Translators.LibreTranslateTranslator.ParseResponse(input);
5052

@@ -54,10 +56,11 @@ public void LibreTranslateParsesNullTranslatedTextCorrectly()
5456
[Fact]
5557
public void LibreTranslateParsesResponseWithAlternativesCorrectly()
5658
{
57-
const string input = "{\"translatedText\":\"Hi\",\"alternatives\":[\"Hello\",\"Hey\"]}";
59+
const string input = /*lang=json,strict*/ """{"translatedText":"Hi","alternatives":["Hello","Hey"]}""";
5860

5961
var result = Translators.LibreTranslateTranslator.ParseResponse(input);
6062

63+
Assert.NotNull(result);
6164
Assert.Equal(["Hi", "Hello", "Hey"], result);
6265
}
6366

@@ -80,7 +83,7 @@ private static async Task<bool> IsLibreTranslateAvailableAsync()
8083
try
8184
{
8285
using var httpClient = new HttpClient { Timeout = TimeSpan.FromSeconds(2) };
83-
var response = await httpClient.GetAsync($"{LocalLibreUrl}/languages");
86+
var response = await httpClient.GetAsync(new Uri($"{LocalLibreUrl}/languages"));
8487
return response.IsSuccessStatusCode;
8588
}
8689
catch
@@ -99,7 +102,7 @@ public async Task TranslateEnglishToGerman_ReturnsTranslatedText()
99102
}
100103

101104
var result = await Translators.LibreTranslateTranslator.TranslateAsync(
102-
$"{LocalLibreUrl}/translate",
105+
new Uri($"{LocalLibreUrl}/translate"),
103106
apiKey: null,
104107
text: "Good morning",
105108
sourceLanguage: CultureInfo.GetCultureInfo("en"),
@@ -129,7 +132,7 @@ public async Task TranslateWithCancellation_ThrowsOperationCanceledException()
129132

130133
await Assert.ThrowsAnyAsync<OperationCanceledException>(async () =>
131134
await Translators.LibreTranslateTranslator.TranslateAsync(
132-
LocalLibreUrl,
135+
new Uri(LocalLibreUrl),
133136
apiKey: null,
134137
text: "Hello",
135138
sourceLanguage: CultureInfo.GetCultureInfo("en"),

src/ResXManager.Translators/LibreTranslateTranslator.cs

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -137,7 +137,7 @@ protected override async Task Translate(ITranslationSession translationSession)
137137
break;
138138

139139
var result = await TranslateAsync(
140-
Url,
140+
new Uri(Url),
141141
ApiKey,
142142
RemoveKeyboardShortcutIndicators(item.Source),
143143
translationSession.SourceLanguage,
@@ -167,10 +167,11 @@ await translationSession.MainThread.StartNew(() =>
167167
/// <param name="text">The text to translate.</param>
168168
/// <param name="sourceLanguage">The source language.</param>
169169
/// <param name="targetLanguage">The target language.</param>
170+
/// <param name="alternatives">The preferred number of alternative translations.</param>
170171
/// <param name="cancellationToken">The cancellation token.</param>
171172
/// <returns>The translated text.</returns>
172173
public static async Task<string[]?> TranslateAsync(
173-
string url,
174+
Uri url,
174175
string? apiKey,
175176
string text,
176177
CultureInfo sourceLanguage,
@@ -192,7 +193,7 @@ await translationSession.MainThread.StartNew(() =>
192193
var json = JsonConvert.SerializeObject(requestModel);
193194
using var content = new StringContent(json, Encoding.UTF8, "application/json");
194195

195-
var response = await httpClient.PostAsync(new Uri(url), content, cancellationToken).ConfigureAwait(false);
196+
var response = await httpClient.PostAsync(url, content, cancellationToken).ConfigureAwait(false);
196197
response.EnsureSuccessStatusCode();
197198

198199
#pragma warning disable CA2016 // Forward the 'CancellationToken' parameter to methods => not available in NetFramework
@@ -213,7 +214,7 @@ await translationSession.MainThread.StartNew(() =>
213214
return null;
214215
}
215216

216-
return new[] { result.TranslatedText }.Concat(result.Alternatives ?? Array.Empty<string>()).ToArray();
217+
return new[] { result.TranslatedText }.Concat(result.Alternatives ?? []).ToArray();
217218
}
218219

219220
/// <summary>

src/ResXManager.Translators/TranslatorHost.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -121,11 +121,11 @@ private void RegisterChangeEvents(ITranslator[] translators)
121121
{
122122
foreach (var translator in translators)
123123
{
124-
translator.PropertyChanged += (_, __) => SaveConfiguration();
124+
translator.PropertyChanged += (_, _) => SaveConfiguration();
125125

126126
foreach (var credential in translator.Credentials)
127127
{
128-
credential.PropertyChanged += (_, __) => SaveConfiguration();
128+
credential.PropertyChanged += (_, _) => SaveConfiguration();
129129
}
130130
}
131131
}
@@ -134,4 +134,4 @@ public void Dispose()
134134
{
135135
ActiveSession?.Dispose();
136136
}
137-
}
137+
}

src/ResXManager.View/Behaviors/EntityFilter.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ private void FilterText_Changed()
5050
try
5151
{
5252
var regex = new Regex(value, RegexOptions.IgnoreCase | RegexOptions.Singleline);
53-
return item => regex.Match(item?.ToString() ?? string.Empty).Success;
53+
return item => regex.IsMatch(item?.ToString() ?? string.Empty);
5454
}
5555
catch (ArgumentException)
5656
{
@@ -59,7 +59,7 @@ private void FilterText_Changed()
5959
try
6060
{
6161
var regex = new Regex(value.Replace(@"\", @"\\", StringComparison.Ordinal), RegexOptions.IgnoreCase | RegexOptions.Singleline);
62-
return item => regex.Match(item?.ToString() ?? string.Empty).Success;
62+
return item => regex.IsMatch(item?.ToString() ?? string.Empty);
6363
}
6464
catch (ArgumentException)
6565
{

0 commit comments

Comments
 (0)