Globally Recognised Avatar - http://gravatar.com
This implementation by Andrew Freemantle - http://www.fatlemon.co.uk/

Source, Wiki and Issues: https://github.com/AndrewFreemantle/Gravatar-HtmlHelper

        public void Expect_ToForceDefaultImg_WhenGIvenParam()
        {
            // Arrange
            var mockViewContext       = new Mock <ViewContext>();
            var mockViewDataContainer = new Mock <IViewDataContainer>();
            var htmlHelper            = new HtmlHelper(mockViewContext.Object, mockViewDataContainer.Object);

            // Act
            var result = GravatarHtmlHelper.GravatarImage(htmlHelper, string.Empty, forceDefaultImage: true);

            // Assert
            Assert.IsInstanceOf <HtmlString>(result);
            StringAssert.Contains("f=y", result.ToString());
        }
        public void Expect_ToSwitchToUnsecure_WhenGivenParam()
        {
            // Arrange
            var mockViewContext       = new Mock <ViewContext>();
            var mockViewDataContainer = new Mock <IViewDataContainer>();
            var htmlHelper            = new HtmlHelper(mockViewContext.Object, mockViewDataContainer.Object);

            // Act
            var result = GravatarHtmlHelper.GravatarImage(htmlHelper, string.Empty, forceSecureRequest: false);

            // Assert
            Assert.IsInstanceOf <HtmlString>(result);
            StringAssert.DoesNotContain("https", result.ToString());
        }
        public void Expect_ToReturnCorrectImageTagWithCustomImage()
        {
            // Arrange
            var email     = "*****@*****.**";
            var emailHash = "b642b4217b34b1e8d3bd915fc65c4452";

            var mockViewContext       = new Mock <ViewContext>();
            var mockViewDataContainer = new Mock <IViewDataContainer>();
            var htmlHelper            = new HtmlHelper(mockViewContext.Object, mockViewDataContainer.Object);

            // Act
            var result = GravatarHtmlHelper.GravatarImage(htmlHelper,
                                                          email,
                                                          defaultImageUrl: "test.jpg");

            // Assert
            Assert.IsInstanceOf <HtmlString>(result);
            StringAssert.Contains(emailHash, result.ToString());
            StringAssert.Contains("d=test.jpg", result.ToString());
        }