Exemple #1
0
        public void VerifyThatPropertiesAreSet()
        {
            var domainFileStoreRowViewModel = new DomainFileStoreRowViewModel(this.store, this.session.Object, null);

            this.file.FileRevision.Add(this.fileRevision1);

            var viewModel = new FileRowViewModel(this.file, this.session.Object, domainFileStoreRowViewModel, this.fileStoreFileAndFolderHandler.Object);

            Assert.AreEqual(this.fileRevision1.CreatedOn.ToString(CultureInfo.InvariantCulture), viewModel.CreatedOn);
            Assert.AreEqual(this.fileRevision1.Name, viewModel.Name);
            Assert.AreEqual(this.fileRevision1.Creator.Person.Name, viewModel.CreatorValue);
            Assert.IsFalse(viewModel.IsLocked);
            Assert.AreEqual(string.Empty, viewModel.Locker);
            Assert.AreEqual("1", viewModel.Name);
            this.fileStoreFileAndFolderHandler.Verify(x => x.UpdateFileRowPosition(this.file, It.IsAny <FileRevision>()), Times.Never);

            this.file.LockedBy = this.person;
            this.revisionNumberPropertyInfo.SetValue(this.file, 10);
            CDPMessageBus.Current.SendObjectChangeEvent(this.file, EventKind.Updated);

            Assert.IsTrue(viewModel.IsLocked);
            Assert.AreEqual("John Doe", viewModel.Locker);
            this.fileStoreFileAndFolderHandler.Verify(x => x.UpdateFileRowPosition(this.file, It.IsAny <FileRevision>()), Times.Never);

            this.file.FileRevision.Add(this.fileRevision2);
            this.revisionNumberPropertyInfo.SetValue(this.file, 11);
            CDPMessageBus.Current.SendObjectChangeEvent(this.file, EventKind.Updated);

            Assert.AreEqual(this.fileRevision2.CreatedOn.ToString(CultureInfo.InvariantCulture), viewModel.CreatedOn);
            Assert.AreEqual(this.fileRevision2.Name, viewModel.Name);
            Assert.AreEqual(this.fileRevision2.Creator.Person.Name, viewModel.CreatorValue);
            this.fileStoreFileAndFolderHandler.Verify(x => x.UpdateFileRowPosition(this.file, It.IsAny <FileRevision>()), Times.Once);
        }
Exemple #2
0
        public void VerifyUpdateFileRowsAddsNewFiles()
        {
            this.store.Folder.Add(this.folder1);
            this.file.FileRevision.Add(this.fileRevision1);
            this.file1.FileRevision.Add(this.file1Revision1);
            this.file.FileRevision.First().ContainingFolder = this.folder1;

            this.store.File.Add(this.file);
            this.store.File.Add(this.file1);

            var row = new DomainFileStoreRowViewModel(this.store, this.session.Object, null);

            Assert.AreEqual(2, row.ContainedRows.Count);
            Assert.AreEqual(this.folder1.Name, row.ContainedRows.OfType <FolderRowViewModel>().FirstOrDefault()?.Name);
            Assert.AreEqual(1, row.ContainedRows.OfType <FolderRowViewModel>().FirstOrDefault()?.ContainedRows.Count);
            Assert.IsInstanceOf <FileRowViewModel>(row.ContainedRows[1]);
        }
Exemple #3
0
        public void VerifyUpdateFolderRowsAddsNewFolders()
        {
            this.store = new DomainFileStore(Guid.NewGuid(), this.assembler.Cache, this.uri);
            var newTopLevelFolder = new Folder();

            newTopLevelFolder.Name = "TopLevelFolder";
            var newContainedFolder = new Folder();

            newContainedFolder.Name             = "ContainedFolder";
            newContainedFolder.ContainingFolder = newTopLevelFolder;
            this.store.Folder.Add(newTopLevelFolder);
            this.store.Folder.Add(newContainedFolder);
            var row = new DomainFileStoreRowViewModel(store, session.Object, null);

            Assert.AreSame(newTopLevelFolder.Name, ((FolderRowViewModel)row.ContainedRows.FirstOrDefault()).Name);
            Assert.AreSame(newContainedFolder.Name, ((FolderRowViewModel)row.ContainedRows.FirstOrDefault().ContainedRows.FirstOrDefault()).Name);
        }
