public void SomeTest()
        {
            // Arrange
              var context = new ActionExecutingContext();
              var fakeHttpContext = new Mock<HttpContextBase>();
              var fakeRequest = new Mock<HttpRequestBase>();
              var user = new Mock<Brony>();

              context.HttpContext = fakeHttpContext.Object;
              fakeHttpContext.Get(x=>x.Request, fakeRequest.Object);
              fakeRequest.Get(x => x.User, fakeUser.Object);
              user.Get(x=> x.FavouritePony, "Rainbow Dash");

              var loggerMock = new Mock<FavouritePonyLogger>();
              var attribute = new LogMyFavouritePony(logger.Object);

              // Act
              attribute.OnActionExecuting(context.Object);

              // Assert
              loggerMock.WasCalled(x=>x.LogFavouritePony(y=> Is.EqualTo(y, "Rainbow Dash")));
        }