Ejemplo n.º 1
0
        public void AddWishListItem(UserId id, WishListItemId wishlistItemId, RestaurantId restoId, string someNotes)
        {
            if (_disabled)
            {
                throw new AggregateException("Can not add a to the wish list of a disabled user.");
            }

            if (MyWishListIsEmpty() || ThatResturantIsNotInMyWishList(restoId))
            {
                ApplyChange(UserEvents.WishListItemAdded(id, wishlistItemId, restoId, someNotes));
            }
        }
        public void AddWishListItemToUser()
        {
            var id             = new UserId(Guid.NewGuid());
            var email          = "*****@*****.**";
            var metroId        = 11;
            var wishlistItemId = new WishListItemId(Guid.NewGuid());
            var restoId        = new RestaurantId(Guid.NewGuid());

            new CommandScenarioFor <User>(User.Factory)
            .Given(UserEvents.Created(email, id, metroId, false))
            .When(user => user.AddWishListItem(id, wishlistItemId, restoId, "some notes"))
            .Then(UserEvents.WishListItemAdded(id, wishlistItemId, restoId, "some notes"))
            .Assert();
        }