Exemplo n.º 1
0
        public static IdenticonResult Map(byte[] image, int size)
        {
            IdenticonResult result = new IdenticonResult
            {
                Identicon = image,
                Size      = size
            };

            return(result);
        }
        public void ExecuteResult_WithNullEtag_DoesNotAddEtagToHeader()
        {
            // arrange
            var result  = new IdenticonResult(123, 40, "");
            var context = new Mock <ControllerContext>();

            context.Setup(c => c.HttpContext.Response.AppendHeader("ETag", It.IsAny <string>())).Throws(new InvalidOperationException());
            context.Setup(c => c.HttpContext.Response.OutputStream).Returns(new MemoryStream());

            // act, assert
            result.ExecuteResult(context.Object);
        }
        public void ExecuteResult_SetsProperContentType()
        {
            // arrange
            var result  = new IdenticonResult(123, 40, "");
            var context = new Mock <ControllerContext>();

            context.SetupSet(c => c.HttpContext.Response.ContentType, "image/png");
            context.Setup(c => c.HttpContext.Response.OutputStream).Returns(new MemoryStream());

            // act
            result.ExecuteResult(context.Object);

            // assert
            context.VerifySet(c => c.HttpContext.Response.ContentType, "image/png");
        }
        public void ExecuteResult_ClearsResponse()
        {
            // arrange
            var  result          = new IdenticonResult(123, 40, null);
            var  context         = new Mock <ControllerContext>();
            bool responseCleared = false;

            context.Setup(c => c.HttpContext.Response.Clear()).Callback(() => responseCleared = true);
            context.Setup(c => c.HttpContext.Response.OutputStream).Returns(new MemoryStream());

            // act
            result.ExecuteResult(context.Object);

            // assert
            Assert.IsTrue(responseCleared);
        }
        public void ExecuteResult_WithEtag_AddsEtagToHeader()
        {
            // arrange
            var    result  = new IdenticonResult(123, 40, "some-etag-value");
            var    context = new Mock <ControllerContext>();
            string etag    = null;

            context.Setup(c => c.HttpContext.Response.AppendHeader("ETag", It.IsAny <string>())).Callback <string, string>((key, value) => etag = value);
            context.Setup(c => c.HttpContext.Response.OutputStream).Returns(new MemoryStream());

            // act
            result.ExecuteResult(context.Object);

            // assert
            Assert.AreEqual("some-etag-value", etag);
        }
Exemplo n.º 6
0
        /// <summary>
        /// 获取头像
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public IActionResult GetAvatar(string id)
        {
            if (string.IsNullOrEmpty(id))
            {
                return(null);
            }
            var broker = PersistBrokerFactory.GetPersistBroker();
            var user   = broker.Retrieve <user_info>(id);

            if (!string.IsNullOrEmpty(user?.avatar))
            {
                var config = StoreConfig.Config;
                return(ServiceContainer.Resolve <IStoreStrategy>(config?.Type).DownLoad(user.avatar)?.Result);
            }
            return(IdenticonResult.FromValue(id, 64));
        }
Exemplo n.º 7
0
        public async Task <IActionResult> Avatar()
        {
            var user = await _userManager.GetUserAsync(User);

            return(IdenticonResult.FromValue(user.Email + user.Id, 64));
        }
 protected IActionResult Get(string aValue, int aSize) => IdenticonResult.FromValue(aValue, aSize);
Exemplo n.º 9
0
 public IActionResult Icon(string value, int size)
 {
     return(IdenticonResult.FromValue(value, size));
 }