public void RenderPhysicalGameProduct_CurrentUserIsMember()
        {
            Guid gameProductId = new Guid("976ACE77-D87C-4EBE-83A0-46F911F6490E");
            PhysicalGameProduct gameProduct = new PhysicalGameProduct()
            {
                Id = gameProductId
            };

            Member wishlistOwner = new Member
            {
                UserId = Id,
                WishListVisibility = WishListVisibility.FriendsOnly,
                RequestedFriendships = new List<Friendship>(),
                ReceivedFriendships = new List<Friendship>(),
                UserAccount = new DataModels.Models.Identity.User()
                {
                    UserName = "******"
                }
            };

            Member currentMember = new Member
            {
                UserId = UserId,
                Wishlist = new List<Product>
                {
                    gameProduct
                },
                Cart = new Cart
                {
                    Items = new List<CartItem>
                    {
                        new CartItem
                        {
                            Product = gameProduct,
                            ProductId = gameProduct.Id,
                            IsNew = true,
                            MemberId = UserId,
                            Quantity = 1
                        },
                        new CartItem
                        {
                            Product = gameProduct,
                            ProductId = gameProduct.Id,
                            IsNew = false,
                            MemberId = UserId,
                            Quantity = 1
                        }
                    }
                }
            };

            List<Member> members = new List<Member>
            {
                wishlistOwner,
                currentMember
            };

            Mock<IVeilDataAccess> dbStub = TestHelpers.GetVeilDataAccessFake();

            Mock<DbSet<Member>> memberDbSetStub = TestHelpers.GetFakeAsyncDbSet(members.AsQueryable());
            memberDbSetStub.Setup(db => db.Find(currentMember.UserId)).Returns(currentMember);
            memberDbSetStub.Setup(db => db.Find(wishlistOwner.UserId)).Returns(wishlistOwner);
            dbStub.Setup(db => db.Members).Returns(memberDbSetStub.Object);

            Mock<ControllerContext> context = new Mock<ControllerContext>();
            context.Setup(c => c.HttpContext.User.Identity).Returns<IIdentity>(null);
            context.Setup(c => c.HttpContext.User.Identity.IsAuthenticated).Returns(true);

            Mock<IGuidUserIdGetter> idGetterStub = new Mock<IGuidUserIdGetter>();
            idGetterStub.Setup(id => id.GetUserId(It.IsAny<IIdentity>())).Returns(currentMember.UserId);

            WishlistController controller = new WishlistController(dbStub.Object, idGetterStub.Object)
            {
                ControllerContext = context.Object
            };

            var result = controller.RenderPhysicalGameProduct(gameProduct, wishlistOwner.UserId) as PartialViewResult;

            Assert.That(result != null);
            Assert.That(result.Model, Is.InstanceOf<WishlistPhysicalGameProductViewModel>());

            var model = (WishlistPhysicalGameProductViewModel)result.Model;

            Assert.That(model.GameProduct.Id, Is.EqualTo(gameProduct.Id));
            Assert.That(model.NewIsInCart);
            Assert.That(model.UsedIsInCart);
            Assert.That(model.ProductIsOnWishlist);
            Assert.That(!model.MemberIsCurrentUser);
        }