next cloud unit test

This commit is contained in:
John Andrews
2024-08-28 08:15:46 +12:00
parent 2a498acae0
commit 1fee7f08f5
3 changed files with 58 additions and 17 deletions

View File

@@ -82,7 +82,7 @@ public class UploadToNextcloud : Node
args.Logger?.ILog("File: " + local.Value);
args.Logger?.ILog("Destination: " + destination);
var uploader = new NextcloudUploader(args.Logger!, settings.Url, settings.Username, settings.Password);
var uploader = GetUploader(args.Logger!, settings.Url, settings.Username, settings.Password);
var result = uploader.UploadFile(local.Value, destination);
if(result.Failed(out error))
{
@@ -94,4 +94,30 @@ public class UploadToNextcloud : Node
args.Logger?.ILog("File successfully uploaded");
return 1;
}
/// <summary>
/// The function to get the nextcloud uploader
/// </summary>
private Func<ILogger, string, string, string, INextcloudUploader>? _GetUploader;
/// <summary>
/// Gets the function to get the next cloud uploader used to send a request
/// </summary>
internal Func<ILogger, string, string, string, INextcloudUploader> GetUploader
{
get
{
if(_GetUploader == null)
{
_GetUploader = (logger, url, username, password) =>
new NextcloudUploader(logger, url, username, password);
}
return _GetUploader;
}
#if(DEBUG)
set
{
_GetUploader = value;
}
#endif
}
}