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); } }
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); } }
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); } }
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); } }