DocSpace-client/products/ASC.Files/Tests/SharedWithMeTest.cs

108 lines
4.6 KiB
C#
Raw Normal View History

2020-11-12 03:55:14 +00:00
using ASC.Api.Documents;
2020-11-25 19:57:57 +00:00
using ASC.Core;
using ASC.Web.Api.Models;
2020-11-12 03:55:14 +00:00
using ASC.Web.Files.Services.WCFService.FileOperations;
using NUnit.Framework;
using System;
2020-11-25 19:57:57 +00:00
using System.Collections.Generic;
2020-11-12 03:55:14 +00:00
namespace ASC.Files.Tests
{
[TestFixture]
2020-11-25 19:57:57 +00:00
class SharedWithMeTest : BaseFilesTests
2020-11-12 03:55:14 +00:00
{
2020-11-25 19:57:57 +00:00
private FolderWrapper<int> TestFolder { get; set; }
public IEnumerable<FileShareParams> TestFolderParam { get; private set; }
private FileWrapper<int> aa { get; set; }
//private const int CURRENT_TENANT = 0;
//public const string PASSWORD = "111111";
//public const string DOMAIN = "test_mail.com";
public TenantManager tenantManager { get; private set; }
public EmployeeWraperFull TestUser { get; private set; }
2020-11-12 03:55:14 +00:00
[SetUp]
public override void SetUp()
{
base.SetUp();
2020-11-25 19:57:57 +00:00
TestFolder = FilesControllerHelper.CreateFolder(GlobalFolderHelper.FolderMy, "TestFolder");
TestUser = new EmployeeWraperFull { Id = Guid.NewGuid(), Email = "test@mail.com", FirstName = "Test", LastName = "Test", IsAdmin = true };
//Guid OwnerId = Guid.Parse("005bb3ff-7de3-47d2-9b3d-61b9ec8a76a5");
2020-11-30 23:47:19 +00:00
UserManager.GetUsers(Guid.Parse("005bb3ff-7de3-47d2-9b3d-61b9ec8a76a5"));
TestFolderParam = new List<FileShareParams> { new FileShareParams { Access = Core.Security.FileShare.Read, ShareTo = TestUser.Id } };
2020-11-25 19:57:57 +00:00
var TestFolderShare = (FolderWrapper<int>)FilesControllerHelper.SetFolderSecurityInfo(TestFolder.Id, TestFolderParam, true, "test");
2020-11-12 03:55:14 +00:00
}
[TestCaseSource(typeof(DocumentData), nameof(DocumentData.GetCreateFolderItems))]
[Category("section 'Shared Documents'")]
public void CreateSharedFolderReturnsFolderWrapperTest(string folderTitle)
{
var folderWrapper = Assert.Throws<InvalidOperationException>(() => FilesControllerHelper.CreateFolder(GlobalFolderHelper.FolderShare, folderTitle));
Assert.That(folderWrapper.Message == "You don't have enough permission to create");
}
2020-11-25 19:57:57 +00:00
[TestCaseSource(typeof(DocumentData), nameof(DocumentData.ShareParamToFolder))]
[Category("section 'Shared Documents'")]
public void ShareFolderToAnotherUser (string folderTitle, bool notify, string message)
{
var folderWrapper = FilesControllerHelper.CreateFolder(GlobalFolderHelper.FolderMy, folderTitle);
var shareFolder = FilesControllerHelper.SetFolderSecurityInfo(folderWrapper.Id, TestFolderParam, notify, message);
Assert.IsNotNull(shareFolder);
2020-11-30 23:47:19 +00:00
Assert.AreEqual(folderWrapper.Id, shareFolder);
2020-11-25 19:57:57 +00:00
}
[TestCaseSource(typeof(DocumentData), nameof(DocumentData.GetFolderInfoItems))]
[Category("section 'Shared Documents'")]
public void GetSharedFolderInfo(string folderTitleExpected)
{
SecurityContext.AuthenticateMe(TestUser.Id);
2020-11-30 23:47:19 +00:00
var folderWrapper = FilesControllerHelper.GetFolderInfo(TestFolder.Id);
2020-11-25 19:57:57 +00:00
Assert.IsNotNull(folderWrapper);
//Assert.AreEqual(folderTitleExpected, folderWrapper.Title);
}
2020-11-12 03:55:14 +00:00
[TestCaseSource(typeof(DocumentData), nameof(DocumentData.GetRenameFolderItems))]
[Category("section 'Shared Documents'")]
public void RenameSharedFolderReturnsFolderWrapperTest(int folderId, string folderTitle)
{
2020-11-25 19:57:57 +00:00
SecurityContext.AuthenticateMe(TestUser.Id);
var fileWrapper = Assert.Throws<InvalidOperationException>(() => FilesControllerHelper.RenameFolder(TestFolder.Id, folderTitle));
2020-11-12 03:55:14 +00:00
Assert.That(fileWrapper.Message == "You don't have enough permission to rename the folder");
}
[TestCaseSource(typeof(DocumentData), nameof(DocumentData.GetDeleteFolderItems))]
[Category("section 'Shared Documents'")]
public void DeleteSharedFolderTest(int folderId, bool deleteAfter, bool immediately)
{
2020-11-25 19:57:57 +00:00
SecurityContext.AuthenticateMe(TestUser.Id);
2020-11-12 03:55:14 +00:00
var statuses = FilesControllerHelper.DeleteFolder(
2020-11-25 19:57:57 +00:00
TestFolder.Id,
2020-11-12 03:55:14 +00:00
deleteAfter,
immediately);
FileOperationWraper status = null;
foreach (var item in statuses)
{
if (item.OperationType == FileOperationType.Delete)
{
status = item;
}
}
var statusDelete = FileOperationType.Delete;
Assert.IsNotNull(status);
Assert.AreEqual(statusDelete, status.OperationType);
}
2020-11-25 19:57:57 +00:00
2020-11-12 03:55:14 +00:00
[TearDown]
public override void TearDown()
{
base.TearDown();
}
}
}