Exemple #4
0
        public void VerifyUpdateFolderRowsAddsNewFolders()
        {
            var newTopLevelFolder = new Folder
            {
                Name = "TopLevelFolder"
            };

            var newContainedFolder = new Folder
            {
                Name             = "ContainedFolder",
                ContainingFolder = newTopLevelFolder
            };

            this.store.Folder.Add(newTopLevelFolder);
            this.store.Folder.Add(newContainedFolder);
            var row = new DomainFileStoreRowViewModel(this.store, this.session.Object, null);

            Assert.AreSame(newTopLevelFolder.Name, row.ContainedRows.OfType <FolderRowViewModel>().FirstOrDefault()?.Name);
            Assert.AreSame(newContainedFolder.Name, row.ContainedRows.OfType <FolderRowViewModel>().FirstOrDefault()?.ContainedRows.OfType <FolderRowViewModel>().FirstOrDefault()?.Name);
        }
Exemple #5
0
        public async Task VerifyThatDropWorks()
        {
            var row = new DomainFileStoreRowViewModel(this.store, this.session.Object, null);

            var dropTarget = new Mock <IDropTarget>();
            var dropinfo   = new Mock <IDropInfo>();

            dropinfo.Setup(x => x.Payload).Returns(this.file);
            dropinfo.Setup(x => x.Effects).Returns(DragDropEffects.Copy);
            dropinfo.Setup(x => x.TargetItem).Returns(dropTarget.Object);

            await row.Drop(dropinfo.Object);

            this.session.VerifyGet(x => x.OpenIterations, Times.Never);

            this.file.CurrentContainingFolder = this.folder1;

            await row.Drop(dropinfo.Object);

            this.session.VerifyGet(x => x.OpenIterations, Times.Once);
        }
Exemple #6
0
        public void VerifyThatDragOverWorks()
        {
            var row = new DomainFileStoreRowViewModel(this.store, this.session.Object, null);

            var dropinfo = new Mock <IDropInfo>();

            dropinfo.Setup(x => x.Payload).Returns(this.file);

            row.DragOver(dropinfo.Object);
            dropinfo.VerifySet(x => x.Effects = DragDropEffects.None);

            this.file.CurrentContainingFolder = this.folder1;

            row.DragOver(dropinfo.Object);
            dropinfo.VerifySet(x => x.Effects = DragDropEffects.Copy);

            this.file.Container = this.folder1;

            row.DragOver(dropinfo.Object);
            dropinfo.VerifySet(x => x.Effects = DragDropEffects.None, Times.Exactly(2));
        }
Exemple #7
0
        public void VerifyUpdateFileRowsAddsNewFiles()
        {
            this.store   = new DomainFileStore(Guid.NewGuid(), this.assembler.Cache, this.uri);
            this.folder1 = new Folder(Guid.NewGuid(), this.assembler.Cache, this.uri)
            {
                Name      = "1",
                CreatedOn = new DateTime(1, 1, 1),
                Creator   = this.participant
            };
            this.store.Folder.Add(this.folder1);
            this.file.FileRevision.Add(this.fileRevision1);
            this.file1.FileRevision.Add(this.file1Revision1);
            this.file.FileRevision.First().ContainingFolder = this.folder1;

            this.store.File.Add(this.file);
            this.store.File.Add(file1);

            var row = new DomainFileStoreRowViewModel(store, session.Object, null);

            Assert.AreEqual(2, row.ContainedRows.Count);
            Assert.AreEqual(folder1.Name, ((FolderRowViewModel)row.ContainedRows.FirstOrDefault()).Name);
            Assert.AreEqual(1, ((FolderRowViewModel)row.ContainedRows.FirstOrDefault()).ContainedRows.Count);
            Assert.IsInstanceOf <FileRowViewModel>(row.ContainedRows[1]);
        }