Exemple #1
0
        public async Task GetContentTest()
        {
            var contentEntities = new List <DocumentContentEntity>
            {
                new DocumentContentEntity {
                    Id = "1", Value = "a"
                },
                new DocumentContentEntity {
                    Id = "2", Value = "b"
                },
                new DocumentContentEntity {
                    Id = "3", Value = "b"
                }
            };

            var    documentId          = "documentId";
            string requestedDocumentId = null;

            var documentContentRepositoryMock = new Mock <IDocumentContentRepository>();

            documentContentRepositoryMock.Setup(p => p.GetAllAsync(It.IsAny <string>()))
            .Callback((string id) => { requestedDocumentId = id; })
            .Returns(() => Task.FromResult(contentEntities));

            var contentService = new DocumentContentService(documentContentRepositoryMock.Object, MockObjects.GetMapper());

            var content = await contentService.GetCurrentContentAsync(documentId);

            Assert.NotNull(content);
            Assert.Equal(documentId, requestedDocumentId);
            Assert.Equal(contentEntities.Select(p => p.Id).OrderBy(p => p), content.Keys.OrderBy(p => p));
            Assert.Equal(contentEntities.Select(p => p.Value).OrderBy(p => p), content.Values.OrderBy(p => p));

            documentContentRepositoryMock.Verify(p => p.GetAllAsync(It.IsAny <string>()), Times.Once);
        }
Exemple #2
0
        public async Task AddContentsTest()
        {
            var content = new DocumentContent
            {
                DocumentId = "documentId",
                Id         = "id",
                Value      = "value"
            };

            var contents = new List <DocumentContent> {
                content
            };

            List <DocumentContentEntity> addedEntities = null;

            var documentContentRepositoryMock = new Mock <IDocumentContentRepository>();

            documentContentRepositoryMock.Setup(p => p.AddAsync(It.IsAny <IEnumerable <DocumentContentEntity> >()))
            .Callback((IEnumerable <DocumentContentEntity> e) => { addedEntities = e.ToList(); })
            .Returns(() => Task.FromResult(0));

            var contentService = new DocumentContentService(documentContentRepositoryMock.Object, MockObjects.GetMapper());

            await contentService.AddAsync(contents);

            Assert.Equal(1, addedEntities.Count);

            var addedEntity = addedEntities[0];

            Assert.Equal(content.DocumentId, addedEntity.DocumentId);
            Assert.Equal(content.Id, addedEntity.Id);
            Assert.Equal(content.Value, addedEntity.Value);

            documentContentRepositoryMock.Verify(p => p.AddAsync(It.IsAny <IEnumerable <DocumentContentEntity> >()), Times.Once);
        }
Exemple #3
0
        public async Task AddContentTest()
        {
            var content = new DocumentContent
            {
                DocumentId = "documentId",
                Id         = "id",
                Value      = "value"
            };

            DocumentContentEntity addedEntity = null;

            var documentContentRepositoryMock = new Mock <IDocumentContentRepository>();

            documentContentRepositoryMock.Setup(p => p.AddAsync(It.IsAny <DocumentContentEntity>()))
            .Callback((DocumentContentEntity e) => { addedEntity = e; })
            .Returns(() => Task.FromResult(0));

            var contentService = new DocumentContentService(documentContentRepositoryMock.Object, MockObjects.GetMapper());

            await contentService.AddAsync(content);

            Assert.NotNull(addedEntity);
            Assert.Equal(content.DocumentId, addedEntity.DocumentId);
            Assert.Equal(content.Id, addedEntity.Id);
            Assert.Equal(content.Value, addedEntity.Value);

            documentContentRepositoryMock.Verify(p => p.AddAsync(It.IsAny <DocumentContentEntity>()), Times.Once);
        }
Exemple #4
0
        public async Task Get_WhenSuccess_ReturnsContent()
        {
            var encMock        = new Mock <IEncryptionService>();
            var repositoryMock = new Mock <IDocumentContentRepository>();

            repositoryMock.Setup(x => x.Fetch(It.IsAny <Guid>())).ReturnsAsync(new DocumentContent());
            encMock.Setup(x => x.Decrypt(It.IsAny <string>())).Returns(string.Empty);

            var sut = new DocumentContentService(new CompressionService(), encMock.Object, repositoryMock.Object);

            var expected = await sut.Get(Guid.Empty);

            expected.Should().NotBeNull();
        }
Exemple #5
0
        public async Task Store_WhenSuccess_ReturnsContent()
        {
            var formFile       = new Mock <IFormFile>();
            var encMock        = new Mock <IEncryptionService>();
            var compMock       = new Mock <ICompressionService>();
            var repositoryMock = new Mock <IDocumentContentRepository>();

            repositoryMock.Setup(x => x.Store(It.IsAny <DocumentContent>())).ReturnsAsync(true);
            encMock.Setup(x => x.Encrypt(It.IsAny <byte[]>())).Returns(new byte[1]);
            compMock.Setup(x => x.Compress(It.IsAny <IFormFile>())).Returns(new byte[1]);
            formFile.Setup(x => x.FileName).Returns("aa.txt");

            var sut = new DocumentContentService(compMock.Object, encMock.Object, repositoryMock.Object);

            var expected = await sut.Store(Guid.Empty, formFile.Object);

            expected.Should().BeTrue();
        }
Exemple #6
0
        public async Task RemoveAllContentTest()
        {
            var documentId = "documentId";

            string removedDocumentId = null;

            var documentContentRepositoryMock = new Mock <IDocumentContentRepository>();

            documentContentRepositoryMock.Setup(p => p.RemoveAllAsync(It.IsAny <string>()))
            .Callback((string entity) => { removedDocumentId = entity; })
            .Returns(() => Task.FromResult(0));

            var contentService = new DocumentContentService(documentContentRepositoryMock.Object, MockObjects.GetMapper());

            await contentService.RemoveAllAsync(documentId);

            Assert.Equal(documentId, removedDocumentId);

            documentContentRepositoryMock.Verify(p => p.RemoveAllAsync(It.IsAny <string>()), Times.Once);
        }