Example #1
0
        public void CanUpdateMediaTypeWithoutId()
        {
            var logServiceMock = new Mock <ILogService>();

            var mediaTypeWithoutId = new Jet.MediaType(typeof(MediaTypeWithoutId));

            var mediaTypeMock = new Mock <IMediaType>();

            mediaTypeMock.SetupAllProperties();
            mediaTypeMock.Object.Alias = mediaTypeWithoutId.Alias;

            var typeResolverMock = new Mock <ITypeResolver>();

            typeResolverMock.Setup(m => m.MediaTypes).Returns(Array.AsReadOnly(new[] { mediaTypeWithoutId }));

            var contentTypeServiceMock = new Mock <IContentTypeService>();

            contentTypeServiceMock.Setup(m => m.GetAllMediaTypes()).Returns(new[] { mediaTypeMock.Object });
            contentTypeServiceMock.Setup(m => m.GetMediaType(mediaTypeWithoutId.Alias)).Returns(mediaTypeMock.Object);

            var mediaTypeSynchronizationServiceMock = new Mock <MediaTypeSynchronizer>(
                logServiceMock.Object,
                contentTypeServiceMock.Object,
                typeResolverMock.Object,
                new Mock <Jet.Data.ITypeRepository>().Object)
            {
                CallBase = true
            };

            mediaTypeSynchronizationServiceMock.Object.Run();

            mediaTypeSynchronizationServiceMock.Verify(m => m.UpdateContentType(mediaTypeMock.Object, mediaTypeWithoutId), Times.Once);
        }
Example #2
0
        public void CanCreateMediaTypeWithoutId()
        {
            var logServiceMock = new Mock <ILogService>();

            var mediaTypeWithoutId = new Jet.MediaType(typeof(MediaTypeWithoutId));

            var typeResolverMock = new Mock <ITypeResolver>();

            typeResolverMock.Setup(m => m.MediaTypes).Returns(Array.AsReadOnly(new[] { mediaTypeWithoutId }));

            var mediaTypes = new List <IMediaType>();

            var contentTypeServiceMock = new Mock <IContentTypeService>();

            contentTypeServiceMock.Setup(m => m.GetAllMediaTypes()).Returns(mediaTypes);
            contentTypeServiceMock.Setup(m => m.Save(It.IsAny <IMediaType>(), 0)).Callback((IMediaType mediaType, int userId) => { mediaTypes.Add(mediaType); });

            var mediaTypeSynchronizationServiceMock = new Mock <MediaTypeSynchronizer>(
                logServiceMock.Object,
                contentTypeServiceMock.Object,
                typeResolverMock.Object,
                new Mock <Jet.Data.ITypeRepository>().Object)
            {
                CallBase = true
            };

            mediaTypeSynchronizationServiceMock.Object.Run();

            mediaTypeSynchronizationServiceMock.Verify(m => m.CreateContentType(mediaTypeWithoutId), Times.Once);
        }
Example #3
0
        public void CanUpdateNameForMediaTypeWithId()
        {
            var logServiceMock = new Mock <ILogService>();

            var mediaTypeWithId = new Jet.MediaType(typeof(MediaTypeWithId));

            var mediaTypeMock = new Mock <IMediaType>();

            mediaTypeMock.SetupAllProperties();

            var typeResolverMock = new Mock <ITypeResolver>();

            typeResolverMock.Setup(m => m.MediaTypes).Returns(Array.AsReadOnly(new[] { mediaTypeWithId }));

            var contentTypeServiceMock = new Mock <IContentTypeService>();

            contentTypeServiceMock.Setup(m => m.GetAllMediaTypes()).Returns(new[] { mediaTypeMock.Object });
            contentTypeServiceMock.Setup(m => m.GetMediaType(mediaTypeWithId.Alias)).Returns(mediaTypeMock.Object);

            var typeRepositoryMock = new Mock <Jet.Data.ITypeRepository>();

            typeRepositoryMock.Setup(m => m.GetContentTypeId(mediaTypeWithId.Id.Value)).Returns(mediaTypeMock.Object.Id);

            var mediaTypeSynchronizationService = new MediaTypeSynchronizer(
                logServiceMock.Object,
                contentTypeServiceMock.Object,
                typeResolverMock.Object,
                typeRepositoryMock.Object);

            mediaTypeSynchronizationService.Run();

            mediaTypeMock.VerifySet(m => m.Name = mediaTypeWithId.Name, Times.Once);
        }