Ejemplo n.º 1
0
        public async Task UpdateAsync_ShouldReturnDataWhenFileIsNotNull()
        {
            // ARRANGE
            var expected = new UmkFile {
                Id = 1, Active = true, CreatedAt = new DateTime(2020, 05, 1), FileName = "FileNameNew", FileSize = 1000, FileType = GetTestFileTypes().First(), Name = "NameNew", SubjectId = 1, TermId = 1, UpdatedAt = new DateTime(2020, 05, 2)
            };

            var mockUmkQuery = new Mock <IUmkFilesQuery>();

            mockUmkQuery
            .Setup(u => u.Update(It.IsAny <int>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <double?>(), It.IsAny <string>()))
            .ReturnsAsync(expected);

            var mockRaspredelenie = new Mock <IRaspredelenieQuery>();

            mockRaspredelenie.Setup(r => r.CheckTeacherBySubjectAndTerm(It.IsAny <short>(), It.IsAny <int>(), It.IsAny <byte>()))
            .ReturnsAsync(new SPBoolResult {
                Result = true
            });

            var mockContextFactory = SetupContextFactory(mockUmkQuery.Object, null, mockRaspredelenie.Object);

            var mockFormFile = new Mock <IFormFile>();

            mockFormFile.SetupGet(f => f.ContentType).Returns(GetTestFileTypes().First().Type);
            mockFormFile.SetupGet(f => f.FileName).Returns(expected.FileName);

            var mockFileService = new Mock <IFileService <UmkFilesConfiguration> >();

            mockFileService
            .Setup(f => f.UploadAsync(It.IsAny <IFormFile>()))
            .ReturnsAsync(expected.FileName);

            _sut = new UmkFileService(mockContextFactory.Object, _mapper, mockFileService.Object);
            var request = new UpdateRequest {
                Id = 1, Name = expected.Name, UmkFile = mockFormFile.Object
            };

            // ACT
            var actual = await _sut.UpdateAsync(request);

            // ASSERT
            Assert.Equal(expected, actual.Entity);
        }
Ejemplo n.º 2
0
        public async Task CreateAsync_ShouldReturnErrorWhenExceptionInFileService()
        {
            // ARRANGE
            var expected = new UmkFile {
                Id = 10, Active = true, CreatedAt = new DateTime(2020, 05, 1), FileName = "FileNameNew", FileSize = 1000, FileType = GetTestFileTypes().First(), Name = "NameNew", SubjectId = 1, TermId = 1, UpdatedAt = new DateTime(2020, 05, 2)
            };

            var mockRaspredelenie = new Mock <IRaspredelenieQuery>();

            mockRaspredelenie.Setup(r => r.CheckTeacherBySubjectAndTerm(It.IsAny <short>(), It.IsAny <int>(), It.IsAny <byte>()))
            .ReturnsAsync(new SPBoolResult {
                Result = true
            });
            var mockContextFactory = SetupContextFactory(null, null, mockRaspredelenie.Object);

            var mockFormFile = new Mock <IFormFile>();

            mockFormFile.SetupGet(f => f.ContentType).Returns(GetTestFileTypes().First().Type);
            mockFormFile.SetupGet(f => f.FileName).Returns(expected.FileName);

            var mockFileService = new Mock <IFileService <UmkFilesConfiguration> >();

            mockFileService
            .Setup(f => f.UploadAsync(It.IsAny <IFormFile>()))
            .ThrowsAsync(new Exception("File is too big"));

            _sut = new UmkFileService(mockContextFactory.Object, _mapper, mockFileService.Object);
            var request = new CreateRequest {
                Name = expected.Name, SubjectId = 1, TermId = 1, UmkFile = mockFormFile.Object
            };

            // ACT
            var actual = await _sut.CreateAsync(request);

            // ASSERT
            Assert.Equal("File is too big", actual.Error.Message);
        }