mirror of
https://github.com/JustArchiNET/ArchiSteamFarm.git
synced 2025-12-16 06:20:34 +00:00
Misc
This commit is contained in:
@@ -22,6 +22,7 @@
|
|||||||
// limitations under the License.
|
// limitations under the License.
|
||||||
|
|
||||||
using System;
|
using System;
|
||||||
|
using System.Threading;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using ArchiSteamFarm.Core;
|
using ArchiSteamFarm.Core;
|
||||||
using ArchiSteamFarm.Localization;
|
using ArchiSteamFarm.Localization;
|
||||||
@@ -43,6 +44,8 @@ internal sealed class IGitHubPluginUpdates {
|
|||||||
|
|
||||||
private readonly TestContext TestContext;
|
private readonly TestContext TestContext;
|
||||||
|
|
||||||
|
private CancellationToken CancellationToken => TestContext.CancellationTokenSource.Token;
|
||||||
|
|
||||||
[UsedImplicitly]
|
[UsedImplicitly]
|
||||||
public IGitHubPluginUpdates(TestContext testContext) {
|
public IGitHubPluginUpdates(TestContext testContext) {
|
||||||
ArgumentNullException.ThrowIfNull(testContext);
|
ArgumentNullException.ThrowIfNull(testContext);
|
||||||
@@ -57,7 +60,7 @@ internal sealed class IGitHubPluginUpdates {
|
|||||||
|
|
||||||
typeof(ASF).GetProperty(nameof(ASF.WebBrowser))?.SetValue(null, webBrowser);
|
typeof(ASF).GetProperty(nameof(ASF.WebBrowser))?.SetValue(null, webBrowser);
|
||||||
|
|
||||||
ReleaseResponse? response = await GitHubService.GetLatestRelease(Repository, cancellationToken: TestContext.CancellationTokenSource.Token).ConfigureAwait(false);
|
ReleaseResponse? response = await GitHubService.GetLatestRelease(Repository, cancellationToken: CancellationToken).ConfigureAwait(false);
|
||||||
|
|
||||||
if (response == null) {
|
if (response == null) {
|
||||||
Assert.Inconclusive(Strings.FormatWarningFailedWithError(nameof(response)));
|
Assert.Inconclusive(Strings.FormatWarningFailedWithError(nameof(response)));
|
||||||
|
|||||||
@@ -25,6 +25,7 @@ using System;
|
|||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
|
using System.Threading;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using JetBrains.Annotations;
|
using JetBrains.Annotations;
|
||||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||||
@@ -37,6 +38,8 @@ namespace ArchiSteamFarm.Tests;
|
|||||||
internal sealed class SteamChatMessage {
|
internal sealed class SteamChatMessage {
|
||||||
private readonly TestContext TestContext;
|
private readonly TestContext TestContext;
|
||||||
|
|
||||||
|
private CancellationToken CancellationToken => TestContext.CancellationTokenSource.Token;
|
||||||
|
|
||||||
[UsedImplicitly]
|
[UsedImplicitly]
|
||||||
public SteamChatMessage(TestContext testContext) {
|
public SteamChatMessage(TestContext testContext) {
|
||||||
ArgumentNullException.ThrowIfNull(testContext);
|
ArgumentNullException.ThrowIfNull(testContext);
|
||||||
@@ -51,7 +54,7 @@ internal sealed class SteamChatMessage {
|
|||||||
const string emoji = "😎";
|
const string emoji = "😎";
|
||||||
const string message = $"{emoji}{emoji}{emoji}{emoji}";
|
const string message = $"{emoji}{emoji}{emoji}{emoji}";
|
||||||
|
|
||||||
List<string> output = await GetMessageParts(message, prefix, true).ToListAsync(TestContext.CancellationTokenSource.Token).ConfigureAwait(false);
|
List<string> output = await GetMessageParts(message, prefix, true).ToListAsync(CancellationToken).ConfigureAwait(false);
|
||||||
|
|
||||||
Assert.HasCount(4, output);
|
Assert.HasCount(4, output);
|
||||||
|
|
||||||
@@ -68,7 +71,7 @@ internal sealed class SteamChatMessage {
|
|||||||
internal async Task DoesntSkipEmptyNewlines() {
|
internal async Task DoesntSkipEmptyNewlines() {
|
||||||
string message = $"asdf{Environment.NewLine}{Environment.NewLine}asdf";
|
string message = $"asdf{Environment.NewLine}{Environment.NewLine}asdf";
|
||||||
|
|
||||||
List<string> output = await GetMessageParts(message).ToListAsync(TestContext.CancellationTokenSource.Token).ConfigureAwait(false);
|
List<string> output = await GetMessageParts(message).ToListAsync(CancellationToken).ConfigureAwait(false);
|
||||||
|
|
||||||
Assert.HasCount(1, output);
|
Assert.HasCount(1, output);
|
||||||
Assert.AreEqual(message, output.First());
|
Assert.AreEqual(message, output.First());
|
||||||
@@ -86,7 +89,7 @@ internal sealed class SteamChatMessage {
|
|||||||
string longSequence = new('a', longLineLength - 1);
|
string longSequence = new('a', longLineLength - 1);
|
||||||
string message = $"{longSequence}{emoji}";
|
string message = $"{longSequence}{emoji}";
|
||||||
|
|
||||||
List<string> output = await GetMessageParts(message, isAccountLimited: isAccountLimited).ToListAsync(TestContext.CancellationTokenSource.Token).ConfigureAwait(false);
|
List<string> output = await GetMessageParts(message, isAccountLimited: isAccountLimited).ToListAsync(CancellationToken).ConfigureAwait(false);
|
||||||
|
|
||||||
Assert.HasCount(2, output);
|
Assert.HasCount(2, output);
|
||||||
|
|
||||||
@@ -99,7 +102,7 @@ internal sealed class SteamChatMessage {
|
|||||||
const string message = "abcdef[";
|
const string message = "abcdef[";
|
||||||
const string escapedMessage = @"abcdef\[";
|
const string escapedMessage = @"abcdef\[";
|
||||||
|
|
||||||
List<string> output = await GetMessageParts(message).ToListAsync(TestContext.CancellationTokenSource.Token).ConfigureAwait(false);
|
List<string> output = await GetMessageParts(message).ToListAsync(CancellationToken).ConfigureAwait(false);
|
||||||
|
|
||||||
Assert.HasCount(1, output);
|
Assert.HasCount(1, output);
|
||||||
Assert.AreEqual(escapedMessage, output.First());
|
Assert.AreEqual(escapedMessage, output.First());
|
||||||
@@ -115,7 +118,7 @@ internal sealed class SteamChatMessage {
|
|||||||
string longLine = new('a', longLineLength - 2);
|
string longLine = new('a', longLineLength - 2);
|
||||||
string message = $@"{longLine}\";
|
string message = $@"{longLine}\";
|
||||||
|
|
||||||
List<string> output = await GetMessageParts(message, isAccountLimited: isAccountLimited).ToListAsync(TestContext.CancellationTokenSource.Token).ConfigureAwait(false);
|
List<string> output = await GetMessageParts(message, isAccountLimited: isAccountLimited).ToListAsync(CancellationToken).ConfigureAwait(false);
|
||||||
|
|
||||||
Assert.HasCount(1, output);
|
Assert.HasCount(1, output);
|
||||||
Assert.AreEqual($@"{message}\", output.First());
|
Assert.AreEqual($@"{message}\", output.First());
|
||||||
@@ -131,7 +134,7 @@ internal sealed class SteamChatMessage {
|
|||||||
string longLine = new('a', longLineLength - 1);
|
string longLine = new('a', longLineLength - 1);
|
||||||
string message = $"{longLine}[";
|
string message = $"{longLine}[";
|
||||||
|
|
||||||
List<string> output = await GetMessageParts(message, isAccountLimited: isAccountLimited).ToListAsync(TestContext.CancellationTokenSource.Token).ConfigureAwait(false);
|
List<string> output = await GetMessageParts(message, isAccountLimited: isAccountLimited).ToListAsync(CancellationToken).ConfigureAwait(false);
|
||||||
|
|
||||||
Assert.HasCount(2, output);
|
Assert.HasCount(2, output);
|
||||||
|
|
||||||
@@ -143,7 +146,7 @@ internal sealed class SteamChatMessage {
|
|||||||
internal async Task NoNeedForAnySplittingWithNewlines() {
|
internal async Task NoNeedForAnySplittingWithNewlines() {
|
||||||
string message = $"abcdef{Environment.NewLine}ghijkl{Environment.NewLine}mnopqr";
|
string message = $"abcdef{Environment.NewLine}ghijkl{Environment.NewLine}mnopqr";
|
||||||
|
|
||||||
List<string> output = await GetMessageParts(message).ToListAsync(TestContext.CancellationTokenSource.Token).ConfigureAwait(false);
|
List<string> output = await GetMessageParts(message).ToListAsync(CancellationToken).ConfigureAwait(false);
|
||||||
|
|
||||||
Assert.HasCount(1, output);
|
Assert.HasCount(1, output);
|
||||||
Assert.AreEqual(message, output.First());
|
Assert.AreEqual(message, output.First());
|
||||||
@@ -153,7 +156,7 @@ internal sealed class SteamChatMessage {
|
|||||||
internal async Task NoNeedForAnySplittingWithoutNewlines() {
|
internal async Task NoNeedForAnySplittingWithoutNewlines() {
|
||||||
const string message = "abcdef";
|
const string message = "abcdef";
|
||||||
|
|
||||||
List<string> output = await GetMessageParts(message).ToListAsync(TestContext.CancellationTokenSource.Token).ConfigureAwait(false);
|
List<string> output = await GetMessageParts(message).ToListAsync(CancellationToken).ConfigureAwait(false);
|
||||||
|
|
||||||
Assert.HasCount(1, output);
|
Assert.HasCount(1, output);
|
||||||
Assert.AreEqual(message, output.First());
|
Assert.AreEqual(message, output.First());
|
||||||
@@ -167,7 +170,7 @@ internal sealed class SteamChatMessage {
|
|||||||
const string message = @"[b]bold[/b] \n";
|
const string message = @"[b]bold[/b] \n";
|
||||||
const string escapedMessage = @"\[b]bold\[/b] \\n";
|
const string escapedMessage = @"\[b]bold\[/b] \\n";
|
||||||
|
|
||||||
List<string> output = await GetMessageParts(message).ToListAsync(TestContext.CancellationTokenSource.Token).ConfigureAwait(false);
|
List<string> output = await GetMessageParts(message).ToListAsync(CancellationToken).ConfigureAwait(false);
|
||||||
|
|
||||||
Assert.HasCount(1, output);
|
Assert.HasCount(1, output);
|
||||||
Assert.AreEqual(escapedMessage, output.First());
|
Assert.AreEqual(escapedMessage, output.First());
|
||||||
@@ -180,7 +183,7 @@ internal sealed class SteamChatMessage {
|
|||||||
|
|
||||||
const string message = "asdf";
|
const string message = "asdf";
|
||||||
|
|
||||||
List<string> output = await GetMessageParts(message, prefix).ToListAsync(TestContext.CancellationTokenSource.Token).ConfigureAwait(false);
|
List<string> output = await GetMessageParts(message, prefix).ToListAsync(CancellationToken).ConfigureAwait(false);
|
||||||
|
|
||||||
Assert.HasCount(1, output);
|
Assert.HasCount(1, output);
|
||||||
Assert.AreEqual($"{escapedPrefix}{message}", output.First());
|
Assert.AreEqual($"{escapedPrefix}{message}", output.First());
|
||||||
@@ -196,7 +199,7 @@ internal sealed class SteamChatMessage {
|
|||||||
string longLine = new('a', longLineLength);
|
string longLine = new('a', longLineLength);
|
||||||
string message = $"{longLine}{longLine}{longLine}{longLine}";
|
string message = $"{longLine}{longLine}{longLine}{longLine}";
|
||||||
|
|
||||||
List<string> output = await GetMessageParts(message, isAccountLimited: isAccountLimited).ToListAsync(TestContext.CancellationTokenSource.Token).ConfigureAwait(false);
|
List<string> output = await GetMessageParts(message, isAccountLimited: isAccountLimited).ToListAsync(CancellationToken).ConfigureAwait(false);
|
||||||
|
|
||||||
Assert.HasCount(4, output);
|
Assert.HasCount(4, output);
|
||||||
|
|
||||||
@@ -270,7 +273,7 @@ internal sealed class SteamChatMessage {
|
|||||||
<ASF> 1/1 ботов уже имеют игру app/304930 | Unturned.
|
<ASF> 1/1 ботов уже имеют игру app/304930 | Unturned.
|
||||||
""";
|
""";
|
||||||
|
|
||||||
List<string> output = await GetMessageParts(message, prefix).ToListAsync(TestContext.CancellationTokenSource.Token).ConfigureAwait(false);
|
List<string> output = await GetMessageParts(message, prefix).ToListAsync(CancellationToken).ConfigureAwait(false);
|
||||||
|
|
||||||
Assert.HasCount(2, output);
|
Assert.HasCount(2, output);
|
||||||
|
|
||||||
@@ -314,7 +317,7 @@ internal sealed class SteamChatMessage {
|
|||||||
string newlinePart = newlinePartBuilder.ToString();
|
string newlinePart = newlinePartBuilder.ToString();
|
||||||
string message = $"{newlinePart}{Environment.NewLine}{newlinePart}{Environment.NewLine}{newlinePart}{Environment.NewLine}{newlinePart}";
|
string message = $"{newlinePart}{Environment.NewLine}{newlinePart}{Environment.NewLine}{newlinePart}{Environment.NewLine}{newlinePart}";
|
||||||
|
|
||||||
List<string> output = await GetMessageParts(message, isAccountLimited: isAccountLimited).ToListAsync(TestContext.CancellationTokenSource.Token).ConfigureAwait(false);
|
List<string> output = await GetMessageParts(message, isAccountLimited: isAccountLimited).ToListAsync(CancellationToken).ConfigureAwait(false);
|
||||||
|
|
||||||
Assert.HasCount(4, output);
|
Assert.HasCount(4, output);
|
||||||
|
|
||||||
@@ -330,7 +333,7 @@ internal sealed class SteamChatMessage {
|
|||||||
|
|
||||||
const string message = "asdf";
|
const string message = "asdf";
|
||||||
|
|
||||||
await Assert.ThrowsExactlyAsync<ArgumentOutOfRangeException>(async () => await GetMessageParts(message, prefix).ToListAsync(TestContext.CancellationTokenSource.Token).ConfigureAwait(false)).ConfigureAwait(false);
|
await Assert.ThrowsExactlyAsync<ArgumentOutOfRangeException>(async () => await GetMessageParts(message, prefix).ToListAsync(CancellationToken).ConfigureAwait(false)).ConfigureAwait(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
[TestMethod]
|
[TestMethod]
|
||||||
@@ -339,7 +342,7 @@ internal sealed class SteamChatMessage {
|
|||||||
|
|
||||||
const string message = "asdf";
|
const string message = "asdf";
|
||||||
|
|
||||||
await Assert.ThrowsExactlyAsync<ArgumentOutOfRangeException>(async () => await GetMessageParts(message, prefix).ToListAsync(TestContext.CancellationTokenSource.Token).ConfigureAwait(false)).ConfigureAwait(false);
|
await Assert.ThrowsExactlyAsync<ArgumentOutOfRangeException>(async () => await GetMessageParts(message, prefix).ToListAsync(CancellationToken).ConfigureAwait(false)).ConfigureAwait(false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#pragma warning restore CA1812 // False positive, the class is used during MSTest
|
#pragma warning restore CA1812 // False positive, the class is used during MSTest
|
||||||
|
|||||||
Reference in New Issue
Block a user