示例#1
0
        public void ShouldFilterResultsWhenLoadingLibraryWithFilter()
        {
            var context = new RoughCutEditorEntities();

            using (TransactionScope transactionScope = new TransactionScope())
            {
                var libraryId    = CreateId(typeof(Services.Contracts.Container).Name);
                var dataProvider = new DataProvider(this.loggerService, libraryId);

                Container container = Container.CreateContainer(libraryId.ToString());
                container.Title = "Test";

                Item item1 = SqlHelper.CreateSqlVideoItem();
                item1.Title = "FilterItem";
                Item item2 = SqlHelper.CreateSqlAudioItem();
                item2.Title = "Test";
                Item item3 = SqlHelper.CreateSqlImageItem();
                item3.Title = "Test2";

                container.Items.Add(item1);
                container.Items.Add(item2);
                container.Items.Add(item3);

                context.AddToContainer(container);

                context.SaveChanges();

                var filter = "Filter";

                var library = dataProvider.LoadLibrary(filter, 0);

                Assert.AreEqual(1, library.Items.Count);
            }
        }
示例#2
0
        public void ShouldLoadLibrary()
        {
            var context = new RoughCutEditorEntities();

            using (TransactionScope transactionScope = new TransactionScope())
            {
                var libraryId    = CreateId(typeof(Services.Contracts.Container).Name);
                var dataProvider = new DataProvider(this.loggerService, null, libraryId);

                Container container = Container.CreateContainer(1);
                container.Title = "Test";

                Container childContainer = Container.CreateContainer(2);
                childContainer.Title = "ChildContainer";

                Item item = SqlHelper.CreateSqlVideoItem();
                item.Id = 1;
                item.Resources.First().Id = 1;
                item.Resources.First().VideoFormat.Id = 1;

                Item childItem = SqlHelper.CreateSqlVideoItem();
                childItem.Id = 2;
                childItem.Resources.First().Id = 2;
                childItem.Resources.First().VideoFormat.Id = 2;

                container.Items.Add(item);
                childContainer.Items.Add(childItem);

                container.Containers.Add(childContainer);
                context.AddToContainer(container);

                context.SaveChanges();

                var library = dataProvider.LoadLibrary(1000);

                Assert.AreEqual(container.Title, library.Title);
                Assert.AreEqual(1, library.Items.Count);
                Assert.AreEqual(1, library.Containers.Count);
                Assert.AreEqual(childContainer.Title, library.Containers[0].Title);
                Assert.AreEqual(0, library.Containers[0].Items.Count);
                Assert.AreEqual(string.Format(IdUrlTemplate, item.Id), library.Items[0].Id.ToString());
                Assert.AreEqual(item.Title, library.Items[0].Title);
                Assert.AreEqual(item.Description, library.Items[0].Description);
                Assert.IsInstanceOfType(library.Items[0], typeof(VideoItem));
                Assert.AreEqual(1, library.Items[0].Resources.Count);
                Assert.AreEqual(string.Format(IdUrlTemplate, item.Resources.First().Id), library.Items[0].Resources[0].Id.ToString());
                Assert.AreEqual(item.Resources.First().Ref, library.Items[0].Resources[0].Ref);
                Assert.AreEqual(item.Resources.First().ResourceType, library.Items[0].Resources[0].ResourceType);
                Assert.AreEqual(item.Resources.First().VideoFormat.Duration, ((VideoItem)library.Items[0]).Duration);
                Assert.AreEqual(item.Resources.First().VideoFormat.FrameRate, ((VideoItem)library.Items[0]).FrameRate.ToString());
                Assert.AreEqual(item.Resources.First().VideoFormat.ResolutionX, ((VideoItem)library.Items[0]).Width);
                Assert.AreEqual(item.Resources.First().VideoFormat.ResolutionY, ((VideoItem)library.Items[0]).Height);
            }
        }
