コード例 #1
0
        public async Task FileUtility_GetHealth_ReturnsActiveHeathCheckResult_WhenAllGood()
        {
            //Arrange
            const string fileContents  = "<helloworld/>";
            var          fileBytes     = Encoding.ASCII.GetBytes(fileContents);
            const string fileName      = "helloworld.txt";
            var          getFileResult = new GetFileResult(fileBytes, fileName);

            var getFileResultBehaviorMock = new Mock <IGetFileBehavior>();

            getFileResultBehaviorMock.Setup(x => x.GetFileAsync(It.IsAny <string>())).Returns(Task.FromResult(HttpFragileOperationResult <GetFileResult> .CreateSuccessfulResult(getFileResult, HttpStatusCode.OK, "")));

            const string resultIdentifier = "123456";
            var          storeFileResult  = new StoreFileResult(resultIdentifier);

            var storeFileResultBehaviorMock = new Mock <IStoreFileBehavior>();

            storeFileResultBehaviorMock.Setup(x => x.StoreFileAsync(It.IsAny <byte[]>(), It.IsAny <string>())).Returns(Task.FromResult(HttpFragileOperationResult <StoreFileResult> .CreateSuccessfulResult(storeFileResult, HttpStatusCode.OK, "")));

            var getPublicUrlResult       = new GetPublicUrlResult("SomeUrl");
            var getPublicUrlBehaviorMock = new Mock <IGetPublicUrlBehavior>();

            getPublicUrlBehaviorMock.Setup(x => x.GetPublicUrlAsync(It.IsAny <string>(), It.IsAny <int>())).Returns(Task.FromResult(HttpFragileOperationResult <GetPublicUrlResult> .CreateSuccessfulResult(getPublicUrlResult, HttpStatusCode.OK, "")));

            var fileUtility = new FileUtility(getFileResultBehaviorMock.Object, storeFileResultBehaviorMock.Object, getPublicUrlBehaviorMock.Object);

            var result = await fileUtility.GetHealthAsync().ConfigureAwait(false);

            Assert.AreEqual(HealthStatus.Active, result.Status);
            Assert.AreEqual("Files", result.Description);
            Assert.AreEqual(3, result.Vitals.Count);
        }
コード例 #2
0
        public async Task FileUtility_StoreFile_ReturnsStoreFileBehaviorResult()
        {
            //Arrange
            const string resultIdentifier = "123456";
            var          storeFileResult  = new StoreFileResult(resultIdentifier);

            var storeFileResultBehaviorMock = new Mock <IStoreFileBehavior>();

            storeFileResultBehaviorMock.Setup(x => x.StoreFileAsync(It.IsAny <byte[]>(), It.IsAny <string>())).Returns(Task.FromResult(HttpFragileOperationResult <StoreFileResult> .CreateSuccessfulResult(storeFileResult, HttpStatusCode.OK, "")));

            //Act
            var result = await storeFileResultBehaviorMock.Object.StoreFileAsync(new byte[] { }, "blah.txt").ConfigureAwait(false);

            //Assert
            Assert.AreEqual(resultIdentifier, result.Result.Identifier);
            Assert.AreEqual(Status.Success, result.Status);
            Assert.AreEqual(0, result.ErrorMessages.Count());
        }