public void HaveAuthenticationAttribute_AndCheckForModeratorRole()
        {
            var baseType = typeof(ModeratorBaseController);

            var mockedVideoService = new Mock <IVideoService>();
            var mockedVideoFactory = new Mock <IVideoFactory>();
            var mockedDateProvider = new Mock <IDateProvider>();

            var lakeController = new VideoController(mockedVideoService.Object, mockedVideoFactory.Object, mockedDateProvider.Object);

            Assert.IsTrue(baseType.IsAssignableFrom(lakeController.GetType()));
            var methodsInfo = lakeController.GetType().GetMethods();

            foreach (var method in methodsInfo)
            {
                if (method.Name == "Add")
                {
                    var attributes = method.DeclaringType.BaseType.CustomAttributes.Any(a => a.NamedArguments.Any(n => n.MemberName == "Roles" && n.TypedValue.Value.ToString() == "Moderator"));
                    Assert.IsTrue(attributes);
                }
            }
        }