示例#3
0
        public void ShouldLoadMediaBin()
        {
            var context = new RoughCutEditorEntities();

            using (TransactionScope transactionScope = new TransactionScope())
            {
                var libraryId    = CreateId(typeof(Services.Contracts.Container).Name);
                var dataProvider = new DataProvider(this.loggerService, null, libraryId);

                Project project = Project.CreateProject(1, "creator", DateTime.Now);

                Item item = SqlHelper.CreateSqlVideoItem();
                item.Id = 1;
                item.Resources.First().Id = 1;
                item.Resources.First().VideoFormat.Id = 1;
                Item childItem = SqlHelper.CreateSqlVideoItem();
                childItem.Id = 2;
                childItem.Resources.First().Id = 2;
                childItem.Resources.First().VideoFormat.Id = 2;

                context.AddToItem(item);
                context.AddToItem(childItem);

                context.SaveChanges();

                Container mediaBin = Container.CreateContainer(1);
                mediaBin.Items.Add(item);

                Container childContainer = Container.CreateContainer(2);
                childContainer.Items.Add(childItem);
                mediaBin.Containers.Add(childContainer);

                context.AddToContainer(mediaBin);

                context.SaveChanges();

                var mediaBinContainer = dataProvider.LoadMediaBin(new Uri(string.Format(IdUrlTemplate, mediaBin.Id)));

                Assert.AreEqual(1, mediaBinContainer.Items.Count);
                Assert.AreEqual(1, mediaBinContainer.Containers.Count);
                Assert.AreEqual(0, mediaBinContainer.Containers[0].Items.Count);
                Assert.AreEqual(string.Format(IdUrlTemplate, item.Id), mediaBinContainer.Items[0].Id.ToString());
                Assert.AreEqual(item.Title, mediaBinContainer.Items[0].Title);
                Assert.AreEqual(item.Description, mediaBinContainer.Items[0].Description);
                Assert.IsInstanceOfType(mediaBinContainer.Items[0], typeof(VideoItem));
                Assert.AreEqual(1, mediaBinContainer.Items[0].Resources.Count);
                Assert.AreEqual(string.Format(IdUrlTemplate, item.Resources.First().Id), mediaBinContainer.Items[0].Resources[0].Id.ToString());
                Assert.AreEqual(item.Resources.First().Ref, mediaBinContainer.Items[0].Resources[0].Ref);
                Assert.AreEqual(item.Resources.First().VideoFormat.Duration, ((VideoItem)mediaBinContainer.Items[0]).Duration);
                Assert.AreEqual(item.Resources.First().VideoFormat.FrameRate, ((VideoItem)mediaBinContainer.Items[0]).FrameRate.ToString());
                Assert.AreEqual(item.Resources.First().VideoFormat.ResolutionX, ((VideoItem)mediaBinContainer.Items[0]).Width);
                Assert.AreEqual(item.Resources.First().VideoFormat.ResolutionY, ((VideoItem)mediaBinContainer.Items[0]).Height);
            }
        }
示例#4
0
        public void ShouldLimitResultsWhenLoadingLibraryWithMaxNumberOfItems()
        {
            var context = new RoughCutEditorEntities();

            using (TransactionScope transactionScope = new TransactionScope())
            {
                var libraryId    = CreateId(typeof(Services.Contracts.Container).Name);
                var dataProvider = new DataProvider(this.loggerService, null, libraryId);

                Container container = Container.CreateContainer(1);
                container.Title = "Test";

                Item item1 = SqlHelper.CreateSqlVideoItem();
                item1.Id = 1;
                item1.Resources.First().Id = 1;
                item1.Resources.First().VideoFormat.Id = 1;
                Item item2 = SqlHelper.CreateSqlAudioItem();
                item2.Id = 2;
                item2.Resources.First().Id = 2;
                item2.Resources.First().AudioFormat.Id = 2;
                Item item3 = SqlHelper.CreateSqlImageItem();
                item3.Id = 3;
                item3.Resources.First().Id = 3;
                item3.Resources.First().ImageFormat.Id = 3;

                container.Items.Add(item1);
                container.Items.Add(item2);
                container.Items.Add(item3);

                context.AddToContainer(container);

                context.SaveChanges();

                var maxNumberOfItems = 2;

                var library = dataProvider.LoadLibrary(maxNumberOfItems);

                Assert.AreEqual(maxNumberOfItems, library.Items.Count);
            }
        }