https://github.com/umbraco/Umbraco-CMS/pull/8948 - Injecting UploadAutoFillProperties instead of newing it up
Signed-off-by: Bjarke Berg <mail@bergmania.dk>
This commit is contained in:
@@ -39,7 +39,7 @@ namespace Umbraco.Web.PropertyEditors
|
||||
ILocalizationService localizationService,
|
||||
ILocalizedTextService localizedTextService,
|
||||
IShortStringHelper shortStringHelper,
|
||||
IImageUrlGenerator imageUrlGenerator)
|
||||
UploadAutoFillProperties uploadAutoFillProperties)
|
||||
: base(logger, dataTypeService, localizationService, localizedTextService, shortStringHelper)
|
||||
{
|
||||
_mediaFileSystem = mediaFileSystem ?? throw new ArgumentNullException(nameof(mediaFileSystem));
|
||||
@@ -47,7 +47,7 @@ namespace Umbraco.Web.PropertyEditors
|
||||
_dataTypeService = dataTypeService;
|
||||
_localizationService = localizationService;
|
||||
_localizedTextService = localizedTextService;
|
||||
_uploadAutoFillProperties = new UploadAutoFillProperties(_mediaFileSystem, logger, imageUrlGenerator);
|
||||
_uploadAutoFillProperties = uploadAutoFillProperties;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
||||
@@ -49,16 +49,14 @@ namespace Umbraco.Web.PropertyEditors
|
||||
IIOHelper ioHelper,
|
||||
IShortStringHelper shortStringHelper,
|
||||
ILocalizedTextService localizedTextService,
|
||||
IImageUrlGenerator imageUrlGenerator)
|
||||
UploadAutoFillProperties uploadAutoFillProperties)
|
||||
: base(logger, dataTypeService, localizationService, localizedTextService, shortStringHelper)
|
||||
{
|
||||
_mediaFileSystem = mediaFileSystem ?? throw new ArgumentNullException(nameof(mediaFileSystem));
|
||||
_contentSettings = contentSettings.Value ?? throw new ArgumentNullException(nameof(contentSettings));
|
||||
_dataTypeService = dataTypeService;
|
||||
_ioHelper = ioHelper;
|
||||
|
||||
// TODO: inject?
|
||||
_autoFillProperties = new UploadAutoFillProperties(_mediaFileSystem, logger, imageUrlGenerator);
|
||||
_dataTypeService = dataTypeService ?? throw new ArgumentNullException(nameof(dataTypeService));
|
||||
_ioHelper = ioHelper ?? throw new ArgumentNullException(nameof(ioHelper));
|
||||
_autoFillProperties = uploadAutoFillProperties ?? throw new ArgumentNullException(nameof(uploadAutoFillProperties));
|
||||
}
|
||||
|
||||
public bool TryGetMediaPath(string alias, object value, out string mediaPath)
|
||||
|
||||
@@ -57,6 +57,7 @@ using IntegerValidator = Umbraco.Core.PropertyEditors.Validators.IntegerValidato
|
||||
using TextStringValueConverter = Umbraco.Core.PropertyEditors.ValueConverters.TextStringValueConverter;
|
||||
using Umbraco.Core.Configuration.Models;
|
||||
using Microsoft.Extensions.Options;
|
||||
using Umbraco.Web.Media;
|
||||
|
||||
namespace Umbraco.Core.Runtime
|
||||
{
|
||||
@@ -371,6 +372,8 @@ namespace Umbraco.Core.Runtime
|
||||
// Register noop versions for examine to be overridden by examine
|
||||
composition.RegisterUnique<IUmbracoIndexesCreator, NoopUmbracoIndexesCreator>();
|
||||
composition.RegisterUnique<IBackOfficeExamineSearcher, NoopBackOfficeExamineSearcher>();
|
||||
|
||||
composition.RegisterUnique<UploadAutoFillProperties>();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -33,7 +33,7 @@ namespace Umbraco.Tests.Models
|
||||
var contentSettings = new ContentSettings();
|
||||
|
||||
var mediaFileSystem = new MediaFileSystem(Mock.Of<IFileSystem>(), scheme, logger, ShortStringHelper);
|
||||
var ignored = new FileUploadPropertyEditor(Mock.Of<ILogger>(), mediaFileSystem, Microsoft.Extensions.Options.Options.Create(contentSettings), DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper, ImageUrlGenerator);
|
||||
var ignored = new FileUploadPropertyEditor(Mock.Of<ILogger>(), mediaFileSystem, Microsoft.Extensions.Options.Options.Create(contentSettings), DataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper, UploadAutoFillProperties);
|
||||
|
||||
var media = MockedMedia.CreateMediaImage(mediaType, -1);
|
||||
media.WriterId = -1; // else it's zero and that's not a user and it breaks the tests
|
||||
|
||||
@@ -38,8 +38,8 @@ namespace Umbraco.Tests.Routing
|
||||
var dataTypeService = Mock.Of<IDataTypeService>();
|
||||
var propertyEditors = new MediaUrlGeneratorCollection(new IMediaUrlGenerator[]
|
||||
{
|
||||
new FileUploadPropertyEditor(logger, mediaFileSystemMock, Microsoft.Extensions.Options.Options.Create(contentSettings), dataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper, ImageUrlGenerator),
|
||||
new ImageCropperPropertyEditor(logger, mediaFileSystemMock, Microsoft.Extensions.Options.Options.Create(contentSettings), dataTypeService, LocalizationService, IOHelper, ShortStringHelper, LocalizedTextService, ImageUrlGenerator),
|
||||
new FileUploadPropertyEditor(logger, mediaFileSystemMock, Microsoft.Extensions.Options.Options.Create(contentSettings), dataTypeService, LocalizationService, LocalizedTextService, ShortStringHelper, UploadAutoFillProperties),
|
||||
new ImageCropperPropertyEditor(logger, mediaFileSystemMock, Microsoft.Extensions.Options.Options.Create(contentSettings), dataTypeService, LocalizationService, IOHelper, ShortStringHelper, LocalizedTextService, UploadAutoFillProperties),
|
||||
});
|
||||
_mediaUrlProvider = new DefaultMediaUrlProvider(propertyEditors, UriUtility);
|
||||
}
|
||||
|
||||
@@ -49,6 +49,7 @@ using Umbraco.Web.AspNet;
|
||||
using Umbraco.Web.ContentApps;
|
||||
using Umbraco.Web.Hosting;
|
||||
using Umbraco.Web.Install;
|
||||
using Umbraco.Web.Media;
|
||||
using Umbraco.Web.PropertyEditors;
|
||||
using Umbraco.Web.PublishedCache;
|
||||
using Umbraco.Web.Routing;
|
||||
@@ -129,6 +130,7 @@ namespace Umbraco.Tests.Testing
|
||||
protected ILocalizedTextService LocalizedTextService { get; private set; }
|
||||
protected IShortStringHelper ShortStringHelper => Factory?.GetInstance<IShortStringHelper>() ?? TestHelper.ShortStringHelper;
|
||||
protected IImageUrlGenerator ImageUrlGenerator => Factory.GetInstance<IImageUrlGenerator>();
|
||||
protected UploadAutoFillProperties UploadAutoFillProperties => Factory.GetInstance<UploadAutoFillProperties>();
|
||||
protected IUmbracoVersion UmbracoVersion { get; private set; }
|
||||
|
||||
protected ITypeFinder TypeFinder { get; private set; }
|
||||
@@ -343,6 +345,7 @@ namespace Umbraco.Tests.Testing
|
||||
runtimeStateMock.Setup(x => x.Level).Returns(RuntimeLevel.Run);
|
||||
Composition.RegisterUnique(f => runtimeStateMock.Object);
|
||||
Composition.Register(_ => Mock.Of<IImageUrlGenerator>());
|
||||
Composition.Register<UploadAutoFillProperties>();
|
||||
|
||||
// ah...
|
||||
Composition.WithCollectionBuilder<ActionCollectionBuilder>();
|
||||
|
||||
Reference in New Issue
Block a user