public void 途中でNGユーザに指定された時に非表示になるか()
        {
            var userId      = "abc";
            var options     = new Mock <ICommentOptions>();
            var nicoOptions = new Mock <INicoSiteOptions>();

            nicoOptions.Setup(o => o.IsShow184).Returns(true);
            nicoOptions.Setup(o => o.IsAutoSetNickname).Returns(true);
            var user = new UserTest(userId)
            {
                IsNgUser = false
            };
            var chat = new Chat()
            {
                UserId = userId,
                Text   = "",
            };
            var ms              = new Mock <IMs>();
            var roomInfo        = new Mock <RoomInfo>(ms.Object, "");
            var commentProvider = new Mock <ICommentProvider>();
            var cvm             = new NicoCommentViewModel2(options.Object, nicoOptions.Object, chat, roomInfo.Object.RoomLabel, user, commentProvider.Object, false);

            Assert.IsTrue(cvm.IsVisible);
            user.IsNgUser = true;
            Assert.IsFalse(cvm.IsVisible);
        }
        private NicoCommentViewModel2 CreateCvm(IUser user, string userid, string message)
        {
            var options         = new Mock <ICommentOptions>();
            var nicoOptionsMock = new Mock <INicoSiteOptions>();

            nicoOptionsMock.Setup(s => s.IsAutoSetNickname).Returns(true);
            var chat = new Chat()
            {
                UserId = userid,
                Text   = message,
            };
            var ms              = new Mock <IMs>();
            var roomInfo        = new Mock <RoomInfo>(ms.Object, "");
            var commentProvider = new Mock <ICommentProvider>();
            var siteOptions     = nicoOptionsMock.Object;
            var cvm             = new NicoCommentViewModel2(options.Object, siteOptions, chat, roomInfo.Object.RoomLabel, user, commentProvider.Object, false);

            return(cvm);
        }
        public void VisibilityTest(bool isShow184, bool is184, bool isNgUser, bool isVisible)
        {
            var options     = new Mock <ICommentOptions>();
            var nicoOptions = new Mock <INicoSiteOptions>();

            nicoOptions.Setup(o => o.IsShow184).Returns(isShow184);
            nicoOptions.Setup(o => o.IsAutoSetNickname).Returns(true);
            var userMock = new Mock <IUser>();

            userMock.Setup(u => u.IsNgUser).Returns(isNgUser);
            var chat = new Chat()
            {
                UserId = is184 ? "abc" : "123",
                Text   = "",
            };
            var ms              = new Mock <IMs>();
            var roomInfo        = new Mock <RoomInfo>(ms.Object, "");
            var commentProvider = new Mock <ICommentProvider>();
            var cvm             = new NicoCommentViewModel2(options.Object, nicoOptions.Object, chat, roomInfo.Object.RoomLabel, userMock.Object, commentProvider.Object, false);

            Assert.AreEqual(isVisible, cvm.IsVisible);
        }