Exemple #1
0
        public void MediaTypesDoesNotExistInDatabase_Returns_Empty_List_When_All_Ids_Exist_DB()
        {
            var mediaWithMediaTypes = new List <MediaWithMediaType>
            {
                new MediaWithMediaType
                {
                    MediaTypeId = 1
                },
                new MediaWithMediaType
                {
                    MediaTypeId = 2
                },
                new MediaWithMediaType
                {
                    MediaTypeId = 3
                }
            };
            var mediaTypesFromDB = mediaWithMediaTypes.Select(x => new MediaType {
                Id = x.MediaTypeId
            }).ToList();

            A.CallTo(() => _mediaTypeRepository.GetAll(A <BaseListQuery> ._)).Returns(mediaTypesFromDB);

            Assert.Empty(_validationService.MediaTypesNotExistInDatabase(mediaWithMediaTypes, "nb"));
        }
        private IEnumerable <IMedia> ProcessQuery(Sql sql)
        {
            //NOTE: This doesn't allow properties to be part of the query
            var dtos = Database.Fetch <ContentVersionDto, ContentDto, NodeDto>(sql);

            var ids = dtos.Select(x => x.ContentDto.ContentTypeId).ToArray();

            //content types
            var contentTypes = ids.Length == 0 ? Enumerable.Empty <IMediaType>() : _mediaTypeRepository.GetAll(ids).ToArray();

            var dtosWithContentTypes = dtos
                                       //This select into and null check are required because we don't have a foreign damn key on the contentType column
                                       // http://issues.umbraco.org/issue/U4-5503
                                       .Select(x => new { dto = x, contentType = contentTypes.FirstOrDefault(ct => ct.Id == x.ContentDto.ContentTypeId) })
                                       .Where(x => x.contentType != null)
                                       .ToArray();

            //Go get the property data for each document
            var docDefs = dtosWithContentTypes.Select(d => new DocumentDefinition(
                                                          d.dto.NodeId,
                                                          d.dto.VersionId,
                                                          d.dto.VersionDate,
                                                          d.dto.ContentDto.NodeDto.CreateDate,
                                                          d.contentType))
                          .ToArray();

            var propertyData = GetPropertyCollection(sql, docDefs);

            return(dtosWithContentTypes.Select(d => CreateMediaFromDto(
                                                   d.dto,
                                                   contentTypes.First(ct => ct.Id == d.dto.ContentDto.ContentTypeId),
                                                   propertyData[d.dto.NodeId])));
        }
Exemple #3
0
        public Response GetAllMediaTypes(BaseListQuery query)
        {
            try
            {
                var categories = _mediaTypeRepository.GetAll(query);
                var results    = Mapper.Map <List <MediaTypeDTO> >(categories);

                var totalItems    = 0;
                var numberOfPages = 0;

                try
                {
                    totalItems    = categories.FirstOrDefault().TotalItems;
                    numberOfPages = categories.FirstOrDefault().NumberOfPages;
                }
                catch { }

                return(new Response
                {
                    Data = new PagingDTO <MediaTypeDTO>(results, query, UrlHelper.Action("GetAllMediaTypes", "MediaType", query), numberOfPages, totalItems)
                });
            }
            catch (Exception e)
            {
                return(null);
            }
        }
        public void MediaTypeGetAll()
        {
            // Act
            var mediaTypes = _repo.GetAll();

            // Assert
            Assert.True(mediaTypes.Count > 1, "The number of media types was not greater than 1");
        }
Exemple #5
0
        public List <int> MediaTypesNotExistInDatabase(List <MediaWithMediaType> mediaTypes, string language)
        {
            var noExistingIds = new List <int>();

            if (mediaTypes == null)
            {
                return(noExistingIds);
            }

            var allMediaTypes = _mediaTypeRepository.GetAll(BaseListQuery.DefaultValues(language));
            var pages         = 1;

            try
            {
                pages = allMediaTypes.FirstOrDefault().NumberOfPages;
            }
            catch { }

            for (var page = 0; page < pages; page++)
            {
                var query = BaseListQuery.DefaultValues(language);
                query.Page = page + 1;
                var medias = _mediaTypeRepository
                             .GetAll(query)
                             .Select(x => x.Id)
                             .ToList();
                foreach (var mediaType in mediaTypes)
                {
                    if (!medias.Contains(mediaType.MediaTypeId))
                    {
                        noExistingIds.Add(mediaType.MediaTypeId);
                    }
                }
            }


            return(noExistingIds);
        }