public void CreateDocumentsAsync_NullInputDocuments_ThrowsArgumentNullException() { var cabinetContext = new CabinetContext(_dbOptions); var documentService = new DocumentService(cabinetContext, _documentManager); Assert.ThrowsAsync <ArgumentNullException>(() => documentService.CreateDocumentsAsync(null)); }
public async Task CreateDocumentsAsync_Success() { var cabinetContext = new CabinetContext(_dbOptions); IEnumerable <DocumentWithFileInputModel> documents = getFakeDocumentWithFile(); var documentService = new DocumentService(cabinetContext, _documentManager); var result = await documentService.CreateDocumentsAsync(documents); Assert.IsTrue(result.All(r => r.Success)); }
public void AddOriginalAsync_ThrowsArgumentNullException() { var cabinetContext = new CabinetContext(_dbOptions); var fakeDocument = TestHelper.GetFakeDocument(); var fakeOriginal = TestHelper.GetFakeOriginal(); var documentManager = new DocumentManager(cabinetContext, _storage); Assert.ThrowsAsync <ArgumentNullException>(() => documentManager.AddOriginalAsync(fakeDocument, null)); Assert.ThrowsAsync <ArgumentNullException>(() => documentManager.AddOriginalAsync(null, fakeOriginal)); }
public async Task AddOriginalAsync_Success() { var cabinetContext = new CabinetContext(_dbOptions); var fakeDocument = TestHelper.GetFakeDocument(); var fakeOriginal = TestHelper.GetFakeOriginal(); var documentManager = new DocumentManager(cabinetContext, _storage); var original = await documentManager.AddOriginalAsync(fakeDocument, fakeOriginal); Assert.IsNotNull(original); Assert.AreEqual(fakeDocument.ID, original.DocumentID); Assert.IsTrue(File.Exists(Path.Combine(_testDirectory, original.StoragePath))); }
public async Task GetDocumentsPaginatedAsync_ByOrganizationReceiver_Success() { var cabinetContext = new CabinetContext(_dbOptions); var docType = TestHelper.GetFakeDocumentType(); cabinetContext.DocumentTypes.Add(docType); cabinetContext.SaveChanges(); var document = TestHelper.GetFakeDocument(); document.DocumentTypeID = docType.ID; cabinetContext.Documents.Add(document); cabinetContext.SaveChanges(); var searchParameters = new DocumentsFilter { OrganizationReceiverID = document.OrganizationID }; var documentService = new DocumentService(cabinetContext, _documentManager); var documents = await documentService.GetDocumentsPaginatedAsync(searchParameters, 50, 0); Assert.AreEqual(0, documents.Data.Count()); }
public void CleanUp() { var directories = Directory.GetDirectories(_testDirectory); foreach (string dir in directories) { var files = Directory.GetFiles(dir); foreach (var file in files) { File.Delete(file); } Directory.Delete(dir); } Directory.Delete(_testDirectory); var cabinetContext = new CabinetContext(_dbOptions); cabinetContext.Documents.RemoveRange(cabinetContext.Documents); cabinetContext.DocumentTypes.RemoveRange(cabinetContext.DocumentTypes); cabinetContext.DocumentsAccesses.RemoveRange(cabinetContext.DocumentsAccesses); cabinetContext.SaveChanges(); }
public DocumentService(CabinetContext context, DocumentManager documentManager) { _context = context ?? throw new ArgumentNullException(nameof(context)); _documentManager = documentManager ?? throw new ArgumentNullException(nameof(documentManager)); _documentManager.AutoSaveChanges = false; }
public DocumentManager(CabinetContext cabinetContext, IStorage storage) { _context = cabinetContext; _storage = storage; }