mirror of
https://github.com/Jackett/Jackett.git
synced 2025-09-17 17:34:09 +02:00
Merge string/byte request code
This commit is contained in:
@@ -33,16 +33,11 @@ namespace Jackett.Test
|
||||
|
||||
public static IContainer Container => testContainer;
|
||||
|
||||
public static void RegisterByteCall(WebRequest r, Func<WebRequest, WebResult> f)
|
||||
//Currently not used in any Unit Tests
|
||||
public static void RegisterRequestCallback(WebRequest r, Func<WebRequest, WebResult> f)
|
||||
{
|
||||
var client = testContainer.Resolve<WebClient>() as TestWebClient;
|
||||
client.RegisterByteCall(r, f);
|
||||
}
|
||||
|
||||
public static void RegisterStringCall(WebRequest r, Func<WebRequest, WebResult> f)
|
||||
{
|
||||
var client = testContainer.Resolve<WebClient>() as TestWebClient;
|
||||
client.RegisterStringCall(r, f);
|
||||
client.RegisterRequestCallback(r, f);
|
||||
}
|
||||
|
||||
public static string GetResource(string item)
|
||||
|
@@ -9,26 +9,20 @@ using NLog;
|
||||
|
||||
namespace Jackett.Test
|
||||
{
|
||||
|
||||
// Currently not used in any Unit tests. Leaving it for potential future testing purposes.
|
||||
public class TestWebClient : WebClient
|
||||
{
|
||||
private readonly Dictionary<WebRequest, Func<WebRequest, WebResult>> byteCallbacks = new Dictionary<WebRequest, Func<WebRequest, WebResult>>();
|
||||
private readonly Dictionary<WebRequest, Func<WebRequest, WebResult>> stringCallbacks = new Dictionary<WebRequest, Func<WebRequest, WebResult>>();
|
||||
private readonly Dictionary<WebRequest, Func<WebRequest, WebResult>> _requestCallbacks = new Dictionary<WebRequest, Func<WebRequest, WebResult>>();
|
||||
|
||||
public TestWebClient(IProcessService p, Logger l, IConfigurationService c, ServerConfig sc)
|
||||
: base(p: p,
|
||||
l: l,
|
||||
c: c,
|
||||
sc: sc)
|
||||
: base(p, l, c, sc)
|
||||
{
|
||||
}
|
||||
|
||||
public void RegisterByteCall(WebRequest req, Func<WebRequest, WebResult> f) => byteCallbacks.Add(req, f);
|
||||
public void RegisterRequestCallback(WebRequest req, Func<WebRequest, WebResult> f) => _requestCallbacks.Add(req, f);
|
||||
|
||||
public void RegisterStringCall(WebRequest req, Func<WebRequest, WebResult> f) => stringCallbacks.Add(req, f);
|
||||
|
||||
public override Task<WebResult> GetBytes(WebRequest request) => Task.FromResult(byteCallbacks.Where(r => r.Key.Equals(request)).First().Value.Invoke(request));
|
||||
|
||||
public override Task<WebResult> GetString(WebRequest request) => Task.FromResult(stringCallbacks.Where(r => r.Key.Equals(request)).First().Value.Invoke(request));
|
||||
public override Task<WebResult> GetResultAsync(WebRequest request) => Task.FromResult(_requestCallbacks.First(r => r.Key.Equals(request)).Value.Invoke(request));
|
||||
|
||||
public override void Init()
|
||||
{
|
||||
|
Reference in New Issue
Block a user